HISE Logo Forum
    • Categories
    • Register
    • Login

    Oversampling Softclipper

    Scheduled Pinned Locked Moved ScriptNode
    5 Posts 4 Posters 437 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.
    • X
      xander
      last edited by

      I've been trying to create a softclipper for my plugin, however, my biggest issue is aliasing, I am using faust, and none of the faust libraries have good enough anti-aliasing. Putting a faust node through an oversampling node also seems to have no effect (except 8x shifts the frequencies up for some reason). I know you can put a math.clip node in an oversampled node, but I want softclipping not hardclipping. Does anyone have a solution?

      LindonL Christoph HartC 2 Replies Last reply Reply Quote 0
      • LindonL
        Lindon @xander
        last edited by

        @xander what faust code are you using?

        HISE Development for hire.
        www.channelrobot.com

        X 1 Reply Last reply Reply Quote 0
        • X
          xander @Lindon
          last edited by

          @Lindon I'm using the aa(anti-aliased) library. The effect is a parallel distortion, but it doesn't have any aliasing issues; it's only when pushing audio into the softclipper within it that it starts having aliasing issues.

          O 1 Reply Last reply Reply Quote 0
          • O
            Orvillain @xander
            last edited by

            @xander You need to band limit the soft clipping circuit somehow. Not sure if this needs adding to your faust code, or if you can put a filter after it in the network, but essentially.... non-linear clipping/saturation/distortion can create harmonics that far exceed your sampling rate and nyquist; and they end up folding back into lower frequencies. You'll need to handle it by filtering.

            Look into FIR filtering within faust, maybe it is something you can add inside the algorithm.

            1 Reply Last reply Reply Quote 1
            • Christoph HartC
              Christoph Hart @xander
              last edited by

              @xander my guess is your faust code works with a fix expected samplerate so that when you‘re oversampling it shifts the normalised frequency ratio.

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

              19

              Online

              1.8k

              Users

              11.9k

              Topics

              103.9k

              Posts