Add AGC clamping constant, turn AGC on, reduce target energy

This commit is contained in:
Geoffrey Merck 2020-02-04 22:23:06 +01:00
parent ee1b97a165
commit b9d0c6e532
2 changed files with 9 additions and 6 deletions

View File

@ -38,11 +38,13 @@ CAGC::CAGC(float initialLeveldB)
// set internal gain appropriately
m_Gain = pow(10.0f, initialLeveldB/20.0f);
//+- 10dB Margin, TODO Move margin to constant
m_GainMax = pow(10.0f, (initialLeveldB + 10.0f)/20.0f);
m_GainMin = pow(10.0f, (initialLeveldB - 10.0f)/20.0f);
m_GainMax = pow(10.0f, (initialLeveldB + AGC_CLAMPING)/20.0f);
m_GainMin = pow(10.0f, (initialLeveldB - AGC_CLAMPING)/20.0f);
m_EnergyPrime = 1.0f;
m_targetEnergy = 32767.0f;//TODO : Move to parameter ?
// We do not target full scale to avoid stauration
m_targetEnergy = 32767.0f/2.0f;//TODO : Move to parameter ?
m_Bandwidth = 1e-2f;//TODO : Move to parameter ?
m_Alpha = m_Bandwidth;

View File

@ -68,11 +68,12 @@
#define CODEC_AMBE2PLUS 2
// Transcoding speech gains
#define CODECGAIN_AMBEPLUS -10 // in dB
#define CODECGAIN_AMBE2PLUS +10 // in dB
#define CODECGAIN_AMBEPLUS -16 // in dB
#define CODECGAIN_AMBE2PLUS +16 // in dB
// Transcoding Tweaks
#define USE_AGC 0
#define USE_AGC 1
#define AGC_CLAMPING 3 //clamps the AGC gain to +- this value
#define USE_BANDPASSFILTER 1
// Timeouts -----------------------------------------------------