Speex回声消除器

来源:互联网 发布:windows xp升windows7 编辑:程序博客网 时间:2024/03/29 17:01

speex是一个不错的音频编解码和音频处理的开源库,可以跨平台;

之前我转过一篇文,主要讲了speex的回声消除;

之前做过测试,觉得效果不好,最近有时间研究了一下,效果还是不错的;

以前是单机测试,捕获,AEC处理,播放;这样效果不是太好;

在实际应用中,两端通话,一段开启外部扬声器,如果两个笔记本举例比较近的话回声还是比较明显的,但是AEC处理后,效果好很多;

而且AEC还可以整体减小音频波形振幅,虽然音量小了一点,但是音质清晰了很多;

我用的是音频采集间隔,应该还要加上处理传输间隔;一般可以参考工程中的示例,过滤长度是设置长度的10倍左右;这里我测试的过程中,设置不同的参数,没有太明显的变化;

play audio前AEC处理;应用程序先保留上次capture数据;

speex的回声消除,在客户端举例比较近的时候,对音质的处理效果不好,不过距离较远(1米以上)时,还可以。



转一篇微软的文章;

消除回声

消除回音

回音是音频会议系统中的常见问题。当麦克风从扬声器拾取音频信号时将在本地音频中出现环回,并将其发回给其他参与者。当其他参与者讲话时,他(她)可以听到自己的回音。例如:

  1. Alice 和 Bob 正在打电话或者正在开会。

  2. Alice 对着麦克风讲话。

  3. Bob 通过扬声器播放听见 Alice 的语音。

  4. Bob 的麦克风也收集和传输 Alice 的语音。

  5. Alice 听到了自己语音的回音,只是由于来回传输的时间而稍有延迟。

如果使用非常灵敏的麦克风,或者扬声器的音量很大,又或者麦克风和扬声器之间离得非常近,则可能会引发或加剧回音。除了干扰以外,这还可能阻止会议中与会者之间的正常对话。

使用音频耳机消除回音

彻底消除声学回音的一个最简单的方法是使用音频耳机。耳机可在与会者的耳边以低音量播放音频。这样可以防止麦克风拾取音频信号。

可以在个人计算机上使用许多不同的音频耳机。这些耳机有专门为之设计的连接器以适合声卡上的音频插孔。即使某个耳机移动或变换了位置,许多带有内置麦克风的耳机通过使麦克风与讲话人的嘴保持一定的距离来提高声音质量。

使用声学回音消除功能消除回音

在 Windows XP 和 Windows Server 2003 操作系统中,TAPI 3.1 支持声学回音消除 (AEC) 功能。在 AEC 运行期间,数字信号处理器将扬声器信号和麦克风信号相比较,然后从麦克风信号中消去扬声器信号。通过这种方式,AEC 阻止扬声器回音反馈到麦克风并作为回音传送。


0 0
原创粉丝点击