А что за выброс на графике Снимок экрана 2020-10-11 в 14.13.12.png?
Да там что угодно может быть. Синус рисуется идеальный и после ару фазы не совпали (на много не совпали) и получатся ступенька. А ее собаку уже ничем не убрать.
Фильтр после ару на 3 кгц - работает.
ару вот
float32_t a;
if (tim > 0)tim--;
for (int i = 0; i < FRAME_SIZE; i++) {
a = (pFirOutTemp[i ] < 0) ? -1.0f * (pFirOutTemp[i ]) : pFirOutTemp[i ];
nowAgc = 1 / a;
if (nowAgc < agcLevel) {
agcLevel = nowAgc;
tim = 6; //задержка отпускания
} else {
if (tim == 0) {
agcLevel += 0.02f; //нарастание
}
}
pFirOutTemp[i ] *= agcLevel;
}