Hi, I am currently building a multiband compressor although I am struggling to implement a soft knee. Does anyone have any advice? Links to any useful writings on the subject would be much appreciated, struggling to find much...
Cheers
Soft Knee Compression
Hi, I am currently building a multiband compressor although I am struggling to implement a soft knee. Does anyone have any advice? Links to any useful writings on the subject would be much appreciated, struggling to find much...
Cheers
I made a compressor a little while ago using this as a guide. Look in section 2.2 for a soft knee implementation.
Thank you very much, this should be quite useful.
I've also found this very helpful if anyone is interested...
http://c4dm.eecs.qmul.ac.uk/audioengineering/compressors/documents/Giannoulis.pdf
I have found this useful, although I have edited his formula slightly:
O = I - (( 1/R-1 )( I - T + K/2 )^2) / 4K
Instead of:
O = I + (( 1/R-1 )( I - T + K/2 )^2) / 2K
where;
O = Output (dB)
I = Input (dB)
T = Threshold (dB)
R = Ratio
K = Knee Width (dB)
I think i am yielding the correct results. For instance when
Threshold = 20dB, Ratio = 2 and Knee Width = 2dB
f(Input) = Output
f(19.1) = 19.09dB
f(20) = 19.87dB
f(20.9) = 20.44dB
These results seem fairly accurate; between the knee width we see a change in gain reduction, from very little at 19.1 to around 1:2 gain reduction at 20.9
Although I have a few issues, with an input gain of 20.9, gain reduction should <0.45, because the ratio is set at 1:2 and for a hard knee gain reduction would equal 0.45 but should be <0.45 for a soft knee. My gain reduction is 0.451?
If anybody could help me to get this soft knee working more accurately, it would be highly appreciated. I've attached a small patch with the soft knee calculation if you'd like to take a look...
Thank you
http://www.pdpatchrepo.info/hurleur/SoftKneeGainCalculation.pd
Maelstorm, I have tried downloading your compressor.mmd.pd patch although it will not open? should it work with pd 0.42.5-extended?
It should. That compressor sucks, though, and I wouldn't use it to analyze how to implement one. I've been meaning to replace it with the one I made based on the paper above, but there are few kinks that need to be worked out for efficiency reasons.
At any rate, here is the gain computer portion of the patch, which as far as I can tell is working properly.
Oops! Looks like something went wrong!