Hi guys, i’m trying to figure out how PanB works. Where is z in the decode ?
do you know how i can make a sound go from a speaker to another in circle using this ugen as i normaly do in PanAz?
thankyou for yourr help
this is from the help file. If i use only PanB controlling the azimuth from -pi to pi the soud doesn’t move from a speaker to another, it seem random . and do you know what it is the elevation ?if the speaker is fixed in circle do the elevation means simulating the sound going up ? i have tried to modify it but it doesn’t give me this impression, after all the speaker is fixed.
// You'll only hear the first two channels on a stereo setup.
play({
#w, x, y, z = PanB.ar(WhiteNoise.ar, LFSaw.kr(0.5,pi), FSinOsc.kr(0.31, 0.5pi), 0.3);
//decode for 4 channels
DecodeB2.ar(4, w, x, y, 0.5);
});
DecodeB2 will decode an ambisonic signal into a flat 2D circular array of of speaker. You can’t see a difference between up and down because you have no speakers higher than another. Than is why the z isn’t even passed into DecodeB2, its literally impossible to represent 3 dimensions with 2.
If you want to do ambisonics beyond 2D, I’d highly recommend the ATK library!
Do you know how PanB works? I can’t really figure out how it works from the example in the help file. Is the azimuth the orientation? I have modified it with four speakers but I don’t hear the sound moving gradually from one speaker to another; it seems to move randomly
I don’t use panB, but mostly foa atk. But from the help files, azimuth is the direction where you want to place the input signal. From what i gather this encodes to a B format, but the DecodeB2 isn’t fed the z channel because it’s flat and without elevation. Yes i think the description of this ugen is a little erroneous.
The help files are a little confusing. Fundamentally because it seems to mix different ugens from different libraries. But since a B-format encoding should be the same no matter which library, except when the order or normalisation isn’t, mixing and matching ugens should be fine.
Another thing though, it’s far easier to run ATK in reaper to experience what the encoding pipeline should be like. Then translate that workflow back to supercollider.
If you have 4 physical speakers, it is going to be a square. The decode part is the object that converts the B format into actual playable output. If you hook up just panB, it’s going to be the w,x,y,z first order ambisonic signals which really is audio that is normalised and mixed in a certain way.