VBAPSpeakerArray represents an array of speakers configured for use with VBAP. It provides functions for calculating optimised pairs and triplets based on speaker location.
VBAP was created by Ville Pulkki. For more information on VBAP see http://www.acoustics.hut.fi/research/cat/vbap/
This version of VBAP for SC was ported from the ver. 0.99 PD code by Scott Wilson, as part of the BEASTMulch project. Development was partially funded by the Arts and Humanities Research Council: http://www.ahrc.ac.uk
Create a new VBAPSpeakerArray.
dim |
Number of dimensions in the array, either 2 (ring or partial ring), or 3 (partial or full dome or sphere). |
directions |
An Array containing speaker locations in degrees. If dim is 2 this will be an array of azimuth angles, if dim is 3 this will be an array of arrays of [azimuth, elevation] angle pairs. Angles are given in degrees, with azimuth +/- 180 degrees from the median plane (i.e. straight ahead), and elevation +/- 90 degrees from the azimuth plane. The order of the speakers corresponds to the order of the outputs when using a VBAP UGen. |
2D and 3D examples
Set/get the maximum number of speakers in an array. Default is 55. (This limitation will be removed in a later version.)
Returns an Integer corresponding to the receiver's number of dimensions.
Returns an Integer indicating the number of speakers in this array.
Returns an Array containing instances of VBAPSpeaker.
Sort the speaker array into loudspeaker pairs or triplets and return this data in a form appropriate for loading into a buffer. Once loaded this data can be used by a VBAP UGen.
A shortcut for calling getSetsAndMatrices and loading into a Buffer. Returns a Buffer object.
See VBAP for further examples.