speex aec 与webrtc 回声消除的比较优化

版权声明:作者 zeark 音频算法讨论群(153268894)欢迎转载 https://blog.csdn.net/u012514944/article/details/87181911

当前开源回声消除算法主要有speex 以及webrtc 的aec算法。

两个开源aec 算法的基本原理都是基于自适应滤波nlms。

两者的主要区别:

speex 使用的是mdf 双滤波结构。通过前滤波与本次滤波的结果来调整滤波器系数的更新,

滤波器长度设计的很长,同时对信号做了预加重以及去直流处理。

webrtc aec :模块相对比较复杂,包含了延时估计,nlms以及nlp(非线性压缩),舒适噪声四个模块,

其中延时估计模块采用自相关技术,nlms 模块开源算法只用了12block,nlp 部分使用的是互相干技术。

可能的优化方向:

speex aec  现在大部分是用在嵌入式,硬件对延时模块没有需求,而mdf 结构的效果比webrtc nlms 的效果

好很多,收敛更快(webrtc 自适应滤波部分没有dtd检测,系数一直更新,只有一个简单的发散条件),

speex 优化可以增加nlp 模块,来消除抑制残留回声。

webrtc aec 现在大部分是在软件层使用:

可能的优化方向:

1、由于线程的波动,必须考虑延时估计,不同的设备,不同的信号延时估计的准确性。

2、自适应滤波器系数一直更新,能不能有更好的方法来控制,有没有更好的方法,滤波器长度调整效果怎么样?

3、nlp 部分能不能采用多频带系数代替单一系数,针对自适应滤波部分的问题,能不能做到一定的补救?

4、自适应部分采用子带处理效果会不会比nlp 分子带更好!

关于音频算法,欢迎大家加音频算法讨论群:153268894 (作者 zeark)

猜你喜欢

转载自blog.csdn.net/u012514944/article/details/87181911
今日推荐