Building a multiband compressor - all help appreciated

edited April 2020 in Presets and projects

I’ve decided the best way for me to learn Drambo is by biting off more than I can chew.

To this end I am trying to build my own multiband compressor.

I took @rs2000 ’s simple noise gate (env follower - graphic shaper - amp mod) as a starting point, and think I have managed to make a very simple 1-band compressor so far.

I’m just starting out, so please don’t laugh :)

Here’s the current patch...


and the band 1 comp expanded...


I’’d love for some advice about things I’m doing wrong / could do better.

Thanks in advance..

Comments

  • Looking forward for this, and as a side note, I’m also very interested in learning best practices in separating a sound into bands. I know about filters, but for really tight separation, maybe what? Filters in series and really fine cutoff tuning?

  • edited April 2020

    I’m also available to chat about this project over on Discord, user tk32#8493

  • The user and all related content has been deleted.
  • Latest version of my 1-band compressor


  • +1 for biting off more than you can chew!

    If you want to build a multi-band compressor, it depends what you want to achieve in this first step.

    Let's start with a simple structure and only 1 band.

    The idea of a basic compressor is to reduce the output level of the processed input signal proportional to its input level. The louder your signal is, the more you want the compressor to "turn down the volume knob".

    It would be desirable to be able to adjust the compression curve directly in the graphic shaper so let's try and build the necessary logic around that.

    The Graphic Shaper only holds the volume curve so you have to feed it with a good representation of the input signal and it will give you the volume to set at the output.

    A "good representation of the input" signal is the key here: The better you can detect and shape the volume envelope of the signal, the more appropriate you'll be able to compress the signal.

    A few ideas to play with:

    • Try Math => Full Wave Rectify +adjustable Amp to drive the Gate input of an Env AD (not Amp Env AD)
    • Try the Envelope Follower + HP6 filter set to 8Hz + adjustable Amp and compare its transient response
    • Add a Graphic Shaper and an Oscilloscope after the Env AD to monitor the volume envelope
    • Add an Amp like in your own example, negative-modulated by the Env AD output
    • Start with these ENV AD settings: A=0, D=300ms, Sustain=on
    • The compressor core will reduce levels only so if you need a volume boost, amplify the output.

    It is essential to shape the control signal derived from the volume envelope of the input signal in a way that your compression sounds good.

    The compression ratio can be adjusted by the Graphic Shaper curve, exactly like compressor response curves are usually shown.

  • The user and all related content has been deleted.
  • Your crossover looks good, I'd only use the LP12 and HP12 filters too.

  • Thanks so much for your expert input @rs2000

    Here’s how I got it sounding just before you posted your reply above. Hopefully armed with your advice, the next version will be vastly improved.

    https://youtu.be/ixCmUaI8PM0

  • edited April 2020

    That looks and sounds very good already! 👍🏼😎

    Good luck with the multi-band version. No doubt you'll make it.

  • edited April 2020

    i like what you're doing here, definitely will watch this thread closely :)

    tip: use "layers" module and encapsulate every band in it's own layer .. that way you will be able easily copy band chains after changes between layers during development and it will be also easy to decide if you want 2band, 3band or even 4 or 5 band compression madness..

    btw. unipolar knob/slider, multi knob / slider module with ability to label knob and also unipolar XY pad with 0,0 in left bottom corner, would be VERY handy for building such more complex modules from basic elements ... hope @giku will one day found some spare time for adding them ..

  • Also, isn't phasing going to be an issue. Drambo doesn't have an allphase filter, so dunno how you'd deal with that.

  • Thanks for the link @Cian - maybe I'm stupid, but I'm not sure how shaping/overdriving guitar sounds helps with building a multiband compressor.

    I'm not changing the waveform, just modulating gain according to the input signal.

  • Waveshaping is modulating gain according to the input signal, which changes the waveform as a side-effect.

    You can build a compressor (if not always the most useful) just using wave shaping. The simplest limiter (which is suprisingly useful) is just to use a logarithm as your wave shaping function.

    In practice compressors typically also have some kind of envelope follower so that you can let some transients through.

    Also it's a neat video - I think you'd like it.

  • edited April 2020

    I developed my intital rudimentary 1-band compressor and made it into a 3-band version with the layer mixer.

    The processing is still quite basic (filter - env follower - amp mod) but the results are starting to sound nice.

    Here is a short demo of me using it as an insert effect over a drum loop in BM3 (I use the dry/wet dial on the right to bring the effect in after a few seconds):


    the next step will be integrating @rs2000 ’s tips for making the envelope more refined.

  • @tk32 Good job man! Great to see your progress.

  • I've posted the first version of my 3-band compressor on Patchstorage:


Sign In or Register to comment.