This instrument was created as part of our latest interactive dance spectacle “Absorbe-moi

The starting idea was to create an instrument dealing with sound synthesis and reacting directly with the movement of the 2 dancers.

Their movement is tracked live and analyzed by another computer, collecting the main characteristics of it (X position, Y position, Height, Width, X gravity, Y gravity, speed and luminosity).

This continuous flux of data is smoothed, then transmitted as normalized data into the synth trough 8 channels, used to modulate the main parameter of the sound, like the oscillators frequency, the filters cutoff frequency, their resonance, etc…, or used to control events like the retriggering of envelopes, zeroing the oscillator phase, modifying their wave shape, controlling the rate of the sequencers, or the spatial position of the sound sources in the set (a quadriphonic system is used here). All in all, more than 500 parameters are freely assignable.

Of course, this is only doable with some latency, and a big part of the development was devoted to optimize the CPU usage with a dynamic allocation of the voices, and the automatic deactivating of the unused portions of the signal chain, amongst others.

Regarding the sound, the synthesizer uses several techniques like frequency modulation, subtractive synthesis, and nonlinear distortion (waveshaping)

It finally evolved into a fully featured polyphonic synthesizer, close in the spirit to a modular synthesizer, as detailed below


Philippe Jelli / mutin


The different modules are :


  • 1 oscillator parameter config panel;
    • 37 different wave type : the classic ones; sine, tri, saw, square, noise, pulse, 30 customized waveforms, and a freely editable user one;
    • adjustable osc parameters like harmonicity ratio, frequency offset (Hz), modulation index, pulse width modulation, feedback, etc..;
    • hard sync oscillator switch;
    • partials editor in user mode to customize the wave up to the 64th harmonic;
    • waveshape mode with adjustable WT index and target wave (one of those mentioned above);
  • 2 oscillator envelope panels;
    • two envelopes per oscillator, amplitude and modulation, fully configurable
    • graphical envelope editor (up to 64 points), with amplitude, offset and smoothing adjustments
    • selectable time switch for free running (20 to 180000 ms) or tempo-synced mode (128n to 60 bars);
    • snap to grid button, single pass or looping operation and quantizing options;
    • waveform realtime display;
    • graphical display meter;
    • randomize and clear buttons;
    • general on / off oscillator switch to save some CPU cycles;



  • FM adjustment between each oscillator and self modulation;
  • FM modulation slot (16 available modulation sources) and amount knob;
  • out level adjustment for each oscillator;
  • graphical display meter;


2 LFO MODULES, each with :

  • 8 different wave type : sine, tri, saw+, saw-, square, noise, pulse, S&H;
  • selectable time switch for free running (0,05 to 50 Hz) or tempo-synced mode (128n to 60 bars);
  • buttons for automatic retriggering option (via midi notes) and quantizing;
  • two additional combined modulation sources: LFO 1 X LFO 2 and LFO 1 + LFO 2;
  • randomize and clear buttons;



  • graphical envelope editor (up to 64 points), with amplitude, offset and smoothing adjustments;
  • selectable time switch for free running (20 to 180000 ms) or tempo-synced mode (128n to 60 bars);
  • snap to grid button, single pass or looping operation, automatic retriggering option (via midi notes);
  • randomize and clear buttons;
  • general on / off envelope switch;



  • length (2 to 16 steps) and interval (128n to 1nd) adjustments;
  • snap to grid button, with step width adjustment;
  • autorandom feature (retriggering at the end of each cycle) with adjustable random factor;
  • 4 looping modes : forward, backward, bounce and random
  • button for automatic retriggering option (via midi notes);
  • quantize button;
  • smoothing adjustments with adjustable up and down slide ramp time;
  • randomize and clear buttons;
  • general on / off sequencer switch;



  • two filters each with 4 modes (highpass, lowpass, bandpass and bandstop) and selectable routing mode (bypass, serial or parallel)
  • frequency and resonance adjustments (graphically or numerically);
  • switch allowing each filter to work in each mode either as a single or two cascaded filters;
  • envelope amount slider for each filter;
  • filter envelope panel;
    • graphical envelope editor (up to 64 points), with amplitude, offset and smoothing adjustments;
    • selectable time switch for free running (20 to 180000 ms) or tempo-synced mode (128n to 60 bars);
    • snap to grid button, single pass or looping operation, automatic retriggering option (via midi notes);
    • randomize and clear buttons;
  • general on / off switch;


