第三章 MET VAD 靜音及回音消除機制
3.4 系統架構
國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖18:一段語音的時域信號圖
由於人與人之間的溝通會話是一種語音存在與不存在不斷交替的訊號,圖18 即為 一段語音的振幅分佈情形。人在說話時,語句與語句之間並不會緊密的連接在一起,而 會有中斷的間隔存在。而VAD 就是根據聲音訊號之中的某些特性區分語音(speech,即 實際有說話內容的部份)或非語音(non-speech,沒有說話內容)區段。
過去VAD 技術用於 VoIP 的目的是用來決定一個訊框之中是否包含了有意義的語音 資料[12]:假設 VAD 偵測到一個聲音訊框中並不包含任何有意義的語音資料,那麼就不 將這個訊框傳送至網路上,以節省頻寬使用量。
一個有效的VAD 方法是利用語音的頻率特性做判斷,但因回音之頻域特性與正常 語音類似,故不適用於回音消除。另一法為根據能量大小作為判斷依據。其技術上的作 法為:定義每一個聲音訊框的能量值(energy),同時設定一個臨界值(threshold)作為判定 用的依據,其判定的演算法如下(其中,Ej 為能量值,Er 為臨界值):
IF (Ej> Er)
THEN Frame is
ACTIVE
ELSE Frame isINACTIVE
當一個聲音能量的能量值超過臨界值時,即將此訊框視為語音。反之,即視為非語 音。而本研究將以能量作為判斷為正常語音或回音的依據。
3.4 系統架構
本研究提出以VAD 的方式作為正常語音與否的判定機制。此系統架構如圖 19 所
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖19:以 VAD 判定正常語音與否之架構
圖19 中,由收聽端(B)麥克風收到的聲音訊框,在應用程式送出之前,先由 VAD 進行判定,若發現該訊框中為回音或不包含語音,則VAD 負責擋下此訊框(開關切為 Off)。反之,若該訊框內包含有意義的語音,則 VAD 會允許其傳送。
若使用者的終端設備原內建有回音消除機制,此架構也能與現有之Listener 回音 消除機制搭配共同運作,當原有回音消除機制失效時,VAD 仍然能有效阻擋回音與靜 音訊框。如同前述,在一個Listener 回音消除機制失效的收聽端,回音訊號被麥克風 收回後,會傳送給其他網路會談的與會者播放,造成Infected Conference。
圖20:Listener 端回音消除機制失效的狀況
如圖20,收聽者(B) 所造成的 Direct Echo 會傳給原始說話者(A)。而為了避免這種 狀況,本研究所設計的系統即在原本的回音消除機制之後加入由VAD 控制的訊號開關 (switch),控制是否讓聲音通過。
Case1:Listener Echo Cancellation 正常運作時
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖21:加入 VAD 機制之系統
如圖21,當回音消除機制正常運作時,收聽端的回音正常被消除,此 VAD 機制並 不會對原系統造成任何影響。
Case2:Listener Echo Cancellation 失效/且收聽者未說話時
若回音消除機制失效,造成收聽者B 的回音無法正常被消除時,此 VAD 機制即發 揮功能:
圖22:加入 VAD 機制,且回音消除機制失效時的狀況
如圖22,Listener Echo Cancellation 失效,導致回音透過 B 麥克風收音,且無法正 確被消除。此時VAD 機制即可檢測出此回音訊號,並將其擋下。
Case3:Listener Echo Cancellation 失效/且收聽者說話時
若Listener 端回音消除機制失效,導致收聽者端麥克風收入回音,但同時此收聽者 也在說話的狀況如圖23:
‧ 國
立 政 治 大 學
‧
N a tio na
l C h engchi U ni ve rs it y
圖23:回音消除機制失效,同時收入回音與說話聲音時的狀況
如圖23,B 端的 Listener Echo Cancellation 失效,導致回音之產生,但同時 B 也在 說話,亦即B 的正常語音 S(B)與說話端 A 的回音 S(A)夾雜在一起被送出時,VAD 機制 能判斷出語音訊號存在,並不會將此聲音擋下,仍然會送出此聲音訊號,而使溝通能正 常進行,但回音並未被消除。
如上述,藉由加入VAD 語音判定機制,當聲音傳送至網路以前先判斷為有效語音 或是回音訊號,以避免Listener 端回音消除機制失效時導致 Infected Conference。