U.York : MTG: Ambisonics in CSound The University of York

Music Technology Group

CSound Implementation of Ambisonics

Thanks to the efforts of Tony Myatt, who did the original work on this, (published in Computer Music Journal) Winter issue, 1995) and an ex-student from the Music Technology MA/MSc course, Richard Furse (Richard@muse.demon.co.uk), we succeeded in using CSound for Ambisonic sound generation, manipulation and even decoding, using standard score and orchestras. Check out Richard's latest work on his home page at http://muse.demon.co.uk/

Now, however, CSound (version 4.14 onwards) has an Ambisonic unit generator in it. This was written by Istvan Varga. It takes commands in this form;

aW, aX, aY, aZ	spat3di	ain, iX, iY, iZ, idist, ift, imode[, istor]
aW, aX, aY, aZ	spat3d	ain, kX, kY, kZ, idist, ift, imode, imdel, iovr[, istor]

spat3dt	ioutft, iX, iY, iZ, idist, ift, imode, irlen[, iftnocl]


These opcodes position the input sound in a 3D space, with optional simulation of room acoustics, in various output formats.

All you need to run any of these CSound methods is a computer system which supports four or more audio output channels and a copy of CSound which runs on that platform.

Suitable computer systems;

Silicon Graphics
O2, Indy or Indigo 2
Fast machine with at least four channels of audio, using something like the DigiDesign cards.
if it is fitted with a true multi-channel soundcard - multiple stereo soundcards are unlikely to stay in sync to sample accuracy, check out Richard Dobson's multi-channel soundcard attrition page at http://www.bath.ac.uk/~masrwd/

Ambisonics home page
Music Technology Group Welcome page

Last updated; 15th 2001 by Dave Malham. If you have any suggestions, comments or requests you can reach me at dgm2@unix.york.ac.uk .