Перейти к содержанию
    

избавление от микрофонного эффекта

задача - сделать на уже установленном DSP adau1761 в SigmaStudio

Мне надо убрать эхо из линии. Сделать громкоговорящий дуплекс. Никто не подскажет, как в студии адаптивный фильтр делается? Прямо готового там не нахожу. Что-то есть похожее.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Echo-canceller (база любого speakerphon'а) в телефонии обычно использует два принципа - "весы" - выделение говорящего и изменение коэффициентов усиления передачи и приема в пользу говорящего, подавляя сигнал от слушающего, и собственно адаптивную фильтрацию. На SigmaStudio Вы вряд ли сможете это сделать. Почитайте http://www.cirrus.com/en/products/pro/areas/PA178.html - мы его используем именно для разговорных дел.

В общем виде адаптивная фильтрация разбивается на три части: локацию, т.е. посылку тестового (или полезного) сигнала с измерением комплексной временной функции отклика (обратного отражения на вход микрофона), построение адаптивного фильтра (используется весьма длинный КИХ, длина которого должна превышать самое длинное эхо помещения), и собственно наложение фильтра с постоянным retrain'ом - периодической коррекцией самого фильтра.

В работе CS6422 это хорошо видно: после резкого включения пытается завыть, потом за 2-5 сек настраивается и затихает. Изменяешь акустические условия - повторяется.

Sigma Studio - восхитительная игрушка, я ее с восторгом пользую, но для построения достаточно стандартных систем.

В полный рост echo-cancelller в ней, я думаю, не нарисовать. ЕЕ можно использовать как рабочую среду отладки, но локацию и построение адаптивного фильтра придется делать ручками снаружи. Blackfin Вам в руки и ветер в спину!

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

чуть изменилось ТЗ.

А нету ли готовых микросхем? Неужели каждый раз надо на DSP заново писать то, что постоянно востребованно?

Есть готовые микросхемы для телефонии. Называются слики. На выходе что хочешь-от аналога до цифры с Фурье и блэкджеком.

В общем виде задача решается несложно. Ищется ВКФ сигналов от микрофона и на динамик. По ВКФ вычисляется задержка. И из микрофонного сигнала вычитается задержанный сигнал на динамик.

Есть вариант разложить сигнал с микрофона в спектр и его обработать. Вариантов обработки много. Можно выкидывать палки, живущие дольше определенного времени, но тогда не получится петь по громкой связи. Можно менять соседние частоты местами и/или убирать фазовую информацию, но тогда речь станет неузнаваемой.

Изменено пользователем Corner

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

В общем виде задача решается несложно. Ищется ВКФ сигналов от микрофона и на динамик. По ВКФ вычисляется задержка. И из микрофонного сигнала вычитается задержанный сигнал на динамик.

 

По целому ряду причин задача через ВКФ не решается. Практически решается адаптивной фильтрацией с дополнительными примочками. Причины следующие:

1. Эхо - это не просто отраженный сигнал, а фильтрованная его копия. Линейный отклик может достаточно быстро меняться.

2. Наличие нелинейной компоненты эхо, особенно существенной для громкой связи.

3. Double-talk, одновременный разговор с обоих концов. Необходимо обнаруживать эту ситуацию и на это время замораживать передаточную функцию эхо-отклика, не вести адаптацию.

 

Вообще-то теория эхоподавления развита достаточно хорошо и не нужно изобретать нового велосипеда. Он скорее всего долго еще не поедет после очередного изобрретения на форуме

 

Микросхемы существуют, конечно. Скорее всего внутри такой микросхемы старенький 54-ый tms выпущенный крупной партией с заводской прошивкой пзу)

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

По целому ряду причин задача через ВКФ не решается. Практически решается адаптивной фильтрацией с дополнительными примочками. Причины следующие:

1. Эхо - это не просто отраженный сигнал, а фильтрованная его копия. Линейный отклик может достаточно быстро меняться.

2. Наличие нелинейной компоненты эхо, особенно существенной для громкой связи.

3. Double-talk, одновременный разговор с обоих концов. Необходимо обнаруживать эту ситуацию и на это время замораживать передаточную функцию эхо-отклика, не вести адаптацию.

 

Вообще-то теория эхоподавления развита достаточно хорошо и не нужно изобретать нового велосипеда. Он скорее всего долго еще не поедет после очередного изобрретения на форуме

 

Микросхемы существуют, конечно. Скорее всего внутри такой микросхемы старенький 54-ый tms выпущенный крупной партией с заводской прошивкой пзу)

Круто. Как я на pic18 это делал, ума не приложу. До сих пор работает вопреки всему))) Причем, именно через ВКФ. Только пооктавное. Но это нюансы.

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Круто. Как я на pic18 это делал, ума не приложу. До сих пор работает вопреки всему))) Причем, именно через ВКФ. Только пооктавное. Но это нюансы.

 

Вы просто не в теме. Эквалайзер для модема вы тоже делали измеряя функцию взаимной корреляции назло всем? )))

Поделиться сообщением


Ссылка на сообщение
Поделиться на другие сайты

Присоединяйтесь к обсуждению

Вы можете написать сейчас и зарегистрироваться позже. Если у вас есть аккаунт, авторизуйтесь, чтобы опубликовать от имени своего аккаунта.

Гость
Ответить в этой теме...

×   Вставлено с форматированием.   Вставить как обычный текст

  Разрешено использовать не более 75 эмодзи.

×   Ваша ссылка была автоматически встроена.   Отображать как обычную ссылку

×   Ваш предыдущий контент был восстановлен.   Очистить редактор

×   Вы не можете вставлять изображения напрямую. Загружайте или вставляйте изображения по ссылке.

×
×
  • Создать...