|
Эхоподавление(если можно так сказать), Нужен реальный совет под реальную задачу. |
|
|
|
Jul 31 2009, 22:37
|

I WANT TO BELIEVE
     
Группа: Свой
Сообщений: 2 617
Регистрация: 9-03-08
Пользователь №: 35 751

|
Имеем трубку(телефон), режим связи: обычный(не "громкая связь"). Микрофон и динамик имеют аккустическую связь, которую конструктивными методами устранить не удаётся никак. Имеем эффект эха, задержка в канале большая - поэтому эхо мозговым фильтром пользователя не компенсируется и вызывает раздражение  В девайсе использован вокодер Speex, однако стандартная реализация его echo сanceller очень громоздка и предназначена больше для организации громкой связи. Для применения этой фичи as is нет оперативки, да и оптимизировать опять много чего придётся.....в общем не вариант. Нужно как-то организовать простой алгоритм эхоподавления применительно к конкретной трубке, с конкретными параметрами ну и т.д. Как бы сделать простое "вычитание" воспроизводимого динамиком сигнала из того, что поступает в микрофон и не передавать удалённому абоненту его-же голос?
--------------------
The truth is out there...
|
|
|
|
|
 |
Ответов
|
Aug 1 2009, 07:57
|

Гуру
     
Группа: Свой
Сообщений: 13 372
Регистрация: 27-11-04
Из: Riga, Latvia
Пользователь №: 1 244

|
Цитата(sigmaN @ Aug 1 2009, 01:37)  Микрофон и динамик имеют аккустическую связь, которую конструктивными методами устранить не удаётся никак. Имеем эффект эха, задержка в канале большая - поэтому эхо мозговым фильтром пользователя не компенсируется и вызывает раздражение  Сдается мне, что Вы все совершенно сумбурно и не правильно описали  ситуацию и причины Первый вопрос у кого из абонентов проблемы - у Вас - у соббеседника - у обоих Второй В каких условиях возникают проблемы - собеседник аналоговый абонент - ISDN - Мобильник - Такой-же как Вы и вообще у Вас своя система коммутации Цитата(fontp @ Aug 1 2009, 10:46)  Где Вы такое прочитали? Рекомендации, тогда еще, МКТТ всосаны, можно сказать, с молком матери. И осенью 25 лет, как занимаюсь связным оборудованием. Посему то, что Вы где-то слышали, читали в интернете, .... можете оставить при себе. Цитата(fontp @ Aug 1 2009, 10:46)  Напротив, я написал.. А я прочитал  и сообщаю, что написанное Вами есть каша из разрозненных явлений, фактов и слухов.
--------------------
Feci, quod potui, faciant meliora potentes
|
|
|
|
|
Aug 1 2009, 08:05
|

Эксперт
    
Группа: Свой
Сообщений: 1 467
Регистрация: 25-06-04
Пользователь №: 183

