You need to enable JavaScript to run this app.
导航

回声消除介绍

最近更新时间2023.07.07 11:16:16

首次发布时间2023.03.16 11:40:12

简介

AEC(Acoustic Echo Canceller)即声学回声消除,也叫 回声消除 。介绍算法之前,让我们先了解回声是什么,它是怎么产生的。千言万语不如一个实际的例子,我在 YouTube 上找到了一个演示 AEC 算法的
视频
上面的视频中,我们可以看到,在 AEC 算法处理之前,录音包含了背景声音和人声,而背景声音在这种情况下是噪声;经过 AEC 算法处理之后,录音去除了噪声,获得干净的人声。
声学回声的例子被发现在日常的环境中,如:

  • 免持车载电话系统

  • 标准的电话或手机或免持模式

  • 专用独立的“会议电话”

  • 使用天花板扬声器和麦克风的桌子上已安装的会议室系统

  • 物理耦合(通过听筒的扬声器的振动传输到麦克风壳体)

目前抖音上有多个场景用到 AEC 算法,包括合拍、K歌、直播等。

算法模型

注意

v3算法效果优于v2算法,推荐接入v3算法

V2版本

ID模型描述

C/Java: SAMICoreIdentify_RNNAEC
OC: SAMICore_Identify_RNNAEC

aec44k_v2.2_modify_time_1s.model

44.1k模型,支持1000ms以内的延时差,需要消耗更多的资源

aec44k_v1.2.model44.1k模型,支持200ms以内的延时差
aec_v1.1.model16k模型

V3版本

ID模型描述

C/Java: SAMICoreIdentify_EngineExecutor_CE_AEC
OC: SAMICore_Identify_EngineExecutor_CE_AEC

aec44k_resnet_echo_cancellation_music_v1.3.model

44.1k模型,针对音乐场景,支持1s以内的延时差

aec44k_resnet_echo_cancellation_speech_v1.4.model

44.1k模型,针对语音场景,支持1s以内的延时差

支持格式

注意

v3版本SDK内部集成重采样,支持格式与v2版本不一致

V2版本

支持格式
采样率44100/16000 (不同采样率使用不同模型和初始化参数)
通道数1ch/2ch
数据格式Planar-Float
支持流式支持
支持realtime-safe更新参数不支持
注意: aec算法需要参考通道的数据

v3版本

支持格式
采样率16000/24000/44100/48000...
通道数1ch/2ch
数据格式Planar-Float/Interleaved-Float
支持流式支持
支持realtime-safe更新参数不支持
注意: aec算法需要参考通道的数据