Halion said:
It is neither a preamp nor a compressor, although more of a compressor than a preamp.
How a saturation plugin works on the inside I don't know, and that's basicly what is the power and the secret of the plugin. No one will be able to tell you that unless they made the plugin themselves, and even then it would be more math than what us audio guys are able to handle (me at least).
Math in a plug-in can either be horrible or pretty simple, depending on the plug-in.
I suspect you could do a really simple soft-sat that would probably sound decent by doing what I would call a "pressure-type" limiter. Imagine a baloon. The more you fill it, the harder it pushes back. Do the same thing in your plug-in up above some limit, and it should tend to roll off the highs and add warmth.
Basically, for a floating point range of... say -1.0 < v < 1.0, it becomes an equation by parts something like
for -0.8 < v < 0.8, v_output = v_input
for -1.0 < v < -0.8 v_output = -log_k(abs(v_input))
for 0.8 < v < 1.0, v_output = log_k(v_input)
for some small base value of k. Then you might add a more traditional design of limiter at some higher level just to make sure (or truncate for a nice buzzy effect, either way).
That said, I've never written a plug-in to do this, so I'm not sure if anybody has ever written one in that way.
Whoa. A quick search on soft saturation on musicdsp shows someone doing something an awful lot like that.... So maybe I'm not nuts....