#qt #pulseaudio #echo-cancellation
#qt #pulseaudio #отмена эха
Вопрос:
Я работаю над встроенным устройством Linux, которое имеет mic и должно взаимодействовать с другим устройством, использующим webrtc и работающим в приложении Qt QML. во время вызова у меня появляется эхо, которое следует отменить. Я поискал в Интернете и обнаружил, что у pulseaudio есть модуль для подавления эха.
Я попытался добавить load-module module-echo-cancel aec_method=webrtc
в /etc/pulse/default.pa, но тогда pulseaudio даже не запустится. когда я пытаюсь использовать команду pactl load-module module-echo-cancel для загрузки, она также завершается неудачей, сообщая, что сбой: сбой инициализации модуля, к сожалению, я понятия не имею, о чем говорит эта ошибка, и поиск в Google не дал полезной информации…
итак, у кого-нибудь есть идея, в чем проблема? Я использую Ubuntu Mate 16.04 и pulseaudio 8.0
Ответ №1:
Тот факт, что echo не было удалено, не обязательно означает, что модуль echo не запущен. К сожалению, бывают случаи, особенно на встроенных устройствах, из-за которых некоторые программы подавления эха работают некорректно. В следующем посте вы можете прочитать о сложности и проблемах программного обеспечения для подавления эха. Предполагая, что это так, вам следует попробовать запустить другой модуль AEC или отладить существующий модуль WebRTC.
Комментарии:
1. Это именно то, что происходит. Я обнаружил, что отмена эха выполняется с помощью
pactl list sources|sinks
команды, но у меня все еще есть эхо во время вызова. Я пытался менять модули aec, но никаких изменений.