CROSS BOX

A Real-Time Audio Cross Synthesizer

ChucK Code
MaxMSP UI Patch

Vocoder Audio Demo

"Anti-Vocoder" Audio Demo

  This is Cross Box, a real-time two channel cross synthesizer written for ChucK. This project is builds off of Gio Jacuzzi's ChucK revious 220A project "Vox Box". Rather than performing the "overwrite" mapping of the spectral envelope of a microphone onto the pitch a software synthesizer, two separate external input channels undergo one of three algorithms of cross-synthesis. This is meant to allow the user to experiment with any audio input souces, not just vocals and synthesizers. The first algorithm is the classic vocoder overwrite mapping, which imparts the spectral phase of the 1st input onto the magnitude of the 2nd input. The second algorithm is the reverse of the first. In the classic paradigm where input 1 is a mic and input 2 is a synthesizer, this means imparting the spectral phase of the synth onto magnitude of the voice. The third algorithm performs a convolution of the two input signals using multiplication in the frequency domain.
  The output of these cross synthesis algroithms are then passed through a filter and a chorus, delay, and reverb in chuck. Users can control parameters in each of these effects are controllable via MIDI in real time as well as change the current algorithm. I was very pleased with the smoothness of changing switching algorithm with MIDI. The user interface patch made in MaxMSP can be used to see the current value of all of the parameters and a spectrogram of both input channels. This patch, however, does not change the parameters themselves. See below for the MIDI CC implementation. Note: Due to bug in the convolution algorithm, it has been removed for v1.0.


MIDI CC 6: LP Filter Cutoff Frequency

MIDI CC 13: LP Filter Resonance

MIDI CC 23: Chorus Modulation Frequency

MIDI CC 24: Chorus Modulation Depth

MIDI CC 25: Chorus Mix Level

MIDI CC 27: Delay Mix Level

MIDI CC 28: Reverb Mix Level