美文网首页
回声消除概述

回声消除概述

作者: 假_f89c | 来源:发表于2018-12-01 12:31 被阅读11次

在一般的VOIP软件或视频会议系统中,假设我们只有A和B两个人在通话,

首先,A的声音传给B,B然后用喇叭放出来,

而这时B的MIC则会采集到喇叭放出来的声音,然后传回给A,

如果这个传输的过程中时延足够大,A就会听到自己刚才说的话,这就是回声。回声消除器的作用就是在B端对B采集到的声音进行处理,把采集到的声音中包含的A的声音去掉之后在传给A,

这样A就不会听到自己说过的话了。传给回声消除器的两个声音信号,必须同步得非常好,

就是说在B端接收到A说的话以后,要把这些声音数据传给回声消除器做参考,然后再传给声卡,声卡播放出来,

这里有一段延时,这时B再采集,然后传给回声消除器,与那个参考数据比较,从采集到的数据中把频率和参考数据相同的部分消除掉。

如果传给消除器的两个信号同步得不好,即两个信号找不到频率相同的部分,就没有办法进行消除了。

在一般的VOIP软件中,接收对方的声音并传到声卡中播放是在一个线程中进行的,

而采集本地的声音并传送到对方又是在另一个线程中进行的,

而声学回声消除器在对采集到的声音进行回声消除的同时,还需要播放线程中的数据作为参考,

而要同步这两个线程中的数据是非常困难的,因为稍稍有些不同步,声学回声消除器中的自适应滤波器就会发散,

不但消除不了回声,还会破坏采集到的原始声音,使被破坏的声音难以分辨。

声学回声主要又分成以下两种:

1、直接回声:由扬声器产生的声音未经任何反射直接进入麦克风

2、间接回声:由扬声器发出的声音经过多次反射后,再进入Mic

对于第二种回声,拥有多路径、时变性的特点,是比较难处理的。

回声消除有两种方式:

第一种:通过硬件实现,

有很多手机就是这么做的,也有专业的芯片,但是只支持8khz的,

如果要求高质量的音质的话,基本实现不了。

第二种:通过软件实现,

qq,msn,skype很多具有通话功能的软件,现在都具有回声消除的功能(需是比较高版本的,低版本的可能没有),

但是实现代码是不对外的,开源的回声消除代码只有speex和webrtc。

一般常用的开源的AEC有两个:Speex 和 webrtc

webrtc相对比Speex强的多,原因如下:

1,webrtc有回声时延估计算法模块

2,webrtc有neteq模块

3,webrtc核心就是gips

相关文章

  • 回声消除概述

    在一般的VOIP软件或视频会议系统中,假设我们只有A和B两个人在通话, 首先,A的声音传给B,B然后用喇叭放出来,...

  • Speex回声消除

    1. 概述 Speex AEC是开源的回声消除代码。 回声消除框架图如下 AEC一般的方法使用自适应FIR滤波器设...

  • Speex 双声道回声消除中frame_size的含义

    Speex中的回声消除默认是按单声道处理的。那么Speex支持直接对双声道的数据进行回声消除吗?答案是肯定的,10...

  • WebRTC回声消除技术

    1 WebRTC简介 WebRTC是谷歌公司2011年发布的一项技术。WebRTC技术主要用于在支持HTML5的浏...

  • YY语音消除回声

    平时开黑一直用微信语音,最近试了下YY,发现自己说话有很大的回声,百度搜了一下大部分是说调节麦克风的属性,我这边修...

  • Android录音回声消除

  • Android AEC 无效的解决方案

    Android 端回声消除模块在某些机型上面需要使用 16kHz 的采样率输入,否则将会产生回声问题,为此设计此特...

  • 视频会议的回声发现与消除

    回声是中最常见的声音问题之一。在的调试过程中,回声的发现与消除,是需要系统维护人员重点解决的一个课题。 一、 回声...

  • Linphone 配置参数(噪音调试)

    1,先找到跟语音相关的参数,其实有很多归纳一下无非就是 回声消除参数、回声抑制参数、噪声处理参数、均衡器参数4个。...

  • 回音消除技术概述

    一、 回音消除技术的基础概念 回音消除已经替代了早期的回音抑制,回音抑制最早始于20世纪50年代,在卫星通讯环境中...

网友评论

      本文标题:回声消除概述

      本文链接:https://www.haomeiwen.com/subject/odglcqtx.html