WebRTC回声消除(1)

语音通话中回声分为两种:网络

1.电路回声(已经被解决)设计

2.声学回声blog

WebRTC源代码中设计了两个回声消除模块:反射

1.AEC(Acoustic Echo Canceller):电脑端自适应

2.AECM(Acoustic Echo Canceller Mobile):移动端im

AECM:数据

产生声学回声的缘由:db

  近端说话者的声音被本身的麦克风拾取后经过网络传到远端,img

  远端扬声器播放出来的声音被麦克风拾取后经过网络又从新发回近端。移动

加上网络和数据处理等各类延迟的影响,使得近端通话着可以从扬声器中听到本身的刚才说的话,产生回声。

WebRTC中所采用的回声消除器AECM的结构如图所示。其中自适应滤波器起到了最核心的做用,利用抽头系数估计出回声路径,并用偏差信号做为反馈区自适应的调节系数。

详细过程:

远端产生信号被麦克风采集------>传送到近端(自适应滤波器保存必定长度的远端信号到缓冲区-干净信号)------>近端扬声器播出,通过屡次反射产生回声。回声信号+近端语音进入自适应滤波器(带噪信号)。

带噪信号-干净信号=偏差信号

偏差信号反馈给滤波器,调节滤波系数的大小,知道偏差信号为0,消除回声。

相关文章
相关标签/搜索