WebRTC AEC

WebRTC AEC_第1张图片
AEC算法主要模块:
1.回声时延估计(用于自适应滤波器部分延时估计对齐)
2.NLMS滤波器(归一化最小均方自适应算法),即PBFDAF(分段块频域自适应滤波算法)。
3.NLP是非线性滤波,取掉残余回声。
4.CNG舒适噪声产生
判断远端和近端是否说话的情况,称为双端检测,需要检查一下四种情况:
a.仅远端说话,此时有回声,利用这种状态进行NLMS自适应滤波器的系数更新,使其尽快收敛。
b.仅近端说话,这种时候没有回声,不用考虑。
c.双端都在说话(DT),此时自适应滤波器系数固化,不进行系数更新。
d.双端都没有说话,这是需要启用近端VAD。

AEC中音频质量优化验真:
1.双方同时讲话时,对端,双端出现声音消失现象。
AEC算法分为两个部分,回声抑制NLMS自适应滤波器和NLP滤波。回声抑制模块主要抑制回波,如果该模块造成的话,无论单讲还是双讲都会出现消声现象,所以排除此模块,应该由NLP导致。
NLP(非线性滤波)主要已知残留回波。代码分析和算法原理得到,NLP滤波器参数表示为指数形式,sv(n)(对应代码中min_overdrive)越小,NLP滤波抑制程度越小。减小改参数后,未出现双讲消声现象。
2.会话开启时,回声收敛时间过长(要3-4s)
AEC算法收敛速度不够快。采用的频域NLMS算法,属于自适应算法的一种,可以通过增大步长参数,加快收敛速度。增大补偿参数后,回声快速收敛。
3.通话过程中,偶尔出现声音啸叫的问题。
现象:可视通话过程中出现某个声音越来越响,越来越刺耳,知道难以接受。
产生原因:本地扬声器播放,本地麦克风录音,本地扬声器播放,形成一个回路。本质原因是话筒离音箱太近。
分析:现象主要是由回拨导致,因此只要能够快速抑制回波,就不会出现上面现象.如果出现啸叫,通过观测声音频谱,估计啸叫频率,用陷波滤波器。
技术指标
1.回声抑制算法处理时延估计:
实际时延(拍掌记录掌声信号和其回声信号,求平均值)与算法补偿时延(估计时延)之差小于80ms。
2.回声抑制比ERLE。
近端信号能量除以误差信号能量取对数乘WebRTC AEC_第2张图片以10.

你可能感兴趣的:(语音识别)