|
Цитата(zltigo @ Aug 1 2009, 11:57)  А я прочитал  и сообщаю, что написанное Вами есть каша из разрозненных явлений, фактов и слухов.  Я и не писал статью. Здесь, например, можно найти более систематическое изложение http://www.commsdesign.com/showArticle.jht...icleID=16502325Можно догадаться, что канал - всё таки цифровой (раз там где-то кодер SPEEX), тогда "трубка" эмулирует станцию ( не телефон!), следовательно автору нужен линейный эхоподавитель (раз не спикерфон) Совсем простых методов компенсации не получится (акустический эхоподавитель в любом случае сложнее линейного. но и линейный вычислительно тоже не прост) В SPEEX эхоподавитель, насколько я помню, реализован в float и на базе FFT. В этом смысле, алгоритм может быть проще - если реализовать в fixed-point (возможно быстрее) и NLMS (возможно меньше памяти). А в остальном, алггоритм в любом случае не может быть простым. Ближнее эхо только по сравнению с дальним "без задержки", а на самом деле имеет протяжённость во времени и "тупо вычитать" не получится. Нужен ближний эхоподавитель, обычно делают на протяженность 16 мс(128 тапов) импульсной характеристики отклика, может можно попробовать меньше (4 мс ?), если связь чисто аккустическая (прямое подключение АЦП и ЦАП без гибрида и линии) и линейная В open source есть эхоподавители на С, NLMS здесь, хоть тормоз, конечно, но хоть, кажется, не float http://www.rowetel.com/ucasterisk/oslec.htmlЗдесь даётся ещё более лучший эхоподавитель LEC в исходниках C. Он RLS, в исходниках,есть акккустический, есть вариант для tms5х, но, строго говоря, не совсем open source )) http://www.miketdspsolutions.com/Можно попробовать извлечь оттуда содержательный код и сократить линию задержки до минимума...
|
|
|
|
Сообщений в этой теме
sigmaN Эхоподавление(если можно так сказать) Jul 31 2009, 22:37 fontp Цитата(sigmaN @ Aug 1 2009, 02:37) Имеем ... Aug 1 2009, 07:22 zltigo Цитата(fontp @ Aug 1 2009, 10:22) Главным... Aug 1 2009, 07:42  fontp Цитата(zltigo @ Aug 1 2009, 11:42) С како... Aug 1 2009, 07:46  zltigo Цитата(fontp @ Aug 1 2009, 11:05) Можно д... Aug 1 2009, 11:41   fontp Цитата(zltigo @ Aug 1 2009, 15:34) Трубка... Aug 1 2009, 11:41    zltigo Цитата(fontp @ Aug 1 2009, 14:41) У телеф... Aug 1 2009, 11:57     fontp Цитата(zltigo @ Aug 1 2009, 15:57) Ну и к... Aug 1 2009, 12:05 HardJoker Цитата(sigmaN @ Aug 1 2009, 02:37) Имеем ... Aug 1 2009, 10:46 sigmaN Цитататогда "трубка" эмулирует станцию (... Aug 1 2009, 11:06 fontp Цитата(sigmaN @ Aug 1 2009, 15:06) Как я ... Aug 1 2009, 11:22 sigmaN Хорошо.
Вопрос сводится к минимуму:
На каких прин... Aug 1 2009, 12:07 fontp Цитата(sigmaN @ Aug 1 2009, 16:07) Хорошо... Aug 1 2009, 12:08  shf_05 посмотрите сюда
http://focus-webapps.ti.com/genera... Aug 29 2009, 08:45   fontp Цитата(shf_05 @ Aug 29 2009, 12:45) посмо... Aug 29 2009, 09:40 sigmaN Я в этих делах не так силён....может быть ссылку х... Aug 1 2009, 12:15 fontp Цитата(sigmaN @ Aug 1 2009, 16:15) Я в эт... Aug 1 2009, 12:24 sigmaN Неет. Вы спрашивайте - я ж ничего не скрываю
Прос... Aug 1 2009, 12:40 fontp Цитата(sigmaN @ Aug 1 2009, 16:40) Неет. ... Aug 1 2009, 12:53 sigmaN Спасибо. Если всё так - то и правда speex допилит... Aug 1 2009, 13:04 Harbour oslec вообще-то растет из spandsp, и выковыриваетс... Aug 2 2009, 06:03 Ковылин_Константин Цитата(Harbour @ Aug 2 2009, 13:03) oslec... Aug 11 2009, 10:28 ryhor Аффтар топика
- какая платформа в виде софта? ес... Aug 4 2009, 15:11 sigmaN >- какая платформа в виде софта? если ли оболчк... Aug 4 2009, 20:54 ryhor Цитата(sigmaN @ Aug 5 2009, 00:54) >- ... Aug 5 2009, 13:32 sigmaN >Итак у вас техас 28хх серии для всего с голосо... Aug 5 2009, 14:09 ryhor Цитата(sigmaN @ Aug 5 2009, 18:09) Непроз... Aug 5 2009, 14:30  glock17 Цитата(ryhor @ Aug 5 2009, 23:30) ну кром... Aug 21 2009, 08:42   ryhor Цитата(glock17 @ Aug 21 2009, 12:42) Про... Aug 22 2009, 15:48 sigmaN Спасибо, посмотрим.
Щас пока жду платы, чтоб всё... Aug 11 2009, 18:28 sigmaN Итак, к делу
Почитал пару-тройку статеек с сайта... Aug 22 2009, 00:52 DRUID3 Цитата(sigmaN @ Aug 22 2009, 03:52) По сн... Aug 22 2009, 03:54 Harbour только следует учесть что oslec это линейный эхода... Aug 22 2009, 02:03 sigmaN Ну как. Мы же определяем характеристики эхо канала... Aug 22 2009, 10:14 fontp Цитата(sigmaN @ Aug 22 2009, 14:14) Это д... Aug 22 2009, 17:32 sigmaN 1. Нет. Ну я хоть и чайник в этих делах, но опреде... Aug 22 2009, 16:30 ryhor ну тогда первая строка гугла на запрос "импул... Aug 22 2009, 18:05 fontp Цитата(ryhor @ Aug 22 2009, 22:05) ну тог... Aug 22 2009, 18:15  ryhor Цитата(fontp @ Aug 22 2009, 21:15) Обычно... Aug 22 2009, 18:29   fontp Цитата(ryhor @ Aug 22 2009, 22:29) да лад... Aug 22 2009, 18:39    ryhor Цитата(fontp @ Aug 22 2009, 21:39) Так КИ... Aug 22 2009, 19:52     fontp Цитата(ryhor @ Aug 22 2009, 23:52) Ну как... Aug 23 2009, 09:36      ryhor умилительно читать ваше словоблудие - нет с вам с... Aug 23 2009, 12:55       fontp Цитата(ryhor @ Aug 23 2009, 16:55) чисто ... Aug 23 2009, 13:28      ryhor Цитата(fontp @ Aug 23 2009, 12:36) Станда... Aug 23 2009, 13:34       fontp Цитата(ryhor @ Aug 23 2009, 17:34) ало вн... Aug 23 2009, 13:43        ryhor Цитата(fontp @ Aug 23 2009, 16:43) А G.16... Aug 23 2009, 14:01         fontp Цитата(ryhor @ Aug 23 2009, 18:01) я близ... Aug 23 2009, 14:05 sigmaN Завтра, не смотря на праздник, постараюсь поработа... Aug 23 2009, 23:03 sigmaN В общем-то, по-моему всё очень неплохо складываетс... Aug 27 2009, 00:42 Ковылин_Константин На правом рисунке сколько по времени ширина выделе... Aug 27 2009, 01:46 fontp Эхо хоть и короткое, но и неслабое.
ОSLEC или люба... Aug 27 2009, 11:42 ryhor Вот - половина (большая) дела сделана.
Теперь вы ... Aug 27 2009, 12:00 sigmaN Ой ой ой! Нагнал я вчера по ночи
Пропустил я... Aug 27 2009, 16:52 ryhor Цитата(sigmaN @ Aug 27 2009, 20:52) Ой ой... Aug 27 2009, 19:28 sigmaN Влепил я туда OSLEC.
Попариться пришлось не очень... Aug 28 2009, 23:34 sigmaN Всё кокаколой! Спасибо! Там в ослике надо ... Aug 30 2009, 22:11 Harbour ЦитатаOpen-source реализации таким образом нацелен... Aug 31 2009, 12:30 sigmaN чё-то ослик всё куда-то убегает
После 5 - 7 мин... Sep 4 2009, 01:38 Ковылин_Константин 5-7минут не пробовал - проверю на своём алгоритме.... Sep 4 2009, 03:05 sigmaN даа-так и есть
Скорее всего где-то маху дал, ко... Sep 4 2009, 16:41
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0
|
|
|