DecodeB2 2D Ambisonic B-format decoder
DecodeB2.kr(numChans, w, x, y, orientation)
Decode a two dimensional ambisonic B-format signal to a set of speakers in a regular polygon.
The outputs will be in clockwise order. The position of the first speaker is either center or left of center.
numChans - number of output speakers. Typically 4 to 8.
w, x, y - the B-format signals.
orientation - Should be zero if the front is a vertex of the polygon. The first speaker will be directly in front. Should be 0.5 if the front bisects a side of the polygon. Then the first speaker will be the one left of center. Default is 0.5.
(
{
var w, x, y, p, a, b, c, d;
p = PinkNoise.ar; // source
// B-format encode
#w, x, y = PanB2.ar(p, MouseX.kr(-1,1), 0.1);
// B-format decode to quad
#a, b, c, d = DecodeB2.ar(4, w, x, y);
[a, b, d, c] // reorder to my speaker arrangement: Lf Rf Lr Rr
}.play;
)