解決音頻AEC效果差的問題

AEC簡介

Acoustic Echo Cancellation(AEC), 是聲學回聲消除的意思。音頻算法領域中使用這項技術達到正確拾音的效果。

項目背景

項目中,我需要送入8路PCM數據到算法接口實現語音識別的功能,但實際在設備播放大音量音樂時語音喚醒的效果很差,俗稱音頻AEC效果差。

如下圖是設備播放大音量音樂時8路音頻數據的情況:

其中前4路是麥克風數據,第5,6路爲空數據,第7,8路爲功放的迴路數據。
圖1
原因定位爲麥克風迴路的數據失真了。 項目採用的麥克風是模擬麥克風,經過AD採集得到PCM數據。 AD模塊可以設置增益,對於算法要求默認增益爲0即可。
實際檢查驅動代碼發現AD的增益不爲0。

修改後PCM數據情況如下:
圖2
參考了AD數據手冊,設置增益爲0,完美解決問題,80dB情況下90%以上實現語音喚醒。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章