2013-01-18 4 views
0

Каков предпочтительный способ выполнения вычислений aec для windows xp/vista/7 с использованием C++?Окна для удаления акустических эхо-сигналов xp/vista/7

Есть ли API, который может доставлять синхронизированные входные и выходные образцы, чтобы я мог передать их во внешнюю библиотеку, такую ​​как speex?

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

Есть ли различия в поддержке aec для xp/vista/7?

Какая лучшая внешняя библиотека (бесплатно или нет) для вычисления aec? (в этом случае мне понадобятся синхронизированные входные/выходные образцы операционной системой)

Пример кода будет приятным.

ответ

1

Сделайте поиск в Интернете для «AEC DMO». Появится несколько полезных ссылок MSDN like this one на компонент AEC, поставляемый для Vista/Win7. Существует пример приложения для DMO, поставляемого на Vista, но вам может потребоваться загрузить соответствующий SDK Windows, чтобы получить этот код.

Для XP есть IDirectSoundFullDuplexCreate8. Едва работает на XP. Не работает вообще на Vista +.

+0

Спасибо! Знаете ли вы, что (Aec DMO - aka Voice capture DSP) хорошо работает на Vista/7 ?? – user1558688

+0

Прошло некоторое время. Но я помню, что мы отправили его как часть известного продукта VOIP/видеосвязи в то время, когда Vista была отправлена, так как мы знали, что существующий AEC был тостом. YMMV. Единственная тонкая вещь, которую я помню, не работает, если вы применяете ее к потоку записи, не имея при этом никакого выходного устройства, что имеет смысл. Он не может сходиться, если другой поток не идет активно. – selbie

+0

Другие вопросы: 1) Есть ли какой-нибудь пример кода о том, как настроить xp aec? 2) Сделайте DirectSoundFullDuplexCreate8 и фильтр системы Aec (http://msdn.microsoft.com/en-us/library/windows/hardware/ff536174(v=vs.85).aspx), ссылаясь на одно и то же, или они два отдельные механизмы aec? – user1558688