Цитата
Братцы, а что такое "алгоритм АРУ"?
По крайне мере в моем понимании есть несколько видов АРУ.
- с прямым регулированием;
- с обратным регулированем;
- АРУ с садержкой;
- АРУ без задержки;
rezident
в вашем случае когда сосед не стучит по батарее, выполняется вот это
if (volume<MOI_LUBIMIY_UROVEN_GROMKOSTI) volume++;
т.е. громкость будет возрастать и стремится к бесконечности. Это же не есть гуд, когда по батарее никто не стучит. Значит надо предусмотреть минимальный уровень громкости, который еще не надо усиливать.
У АРУ есть еще один неприятный момент: если мы негромко говорим в микрофон, а затем повышаем голос, то на выходе АРУ будет всплеск, т.к. коэффициент усиления АРУ еще не успел адаптироваться. И в противном случае когда с громкого голоса понижаем его, будет провал, т.к. коэффициент усиления еще был мал. Чтобы уменьшить длительность этих всплесков нужно уменьшать интервал усреднения энергии сигнала. Но если уменьшить интервал до одного сэмпла модуляция исчезнет напрочь, АРУ просто сгладит входной сигнал.
Именно от этих всплексок я не могу избавится, АРУ пока валяю в Simulink.