- Type
- Audio Effect
- Author
- jdmoore
- Version
- 1.0
- License
- AttributionNonCommercialNoDerivatives
- Live version
- 8.2.2
- Max version
- 5.1.8
- Downloads
- 1,784
- Updated
- 2012-10-27
Description
This device is based on Max Api SendsPan. It implements basic first order Ambisonic panning for regular loudspeaker configurations (i.e. square, pentagon, hexagon etc.). The directivity factor of the loudspeaker virtual microphones can be changed using the directivity dial but is limited to values between 0 - 1 in this version of the device. Ideally users would be able to specify values up to 2 but this is not possible because negative gains are generated for the sends which Ableton does not like. A value of 1 for directivity will give reasonable results in terms of sound source localisation but higher directivity values would be preferred. If you are interested in Ambisonics then I recommend reading some of the research papers by Michael Gerzon or others on the Audio Engineering website.
To use this you will need to setup a sufficient number of return channels in Live.
Comments (4)
The patch provides an alternative means of multichannel panning. The regular api patch implements pair-wise panning where 2 speakers are used to produce a phantom sound source. My patch implements first order Ambisonic panning which makes use of all speakers simultaneously to create a phantom sound source. Ambisonics aims to provide consistent cues to a listener in the sweet spot and can result in a more natural reproduction when compared to other algorithms.
Ambisonics is not a new technology but there's quite a lot of interest in it at the moment because of it's potential in a number of areas (games, broadcasting etc.).
I have changed a tiny bit your patch so that it allows Directivity values in the range between 0 and 2 .
As you explain, it does now generates negative gain values but it seems to give anyway better source localization results....do you have any idea why though?
thanks
is it possible to have a directivity so high it only send the sound to the channel on the pointer ? because for the moment it sends sound to all except the one that is 180° from the pointer.