Spiralab 2 is fully multiphonic, multitimbral FM 3-D AV Synthesizer with 16 step sequencers. It convolves the audio waveforms to draw them in OpenGL, in real time, from the music that a performer is making. Spiralab 2 has a multimbral 3-oscillator FM synthesizer, real-time performance controls, 16 sequencer channels, and 16 AV channels. As the instrument is fully multitimbral, each channel can play and display on any number of voices at any one time, up to the capacity of the system.
Sync’ed Multichannel Architecture
The onscreen keyboard, MIDI, and sequencers can all play any of the sounds on the 16 channels on any of the available voices. The performer can modify sound and video parameters of any channel in real time to directly change the playing sound and video on all current and future voices. The performance data is internally stored in 32 sync’ed buffers, in order that that more than one channel can play the same program. Changes to one channel may selectively affect all other channels playing the same program. Currently the buffers track and synchronize about 130 performance parameters. All 32 channel buffers are saved and restored on application close and restart.
The system is designed to support massively parallel AV constructs, based upon a custom voice allocator, simpler versions of which have been shared in the Cycling 74 toolbox. The allocator optimizes channel resources for the available voices. At 33 fps HD output and 88.2 kHz, the average CPU load on a 3GHz Intel i7 (with nVidia GTX460 graphics and standard motherboard audio drivers) is now only 15% while playing playing 16th notes at 120bpm on all 16 sequencer channels with 12 voices. Additional CPU capacity will be required for future enhancements and AV recording.
Planned enhancements in Spiralab (still in prototype stage) include additional rendering modes, materials, animated trajectories controlled by the LFO and sequencer, dual-band filters, multiple matrix modulations, and green-screen support for video integration of the effect at movie quality.
Spiralab2 is being made available for free, on request, to qualified commercial studios in California. Please contact the author for more information.
How did this project use Max?
Fully implemented in Max 6 with Gen~ and Jitter.