自动增益控制点击&流行爆发

时间:2013-09-25 22:10:37

标签: c++ signal-processing core-audio

这是我的自动增益控制方法,它有效,但我在第一次冲动时快速爆发。如何将其缩小以使其不会超过0dbfs?此外,1e-4的速度有点起作用,但速度太慢。

double AGC(double x)
{
double ref = pow(10.0, (-18.0/10.0); //-18dBFS Convert to Linear
double rate = 1.0; // coefficient when increasing/decreasing gain

x = x * m_Gain; //scale input(x)

m_Gain += (ref - (fabs(x) * fabs(x))) * rate;

return x;
}

0 个答案:

没有答案