Автоматическое управление усилением, клик & amp; всплески популярности

Это мой метод автоматического управления усилением, он работает, но я получаю быстрый импульс по первому импульсу. Как я могу уменьшить его, чтобы он не превышал 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

Решение

Задача ещё не решена.

Другие решения

Других решений пока нет …