1 MODULATION MATRIX : 16 individual slots each with ;

  • modulation source selector (16 sources) LFO 1 & 2, LFO 1 X LFO 2, LFO 1 + LFO 2, MOD ENV 1 & 2, STEP SEQ 1 to 4, AUDIO IN 1 & 2 and raw oscillators A to D outputs;
  • modulation target selector (40 destinations) ;
    • for the OSCILLATORS A to D; amplitude, harmonicity ratio, frequency offset, FM input, modulation index, pulse width (for the compatible oscillators), feedback, waveshape index (in waveshaping mode)
    • for the FILTERS 1 & 2 : cutoff frequency,  resonance, filter envelope amount
    • for the LFO 1 & 2 and the SEQUENCERS 1 to 4: rate
  • modulation amount knob;
  • source signal inverter;
  • randomize and clear buttons;


1 VOLTAGE CONTROL MATRIX, this matrix allows the automatic retriggering of envelopes or control signals by other signals, when their value goes beyond a defined threshold. This module has the following controls;

  • 20 x 17 matrix (20 sources and 17 destinations) allowing the trigs generated by the control signals to be routed to their destination. The sources are the two LFO, the combined LFO’s, the 4 sequencers (nominal value and trig), audio inputs 1 and 2, and the global clock with 4 different subdivisions (1n / 4n / 8n / 16n). The destinations are the 8 oscillator envelopes (amplitude and modulation), the 2 LFO’s, the 4 sequencers, the 2 modulation envelopes and the filter envelope.
  • a button allowing the automatic randomization of the matrix, following a configurable clock (1nd to 128n) synchronized to the general tempo;
  • two buttons forcing the matrix in random mode to generate only one non-zero value per row, per column or both;
  • randomize and clear buttons;
  • general on / off switch;



  • the excellent ambisonic panner (copyright © 2008-2010 by Jan Schacher) & ambimonitor (Copyright © 2006 – 2009 by Philippe Kocher), both from ICST Institute for Music and Sound Technology / Zurich University of the Arts – It is here used as a 4 channels panner (4.1 actually);
  • 4 oscillator spatial position modulation slots (this allow for example to link the spatial position of one sound to the position of the dancer), each with;
    • a switch allowing to choose between cartesian mode (X-Y) or circular coordinates mode (A-D),
    • a modulation source selector (one of the 16 sources mentioned above);
    • a modulation amount knob;
    • a source signal inverter;
    • clear button;
    • a graphical display (ambimonitor) with realtime modulated position of all the sources;



  • a reverb section and the relevant adjustments;
  • a delay section and the relevant adjustments;

(This section is still under development, some parameters may also become modulation destinations)



  • the global envelope ADSR adjustments (graphical or numerical). This apply to the voices comprising all 4 oscillators (if all activated);
  • the polyphony adjustment. The current version has 8 voices of polyphony, up to 4 voices can be triggered simultaneously per note in unison mode;
  • unison detuning and delaying factor (free running or synced);
  • activity led for each voice;
  • general tempo adjustment and metronome button;
  • 75 notes polyphonic graphical keyboard;
  • main out level fader;
  • combined outs spectroscope and sonogram;



  • midi in selector and activity led;
  • midi learn function (for all the assignable parameters);
  • audio in and out selector;
  • preset panel (up to 432 presets per bank);


Being still a work in progress, more features are likely to be added eventually :

  • more modulation destinations;
  • a complex waveform & control signal generator;
  • a preset morpher;
  • signal-controlled envelopes & sequencers;
  • note triggering & scaling from video analysis;
  • etc…




Max / Msp was used all the way from start to finish in this project

More Links

Mar 18 2011 | 7:37 pm

Hi, any chance that you will share you project

Apr 07 2011 | 8:53 am

Yes I am interested in using it!

May 22 2011 | 10:53 pm

wating 4 some concrete tracks, i interesing of remix :P

Jul 24 2012 | 7:35 am

Very interesting!

Viewing 4 posts - 1 through 4 (of 4 total)

Explore More

Subscribe to the Cycling ’74 Weekly Newsletter

Let us tell you about notable Max projects, obscure facts, and creative media artists of all kinds.

* indicates required