[maxmsp] 8 speaker surround
Graham Wakefield
lists at grahamwakefield.net
Mon May 26 08:04:03 MDT 2008
- Previous message: [maxmsp] Re: 8 speaker surround
- Next message: [maxmsp] Re: 8 speaker surround
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
In case a reader doesn't know how ambisonics would solve this question, it's relatively simple - and probably more scalable than some of the other solutions posted. I'll try and give a plain English explanation. First, the short version: source(s), azimuth(s), elevation(s) | v encoder(s) | v (summed) | v decoder | v speaker outputs And a brief explanation of what this means: Each source to be spatialized is passed to an encoder, along with a direction from the listener described as azimuth (angle from the listener on the horizontal plane, typically clockwise) and elevation (angle from the listener going up/down, usually up from front-facing is positive). These are polar coordinates, which are sometimes called phi and theta. Note that the elevation transform is applied after the azimuth (you could imagine turning from a front-horizontal facing clockwise until you are aligned to the source, then rotating upwards until you face the source). The ambisonic encoder then creates an intermediate representation of this sound source in the ambisonic domain. It's just a transform, in the same way that a spectral domain can be achieved by (some kind of) Fourier transform, however in this case it is based upon the math of spherical harmonics and captures polar orientations rather than frequencies. There are different orders of ambisonics, and they can be done in 2D or 3D. Increasing the order is better if you want to expand your acceptable listening area, but requires more signals in the ambisonic domain. For an 8 channel surround in 2D, you would typically use 1st order (requires 3 channels) or 2nd order (requires 5 channels in the ambisonic domain). One of the nice things about the domain is that it is additive, you can encode lots of independent sources and add the domain signals together (assuming the domain orders and dimensions match). The other nice thing is that the domain is portable; it can be easily 'decoded' onto different arrays of speakers, and the only additional information needed is the speaker arrangement (and that, again, the order/dimensions must match). The domain signals are passed to a decoder to do another spherical harmonic transform at each speaker location, and deduce the needed pressure waves from each speaker to try and reconstruct the spatial sound field in your listening area. That's why the decoder also needs to know the azimuth and elevation of each speaker relative to the listener. You can build a simple 1st order encoder in max just using basic objects, since the math at 1st order is pretty simple - see Dave Malham's primer: http://www.york.ac.uk/inst/mustech/3d_audio/ambis2.htm Or, you can use externals for higher orders. There are two higher- order ambisonic libraries listed on www.maxobjects.com, ICST's and my own; both are fully capable of these tasks. Also, note that ambisonics can do a lot more than what I've mentioned here - I've deliberately simplified the description. I hope someday soon a book will be published on the subject - it is quite overdue. On May 25, 2008, at 4:11 AM, Tommaso Perego wrote: > ambisonics? > multiout? > > > > On 25 May 2008, at 11:42, Andreas Wetterberg wrote: > >> James skrev: >>> alright all, i've made a 5 sound drum machine and basically what >>> im trying to do is have each sound slowly rotating around the >>> room in different directions and different speeds, so far i >>> havent had much luck, bucket seems like a close object but i cant >>> get it so each slider spaces out more. any ideas? >>> >> There is a wide variety of abstractions that will do this quite >> flawlessly. I seem to remember 110.distribution or similar. >> >> check maxobjects.com >> _______________________________________________ >> maxmsp mailing list >> maxmsp at cycling74.com >> http://www.cycling74.com/mailman/listinfo/maxmsp > > _______________________________________________ > maxmsp mailing list > maxmsp at cycling74.com > http://www.cycling74.com/mailman/listinfo/maxmsp Be seeing you grrr waaa www.grahamwakefield.net -------------- next part -------------- An HTML attachment was scrubbed... URL: http://www.cycling74.com/pipermail/maxmsp/attachments/20080526/0e6719ef/attachment.htm
- Previous message: [maxmsp] Re: 8 speaker surround
- Next message: [maxmsp] Re: 8 speaker surround
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
