[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [sc-users] Compander curiosity



I finally returned to this question from a couple of months ago.

On 10/23/06, James Harkins <jamshark70@xxxxxxxxx> wrote:
OK, here's a weird one. I'm using slopeBelow = 10 to simulate a gate (and
slopeAbove = 0.4265 to achieve mild compression) in a CompanderD. When the
input is the mic's noise floor (about -60dB), the CompanderD's output is
unaffected.

  unit 12 Compander
    in  2.98023e-06 -0.000843287 0.102362 10 0.426502 0.02 0.1
    out 2.98023e-06

Explained by the source code:

            //zap gremlins, but returns 1. on failure
            next_gain =  (absx > (float32)1e-15 && absx < (float32)1e15) ?
next_gain : (float32)1.;

JMC's response:

On Oct 23, 2006, at 9:33 PM, James McCartney wrote:

If you change the constant 1e-15 to
something much smaller and recompile, does the problem go away? If so,
we probably need to reduce the constant.


I changed 1e-15 to 1e-100 and the problem did go away. The noise floor was not gated down to zero, but it was peaking at -480dB (1e-24 amplitude scaling) which is more than acceptable for general use :)


OK to change?

hjh


: H. James Harkins

: jamshark70@xxxxxxxxxxxxxxxxx

: http://www.dewdrop-world.net

.::!:.:.......:.::........:..!.::.::...:..:...:.:.:.:..:


"Come said the Muse,

Sing me a song no poet has yet chanted,

Sing me the universal."  -- Whitman