Sound Synthesis & SFX

FFT based Additive Synth

max patch


General description


This is a 3 voice FFT based additive synthesizer with 20 oscillators/voice.

In the first part of the signal chain, external audio input or some recorded sample is analyzed in real-time by FFT analysis. First 20 sinusoidal components or partials of analyzed sound then modulate the frequency and amplitude of 20 sine wave oscillators per voice. The result is resynthesized sound that sounds like some ancient phase vocoder. But the power of the synth in question lies elsewhere – in its ability to take the so called “spectral snapshots” and modulate only amplitudes or frequencies of all oscillators. For instance we can set the frequencies of all oscillators to some fixed value by taking the “frequency spectral snapshot” of some moment in time when analyzing the incoming audio signal and therefore use the analyzed audio signal only as an amplitude modulation source of some “frequency spectral snapshot”.

In addition to that, frequency and amplitude modulation also has its own smooth or ramp time, each oscillator has its own modulation scaling factor and ADSR that can be easily set via multi-slider interface. Spectral data can be also inverted, so that first oscillator receives freq. modulation of 20. sinusoidal component, second oscillator receives freq. modulation of 19. sinusoidal component and so on. This is achievable via “spectrum inversion” button.

The analysis data can be passed to oscillators at various speed rates by setting the “Freq. or Amp. Analysis Time Interval” parameter. These two parameters are like snapshot frequencies. Hence if snapshots are taken in some rhythmic manner, the result is a spectral rhythm inside each sound.


Cross Synthesis


Freq. analysis can be turned off by “Freq. Analysis On/Off” toggle button and that will create a “frequency spectral snapshot”. The frequencies of oscillators will stay at the same values as they were at the moment when turning off the freq. analysis. If the spectrum of the chosen analyzed sample is particularly interesting around some sample position, the loop can be set around that position. After turning the freq. analysis off, only amplitude modulation will be applied to the oscillators. If new sample is loaded while leaving freq. analysis off, some kind of cross synthesis can be achieved.


Loop Slide


If loop slide is turned on, the chosen loop will start to slide when the MIDI note will be pressed. We can set the start and end position of , the loop length, the slide time and also the delay time. Delay time sets the time gap between the pressed MIDI note and the beginning of the slide. All Loop Slide parameters have to be set with number boxes!




The signal is divided into 8 frequency bands before it is passed to the sound rotators. Each rotator rotates separate freq. band. The freq. and phase of one of the rotators can be set manually. The phase of that rotator can be as well reseted by MIDI note.


Additive & Waveshaping


The result of the additive synthesis can be combined by the waveshaped version of the same signal. If Additive & Waveshaping option is turned on, a 512 samples long transfer function can be loaded. The default one is a sample of an electric guitar.




Comber is a comb filter/delay…

  1. david familan
    david familan07-21-2016

    keyboard is missing using max msp 6 or 7

Leave a Reply