HISE Logo Forum
    • Categories
    • Register
    • Login

    Saturation Models (Neve, Tweaker, Oxford Inflator) in FAUST

    Scheduled Pinned Locked Moved ScriptNode
    22 Posts 8 Posters 1.1k Views
    Loading More Posts
    • Oldest to Newest
    • Newest to Oldest
    • Most Votes
    Reply
    • Reply as topic
    Log in to reply
    This topic has been deleted. Only users with topic management privileges can see it.
    • clevername27C
      clevername27 @Allen
      last edited by

      @Allen I assume nobody is here posting actual transfer functions they measured.

      MorphoiceM 1 Reply Last reply Reply Quote 0
      • M
        Mighty23 @clevername27
        last edited by

        @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.

        Free Party, Free Tekno & Free Software too

        1 Reply Last reply Reply Quote 1
        • MorphoiceM
          Morphoice @clevername27
          last edited by Morphoice

          @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

          Screenshot 2025-01-30 at 14.08.55.png

          https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

          clevername27C griffinboyG 2 Replies Last reply Reply Quote 3
          • clevername27C
            clevername27 @Morphoice
            last edited by

            @Morphoice Thank you for sharing. 🍸

            1 Reply Last reply Reply Quote 0
            • griffinboyG
              griffinboy @Morphoice
              last edited by

              @Morphoice

              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.

              MorphoiceM 1 Reply Last reply Reply Quote 0
              • MorphoiceM
                Morphoice @griffinboy
                last edited by

                @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 ;)

                https://instagram.com/morphoice - 80s inspired Synthwave Music, Arcade & Gameboy homebrew!

                griffinboyG 1 Reply Last reply Reply Quote 0
                • griffinboyG
                  griffinboy @Morphoice
                  last edited by

                  @Morphoice

                  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.

                  clevername27C 2 Replies Last reply Reply Quote 0
                  • ChazroxC
                    Chazrox @Morphoice
                    last edited by

                    @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.

                    1 Reply Last reply Reply Quote 0
                    • clevername27C
                      clevername27 @griffinboy
                      last edited by

                      This post is deleted!
                      1 Reply Last reply Reply Quote 0
                      • clevername27C
                        clevername27 @griffinboy
                        last edited by

                        @griffinboy Doing each partial statically will model non-linearity.

                        1 Reply Last reply Reply Quote 1
                        • First post
                          Last post

                        20

                        Online

                        1.7k

                        Users

                        11.8k

                        Topics

                        102.5k

                        Posts