使用AEC(WEBRTC)而不是AECM(WEBRTC)



我在基于手臂的嵌入式设备上使用aecm(webrtc)进行语音通信。现在,我正在尝试将aecm更改为aec以进行双向回声取消。

aecm中很简单:

WebRtcAecm_Create()->WebRtcAecm_Init()->WebRtcAecm_BufferFarend()->WebRtcAecm_Process(). 

和所有data(near, far, out)格式均为16位签名。但是,仅将功能从 WebRtcAecm_* to WebRtcAec_*和签名 - 简单数据更改为float(除以32768)无效。

我试图在audio_processing unittest中找到一些示例,但找不到任何示例。我想念什么?

webrtc aec只需比较从麦克风中提取的未得出的缓冲区和近袋,并根据未得出的方式删除靠近贝弗的回声。因此,您想清除的回声必须存在于未来的缓冲区中,然后AEC可以将其删除。请检查您的设备延迟,基本上是Farend Buffer仅保持128m/s的长度。

相关内容

  • 没有找到相关文章

最新更新