AEC简介
Acoustic Echo Cancellation(AEC), 是声学回声消除的意思。音频算法领域中使用这项技术达到正确拾音的效果。
项目背景
项目中,我需要送入8路PCM数据到算法接口实现语音识别的功能,但实际在设备播放大音量音乐时语音唤醒的效果很差,俗称音频AEC效果差。
如下图是设备播放大音量音乐时8路音频数据的情况:
其中前4路是麦克风数据,第5,6路为空数据,第7,8路为功放的回路数据。
原因定位为麦克风回路的数据失真了。 项目采用的麦克风是模拟麦克风,经过AD采集得到PCM数据。 AD模块可以设置增益,对于算法要求默认增益为0即可。
实际检查驱动代码发现AD的增益不为0。
修改后PCM数据情况如下:
参考了AD数据手册,设置增益为0,完美解决问题,80dB情况下90%以上实现语音唤醒。
来源:CSDN
作者:TommyMusk
链接:https://blog.csdn.net/TommyMusk/article/details/103843729