在即時(shí)通訊應用中,需要進(jìn)行雙方,或是多方的實(shí)時(shí)語(yǔ)音交流,在要求較高的場(chǎng)合,通常都是采用外置音箱放音,這樣必然會(huì )產(chǎn)生回音,即一方說(shuō)話(huà)后,通過(guò)對方的音箱放音,然后又被對方的Mic采集到回傳給自己。如果不對回音進(jìn)行處理,將會(huì )影響通話(huà)質(zhì)量和用戶(hù)體驗,更嚴重的還會(huì )形成震蕩,產(chǎn)生嘯叫。那么如何實(shí)現回聲消除技術(shù)呢!
回聲消除就是在Mic采集到聲音之后,將本地音箱播放出來(lái)的聲音從Mic采集的聲音數據中消除掉,使得Mic錄制的聲音只有本地用戶(hù)說(shuō)話(huà)的聲音。
傳統的回聲消除都是采用硬件方式,在硬件電路上集成DSP處理芯片,如我們常用的固定電話(huà)、手機等都有專(zhuān)門(mén)的回音消除處理電路,而采用軟件方式實(shí)現回聲消除一直存在技術(shù)難點(diǎn),包括國內應用最廣泛的QQ超級語(yǔ)音,便是采用國外的GIPS技術(shù),由此可見(jiàn)一般。
回聲消除已經(jīng)成為即時(shí)通訊中提供全雙工語(yǔ)音的標準方法。聲學(xué)回聲消除是通過(guò)消除或者移除本地話(huà)筒中拾取到的遠端的音頻信號來(lái)阻止遠端的聲音返回去的一種處理方法。這種音頻的移除都是通過(guò)數字信號處理來(lái)完成的;芈曄夹g(shù)是數字信號處理的典型應用之一。
回聲消除的基本原理是以揚聲器信號與由它產(chǎn)生的多路徑回聲的相關(guān)性為基礎,建立遠端信號的語(yǔ)音模型,利用它對回聲進(jìn)行估計,并不斷修改濾波器的系數,使得估計值更加逼近真實(shí)的回聲。然后,將回聲估計值從話(huà)筒的輸入信號中減去,從而達到消除回聲的目的。
以下列舉AnyChat音視頻開(kāi)發(fā)系統的回聲消除技術(shù)。
AnyChat回音消除效果
A用戶(hù)說(shuō)話(huà)
B用戶(hù)Mic錄制聲音(包含A的聲音+B的聲音)
A聽(tīng)到B的聲音(進(jìn)行了回音消除,只保留B的聲音)
關(guān)于噪音抑制(ANS)
AnyChat的噪音抑制技術(shù)原理是將實(shí)時(shí)采樣的數字信號進(jìn)行頻譜分析,這樣我們就能分析背景噪聲響應的強度和頻譜分布,然后根據這個(gè)模型就能設計一個(gè)濾波器,當有人講話(huà)的時(shí)候,同時(shí)做信號分析,根據分析,ANC就能分析出講話(huà)者的頻譜,那么根據這些背景噪音和講話(huà)者的頻譜,這個(gè)濾波器根據兩個(gè)信號的對比實(shí)時(shí)的改變,讓講話(huà)者聲音頻譜通過(guò),對背景噪聲的頻譜進(jìn)行抑制,降低其能量,比如說(shuō)降低15到20個(gè)分貝,就很明顯可以感覺(jué)體驗到噪音抑制的效果。
|