Saturation Models (Neve, Tweaker, Oxford Inflator) in FAUST
-
@Mighty23 Very interesting, and thank you for sharing. Am I correct that this is multiband distortion, or is there also some dynamics processing as well?
-
@Morphoice Thank you for sharing. Not a whacking, but I work with two of these companies; could I ask you to pls characterise these as more "…in the spirit of…" and not "…copies of…"?
-
@Allen I assume nobody is here posting actual transfer functions they measured.
-
@clevername27 said in Saturation Models (Neve, Tweaker, Oxford Inflator) in FAUST:
or is there also some dynamics processing as well?
there is no compressor/limiter/gate in the processing. I would consider it 100% multiband waveshaping.
@Allen said in Saturation Models (Neve, Tweaker, Oxford Inflator) in FAUST:
For the band split, you may want to use the linkwitz riley instead of svf.
Yes, for sure. Many Thanks.
@Allen said in Saturation Models (Neve, Tweaker, Oxford Inflator) in FAUST:
may I know what CPU you're are running this code on?
10510u i7 on Windows
Late 2016 Mini Mac overclocked and open-core operating system. -
@clevername27 they're not measured, someone on reddit reverse enginered them so they are somewhat common knowledge among the DSP community, I'm not claiming any of those is a copy of something, it's just knowledge I gathered off the web. This is an old post though, I'm making my own functions for saturation now, and I'm using desmos to create them, closely matching stuff I can indeed measure from real hardware and then bring them over in faust. Unfortunately it's all done by hand, I have no Idea on how to "automatically" transfer measurements into transfer functions. It's a lot of guesswork until the curve looks somewhat similar
Those are the two waveshaper curves I find most pleasing, sonically, anything in between those is great and much faster calculated than the popular tanh for saturation
-
@Morphoice Thank you for sharing.
-
If you want to find the functions automatically it's not that hard I can show you. It can be done with python or MATLAB very easily.
You'll quicky discover that a static waveshaper cannot represent the measurements of analog distortion, but you can however create the 'best fit' automatically.
-
@griffinboy it's probably a good idea to morph between waveshaping curves according to signal strength but then again here we are considering hysteresis again ;)
-
yeah no, morphing a waveshaper based on signal strength doesn't really have much effect unless it has memory or smoothing. Else you've just done a static transformation of the curve and created another static curve. It has to have memory / hysteresis to actually represent anything nonlinear.
But collecting transfer function data from analog devices can still be super useful and can inform approximations.
-
@Morphoice Where can I learn how to apply this? Maybe you can tell me what this is and I can do y research. Thanks brotha.