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