View Single Post
Old 07-14-2016, 03:14 PM   #3
Airal
Banned
 
Join Date: Nov 2015
Posts: 406
Default

A compressor, in the limit, is a limiter.

If a compressor as 0 attack time, 0 db Knee, and infinite ratio then it is a hard limiter and should ask as so, else something is wrong.

It's ok to special case this:

If (AT == 0 && Knee == 0 && Ratio == Real.Infinity) Sample = Min(Threshold, Sample)
else
....

Type of thing. I imagine ReaComp doesn't actually an infinite ratio though? That might be the problem?

Assume that the compression curve looks something like

*
______/
/
/
/

Where the /* part is actually a sort of line with nearly infinite slope and infinitesimally small width(something that might not show up when viewing the curve). This could produce the effect he is talking about and is not desirable and probably due to some type of glitch(division by 0 at 0db when attack is 0 and ratio is "infinite)).

If os, it is truly a bug. It could potentially happen in the real world producing invalid results. E.g., creating large amplifications for certain samples groups that are at 0dB or near 0dB(e.g., 0.0001dB), creating distortion.

It may just occur at a certain point or epsilon region in parameter space for reaComp, but it still should be investigated.A basic compressor should have pretty basic characteristics. Doing funky complex compression's might be expected to behave weird but a common compressor isn't.
Airal is offline   Reply With Quote