diff options
author | Ben Loftis <ben@harrisonconsoles.com> | 2015-03-25 16:47:25 -0500 |
---|---|---|
committer | Robin Gareus <robin@gareus.org> | 2015-04-22 00:22:43 +0200 |
commit | 46f97e8d92241c94d12d81ea182a9172df98e61e (patch) | |
tree | f757e7014aa6260b7d927b35bcf1fd221e2d40e4 /libs/ardour/ardour/dB.h | |
parent | 187ddb3bad70088f901ed1ea5e1402519fd393b4 (diff) |
Initial Gain Coefficient tweaks
1) Disambiguate 1.0 to GAIN_COEFF_UNITY, and 0.0 to GAIN_COEFF_ZERO
2) Add GAIN_COEFF_SMALL which replaces SMALL_SIGNAL (-140dB)
3) GAIN_COEFF_SMALL can used to avoid interpolating towards -inf on a db scale
4) GAIN_COEFF_SMALL is used to detect very small (denormal?) gains and memset to zero
Diffstat (limited to 'libs/ardour/ardour/dB.h')
-rw-r--r-- | libs/ardour/ardour/dB.h | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/libs/ardour/ardour/dB.h b/libs/ardour/ardour/dB.h index abacdfcd29..0fd75a869f 100644 --- a/libs/ardour/ardour/dB.h +++ b/libs/ardour/ardour/dB.h @@ -22,6 +22,10 @@ #include "pbd/fastlog.h" +#define GAIN_COEFF_ZERO 0.0 +#define GAIN_COEFF_SMALL 0.0000001 //-140dB +#define GAIN_COEFF_UNITY 1.0 + static inline float dB_to_coefficient (float dB) { return dB > -318.8f ? pow (10.0f, dB * 0.05f) : 0.0f; } |