Compressor implementation details – DSP and Plug-in Development Forum

What’s the best approach to implement a compressor? I.e. when the envelope generator/detector circuit decides to start gain reduction, it can be at any sub-sample location. What’s the best approach to find that location and act accordingly? Is oversampling the best option combined with some linear interpolation/solving for the “accurate enough” location? Or would something more complex be a better approach?

What about if there’s some non-linearities in the signal before the volume level detector circuit? Like in Empirical Labs Distressor: right after the VCA the signal goes to distortion/saturator circuit and from there it goes to detector/envelope generator. Obviously with tons of oversampling it becomes a “trivial” problem to solve, but I doubt that’s anywhere near the best approach, especially when you need to apply antialiasing to the saturator/distortion after the VCA and to the VCA itself during the gain reduction…

Read more here: Source link