Saturation Drive/Amount


I’m working on a Saturator effect as my first plugin. I have a question about the Drive control. It’s sometimes labeled Saturation or Amount.

I always imagined as it was called “Drive” that more gain/volume was being fed into Saturator. Ableton’s stock Saturator definitely works this way.

When I listened to some of my favourite Saturators though they don’t work this way at all. The volume is completely unchanged and the saturation it’s self seems to be what’s changing. Going from no saturation at all to a very heavy sound.

How is that done?
I can imagine a few ways. Maybe they are morphing from a flat 1:1 to a more extreme curve? Or maybe they are squashing the wave function on the y axis?

What about simply attenuating the signal again after the non-linearity? The amount to keep the loudness the same will depend on the non-linearity itself, but that should do the job :slight_smile:

Thanks for the reply…

I’m sorry but I’m a beginner here and I’m not sure if I fully understand what you mean by that.

1 Like

So the easiest layout of a overdrive/saturator would be something like this:
Gain -> WaveShaper (Non-Linearity)
The WaveShaper is the thing which distorts the signal -> creates harmonics/overtones. One implementation would be to just calculate the atan of the signal: y = atan(x) where x is the incoming sample. With the drive you control the overdrive.
The signal will get louder due to higher level and richer overtones.
What you can do to compensate for that is to simply decrease the level after that like:

Gain -> WaveShaper -> Gain

E.g. when the first Gain adds 10dB, you can attenuate by lets say 6dB after the WaveShaper
something like secondGainInDecibels = - 0.6 * firstGainInDecibels. The factor 0.6 will depend on how hard the non-linearity compresses your signal

1 Like