View Single Post
Old 05-13-2019, 01:39 PM   #89
sai'ke
Human being with feelings
 
sai'ke's Avatar
 
Join Date: Aug 2009
Location: NL
Posts: 1,458
Default

Quote:
Originally Posted by ErBird View Post
Sai'ke,

AFAICT, since you updated Tight Compressor to add oversampling, the attack and decay are coupled when oversampling=1. I've looked through the code and can't see a reason why this should be.
It should be consistent independent of the level of oversampling.

I mean, they were always coupled at any oversampling ratio. I preferred the "continuous release mechanism" from the paper, which releases to the input signal (so is affected by the attack), since release is rarely, if ever, faster than attack anyway. I picked the smooth version since it makes sure that the compressor always uses the full release time. It sounded quite a bit smoother and more natural to me rather than instantly flipping the time constants. The downside is that they couple, yes. I figured that with the graphical display, it'd be easy enough to tune anyway. If you however do not want this, you can change the lines:

Code:
ya = max( xL, rt * ya + (1.0-rt) * xL );
yL = at * yL + (1.0-at) * ya;
To:
Code:
yL = rt * yL + (1-rt) * mx;
It should already be there in comments. But I really prefer the peak detector one since this one tends to not actually match the desired ratio that well.

Edit:
That video is a really old version where the delay could be set shorter than the attack (which for this compressor layout makes little sense). This is also partially why the mapping changed.

Did that decouple them as you wanted? What I don't like about that altered version is that in that decoupled version, the final ratio seems to depend on the decay, which seems undesirable to me.

Anyways, if you want, I could add the decoupled version to the repo as well.

This is the paper where the layout comes from: https://www.eecs.qmul.ac.uk/~josh/do...n-JAES2012.pdf

I tried almost all the combinations before settling on this one. I thought this one gave me the most control in the end. But you can play around and see if you find one that suits you better.
__________________
[Tracker Plugin: Thread|Github|Reapack] | [Routing Plugin: Thread|Reapack] | [More JSFX: Thread|Descriptions|Reapack]

Last edited by sai'ke; 05-13-2019 at 04:53 PM. Reason: Added the paper.
sai'ke is offline   Reply With Quote