Сообщение от vgorev
|
100% решение - перенос частоты
|
Это не так. Перенос частоты действительно понижает вероятность самовозбуждения системы через акустическую связь. Но, вместо "свиста" приходят свистящие хвосты после некоторых звуков...
Самый эффективный метод: построить модель акустической связи и применять её на "опережение", подмешивая соответствующий сигнал перед подачей на громкоговоритель.
Так сделано в стационарних телефонах - трубка имеет устойчивую акустическую модель, и используя несколько резисторов и конденсаторов можно легко получить ее электронный аналог чтобы подавить местный эффект и самовозбуждение.
Так же можно сделать и в классическом мегафоне - там где громкоговоритель имеет рупор, распостраняющий звук в противоположном от микрофона направлении. Модель устойчива, легко моделируются, параметры помещения влияют незначительно.
Если же микрофон и громкоговоритель "болтаются" в воздухе "в одном направлении" и не имеют конструктивной звукоизоляции между собой, то простыми методами не обойтись. В этом случае прийдется использовать цифровую обработку звука, в которой на лету строить модель акустической связи и тут же вычитать смоделированный сигнал эха на опережение. Это делается с помощью алгоритма NLMS, который используется во всех мобильных телефонах (в режиме громкой связи), и в таких программах как Skype, Google Talk, Windows Messenger.