Download
This is a multichannel (surround sound) audio effect which can simulating objects moving through the center of an array of speakers. We included source code, as well as a compiled Max/MSP object for Mac and Windows. This is also a good template for embedding exported Simulink code in Max/MSP if that’s something you’re into. Its inputs are a mono sound source, distance from center and bearing. The sound image sweeps smoothly from the outside of the speaker array, straight through to the other side.
It automatically compensates for amplitude gain, Doppler effect, LF air absorption, reflections and phasing (which can be controlled individually). These are all functions of the distance input, or a derivative thereof. This particular version of the software is using lookup tables to execute those functions. Subsequent versions will most likely compute dynamically in order to allow smooth transitions and avoid other artifacts.
The mirrored panning algorithm takes the processed mono source and copies it into eight channels. It then multiplies those channels with a mask, which isolates the source to those channels which correspond to whatever direction it is coming from. It produces another eight channels using the same mono source, but with 180 degrees added to the bearing. When the distance input gets within a certain range of center, the panner crossfades the original eight channels with the “mirror copy” coming from the opposite direction, allowing the source to transition seamlessly from one side, directly to the other.