--音視頻通話中的關鍵——DSP消噪技術
作者: 日期:2019-10-06 人氣:7887
DSP(數字信號處理技術),是利用計算機或專用處理設備,以數字形式對信號進行處理,以得到符合人們需要的信號形式的新興學科,其涉及許多學科而又廣泛應用于許多領域,以音視頻應用領域為廣泛。
目前市面上廣為運用的DSP實現方法有很多,在這里主要列舉兩項,一是利用通用的可編程DSP實現,即非專用的DSP芯片。與單片機相比,DSP芯片具有更加適合于數字信號處理的軟件和硬件資源,可用于復雜的數字信號處理算法。二是用專用的DSP芯片實現。
在一些特殊的場合,要求的信號處理速度極高,用通用DSP芯片很難實現,這種芯片將相應的信號處理算法在芯片內部用硬件實現,無需進行編程。
大部分的音頻回聲消除算法都是基于DSP實現的,很少基于Windows電腦,這其中主要原因考慮實時性與高效問題。
DSP芯片資源有限而回聲消除算法所需資源較大。以視頻會議系統為例,大規模的會議室可以產生超過512ms的回音,要消除這么長延時的回音,即使按照8k赫茲采樣率計算,自適應濾波器W(n)的長度都會達到4096個點,這樣一方面需要非常大的存儲空間來存儲W(n),另一方面,W(n)的更新需要的計算量也是成倍增長,傳統自適應濾波器的效率很難保證。
目前基于DSP的回聲消除算法已比較成熟,市場上也有一批專門的算法/芯片公司的能夠對外提供已經優化好的基于DSP的軟件回聲消除模塊,如億聯網絡的音視頻系統產品均使用獨家的智能消噪芯片。
相關文章:《硬件視頻會議及軟件視頻會議優勢對比》
回聲消除技術新的應用領域是基于Windows平臺的各種VoIP應用,比如軟件視頻會議,VoIP軟件電話等。當回聲消除算法應用到Windows平臺,相對于傳統的DSP平臺,既帶來優勢,也帶來了新的難點。高效性在Windows平臺已經不是問題,現在的pc機,擁有豐富的CPU資源和海量的內存資源,再復雜的回聲消除算法都可以運行自如。但是,新增加的麻煩比帶來的好處要多。
首先,Windows平臺是一個非實時的平臺,音頻的采集和播放對回聲消除算法而言,也是非實時的。Windows平臺下,應用程序很難在底層直接控制聲卡的采集播放,獲得的是非實時的音頻流,從而帶來了采集和播放音頻流的同步問題。
實際情況,在一般的VoIP軟件中,接收對方語音(遠端語音)并傳到聲卡播放是在一個線程中進行的,而采集本地語音(近端語音)并傳送到對方在另一個線程中進行。聲學回聲消除(AEC)算法在對近端語音進行回聲消除的同時,還需要播放線程中的數據作為參考。而要同步這兩個線程中的數據是非常重要的,因為稍不同步,聲學回聲消除算法中的自適應濾波器就會發散,不但消除不了回音,還會破壞原始采集到的聲音,使聲音難以分辨。
從上面分析來看,由于Windows平臺的非實時性,基于Windows平臺的回聲消除技術比DSP平臺要難得多,基于DSP的回聲消除技術:芯片資源較小,實時性較高,易于實現近端語音信號和遠端參考信號的同步;基于Windows的回聲消除技術:資源相對寬裕,能夠輕松運行音頻處理算法,但實時性不足,很難實現近端信號和遠端參考信號的同步,導致很難實現回聲消除的功能。
相關閱讀:
《億聯網絡2018年度財報解讀之VCS視頻會議業務關鍵技術及核心優勢》、《億聯網絡2018年報解讀之SIP話機關鍵技術與核心優勢》