Цитата(sav6622 @ Oct 6 2006, 12:16)

Цитата(sav6622 @ Oct 5 2006, 23:32)

Цитата(lib @ Oct 5 2006, 21:55)

А где бы исходный код эхокомпенсатора посмотреть? Хорошо бы с соответствием рекомендации G.168.

Cразу вас расстрою, скорее всего не найдете... Я пытаюсь периодически в течении 3-4 лет найти, причем копаю глубоко...

Имелось ввиду что соответствующий рекомендациям g.168, просто эхокомпенсатор достаточно широко представлен.
G165-168 стандарты телефонии. Эхо-подавитель соответственно голосовой. Голосовой эхоподавитель, кроме линейного эхокомпенсатора, должен содержать ещё нелинейные компоненты, как-то Double-Talk_Detector и т.п. В принципе, всё это хозяйство можно найти в специальной литературе. Прибабахи необходимы, но требуют обычно настройки экспериментальной
Чтобы заполнить пробел размещаю прямо здесь свою модель эхоподавителя с которой начиналась моя разработка эхоподавителя. Модель целочисленная на С, со всеми прибабахами, настраивалась в реальном времени (понятно что быстродействие не очень и нужно переписывать на ассемблер хотя-бы внутренний цикл). Обработка блочная, программа организована правильно, вложеными циклами (а не наоборот, когда напишут сначала адаптивный фильтр, а потом подвешивают на счётчики всё остальное). Линейный адаптивный фильтр -NLMS. Можно ли сделать с него G168? Можно. Только будет неэффективно, если по максимуму. G168 - стандарт расплывчатый. Требований по испытаниям много, но они для цифровой реализации - тривиальны. А по длине задержки эхо (эффективной длине адаптивного фильтра) там нет жёстких требований. Можно делать на 30 мс. Стандарт не требует, чтобы эхоподавитель был дальний.
В стандарте сказано, что он может быть дальним (60мс), но не обязан.
Если, конечно, заказчик говорит G168, подразумевает - дальний, тогда другое дело. Северо-американские корпорации практикуют обычно в своём оборудовании внутри-континентальный вариант - миллисекунд так на 40. Называется G168 тем не менее. Если реклама ссылается на оба стандарта G165/G168, то скорее всего там 30 мс или меньше.
Для дальних эхоподавителей или очень быстродействующих средних - нужны другие алгоритмы. В основе проектирования дальних эхоподавителей лежит тот факт, что импульсная характеристика отражения от гибрида обычно очень короткая - 2-4 мс. Неизвестно только где эти отражения от разных гибридов расположены. Алгоритмы включают эвристики, а потому содержат know-how
Раньше делали прорежённые алгоритмы (искать в google sparced echo canceller), последнее время появилась мода на Лагерровские решётки (работы Ali.H.Sayed & Ricardo Merched). Ищите статьи этих авторов, а также эту книгу
A. H. Sayed, Fundamentals of Adaptive Filtering, John Wiley & Sons, NY 2003 Пароль на архив: НеДляЛиберастов
Иванычу респект
Программа размещена "как есть" и комментариев я давать не буду.
У меня нет времени вспоминать почему и что и как