[CM] Re: 4-channel playback in clm-3 (OS X)
Fri, 21 Oct 2005 17:00:18 -0700
On Wed, 2005-10-19 at 12:13 -0500, Jake Rundall wrote:
> Incidentally, I'm still interested in learning about the option of working with
The "dlocsig" ug can output B format Ambisonics and decoded Ambisonics.
B Format is going to be a 4 channel soundfile (this is for first order
Ambisonics) that contains an omnidirection component and x y and z
components of the wave front. It cannot be played directly. It can be
decoded to play back in n-channel setups, both 2d and 3d.
> So, if anyone can let me know where to go to start learning about
> this, please let me know.
> Specifically, What kind of file format does
> ambisonics use? and How does one write an ambisonics file? How does one play
> back an ambisonics file?
CLM3 changed internally (from CLM2) and dlocsig could not longer be
implemented as a unit generator using a single structure to contain all
the internals of the ug (as the built in ug's are). For my 220b class I
did a more compact version that only needs passing around three, it is
The matching example move-sound macro shows some usage:
A custom fm-violin that uses dlocsig:
This is the default mode for dlocsig:
(defparameter dlocsig-render-using amplitude-panning)
[just amplitude panning using vbap]
You can render to 4 channel Ambisonics format with:
(defparameter dlocsig-render-using b-format-ambisonics)
Then you have to decode the file separately to play it. For 2d only
Ambisonics you need a minimum of 4 speakers in a square arrangement.
Or you can generate and decode Ambisonics on the fly with:
(defparameter dlocsig-render-using decoded-ambisonics)
What it does depends on the speaker arrangement that is used (which in
turn depends on the number of output channels being used in with-sound
and the value of dlocsig-3d, "t" or "nil").
I know, complicated... :-)