VoIP通信中的回聲消除系統及方法
【專利摘要】本發明提供了一種VoIP通信中的回聲消除系統,包括數據同步單元、麥克風以及回聲消除單元,其中:所述數據同步單元,用于在聲卡播放音頻數據時將所述被播放的音頻數據同步存儲到第一聲道緩存區;所述麥克風,用于采集環境聲音數據,并將所述環境聲音數據存儲到第二聲道緩存區,所述環境聲音數據包括近端語音輸入數據和來自揚聲器的播放數據;所述回聲消除單元,用于將第一聲道緩存區中存儲的音頻數據作為估計回聲,對第二聲道緩存區中存儲的數據進行回聲消除處理。本發明還提供了一種對應的方法。本發明通過同步緩存揚聲器播放的音頻數據并將該緩存的音頻數據作為估計回聲進行回聲消除操作,可達到較好的回聲消除效果。
【專利說明】Vo IP通信中的回聲消除系統及方法
【技術領域】
[0001]本發明涉及物聯網通信領域,更具體地說,涉及一種VoIP通信中的回聲消除系統及方法。
【背景技術】
[0002]隨著物聯網的發展,VoIP (Voice over IP)技術憑借其網絡帶寬利用率高、通話成本低等優點,已經成為物聯網語音通訊業務中廣泛使用的技術。在主叫方和被叫方進行VoIP通話時一般使用揚聲器和麥克風,往往容易使揚聲器播放的模擬聲音信號又被麥克風接收,從而當該聲音信號被傳送到源端時產生回聲的情況。而且在網絡通話中,呼叫的延遲又比較長,從而使回聲的情況更加嚴重,嚴重影響了通話質量。
[0003]在目前的解決回聲的方案中,利用麥克風采集的近端語音輸入和揚聲器的回聲的相關性,將麥克風采集的數據與估計回聲比較,達到回聲消除目的,如圖1所示。
[0004]目前,上述方案多將軟件中輸出的待播放的音頻數據作為估計回聲。然而,在嵌入式系統中,由于軟件應用層寫入和聲卡播出具有非實時性,這樣,就有可能造成當前播放的聲音非此刻程序寫入的數據,即估計回聲和麥克風采集的數據不同步,不具有相關性,從而回聲消除效果不佳。
【發明內容】
[0005]本發明要解決的技術問題在于,針對上述VoIP通信中嵌入式設備回聲消除效果不佳的問題,提供一種新的VoIP通信中的回聲消除系統及方法。
[0006]本發明解決上述技術問題的技術方案是,提供一種VoIP通信中的回聲消除系統,包括數據同步單元、麥克風以及回聲消除單元,其中:所述數據同步單元,用于在聲卡播放音頻數據時將所述被播放的音頻數據同步存儲到第一聲道緩存區;所述麥克風,用于采集環境聲音數據,并將所述環境聲音數據存儲到第二聲道緩存區,所述環境聲音數據包括近端語音輸入數據和來自揚聲器的播放數據;所述回聲消除單元,用于將第一聲道緩存區中存儲的音頻數據作為估計回聲,對第二聲道緩存區中存儲的數據進行回聲消除處理。
[0007]在本發明所述的VoIP通信中的回聲消除系統中,所述回聲消除單元集成到語音編碼器,并包括數據讀取子單元、數據比對子單元、同頻消重子單元及音頻發送子單元,其中:所述數據讀取子單元,用于同時讀取第一聲道緩存區的數據和第二聲道緩存區的數據;所述數據比對子單元,用于將讀取的第二聲道緩存區中的數據與第一聲道緩存區的數據進行比對;同頻消重子單元,用于將第二聲道緩存區的數據中與第一聲道緩存區中的數據同頻率的部分消除掉;所述音頻發送子單元,用于將同頻消重子單元處理后的數據發送到VoIP通信的另一方。
[0008]在本發明所述的VoIP通信中的回聲消除系統中,所述回聲消除系統還包括語音接收單元,用于接收來自VoIP通信的另一方的音頻數據,并將所述音頻數據寫入播放隊列;所述聲卡從該播放隊列讀取音頻數據進行播放。[0009]在本發明所述的VoIP通信中的回聲消除系統中,所述語音接收單元和音頻發送子單元通過電梯物聯網接收和發送數據。
[0010]在本發明所述的VoIP通信中的回聲消除系統中,所述數據同步單元集成到聲卡。
[0011]本發明還提供一種VoIP通信中的回聲消除方法,包括以下步驟:
[0012](a)在聲卡播放音頻數據時將所述被播放的音頻數據同步存儲到第一聲道緩存區;
[0013](b)通過麥克風采集環境聲音數據,并將所述環境聲音數據存儲到第二聲道緩存區,所述環境聲音數據包括近端語音輸入數據和來自揚聲器的播放數據;
[0014](C)將第一聲道緩存區中存儲的音頻數據作為估計回聲,對第二聲道緩存區中存儲的數據進行回聲消除處理。
[0015]在本發明所述的VoIP通信中的回聲消除方法中,所述步驟(C)包括:
[0016](Cl)語音編碼器同時讀取第一聲道緩存區的數據和第二聲道緩存區的數據;
[0017](c2)所述語音編碼器將第二聲道緩存區中的數據與第一聲道緩存區的數據進行比對;
[0018](c3)所述語音編碼器將第二聲道緩存區中的數據消除掉與第一聲道緩存區中的數據同頻率的部分后,發送到VoIP通信的另一方。
[0019]在本發明所述的VoIP通信中的回聲消除方法中,所述步驟(a)之前包括:接收來自VoIP通信的另一方的音頻數據,并將所述音頻數據寫入播放隊列;在所述步驟(a)中,聲卡從所述播放隊列讀取音頻數據進行播放。
[0020]在本發明所述的VoIP通信中的回聲消除方法中,所述VoIP通信的雙方通過電梯物聯網發送和接收數據。
[0021]在本發明所述的VoIP通信中的回聲消除方法中,所述步驟(a)由聲卡驅動程序實現。
[0022]本發明的VoIP通信中的回聲消除系統及方法,通過同步緩存揚聲器播放的音頻數據并將該緩存的音頻數據作為估計回聲進行回聲消除操作,保證了估計回聲與采集的揚聲器音頻數據的相關性,從而達到回聲消除的效果。
【專利附圖】
【附圖說明】
[0023]圖1是現有回聲消除系統的示意圖。
[0024]圖2是本發明VoIP通信中的回聲消除系統實施例的示意圖。
[0025]圖3是圖2中回聲消除單元的結構示意圖。
[0026]圖4是本發明VoIP通信中的回聲消除方法實施例的流程示意圖。
【具體實施方式】
[0027]為了使本發明的目的、技術方案及優點更加清楚明白,以下結合附圖及實施例,對本發明進行進一步詳細說明。應當理解,此處所描述的具體實施例僅僅用以解釋本發明,并不用于限定本發明。
[0028]如圖1所示,是本發明VoIP通信中的回聲消除系統實施例的示意圖,其用于實現嵌入式設備(例如電梯物聯網)在VoIP通信中的回聲消除。本實施例的回聲消除系統包括數據同步單元21、麥克風23以及回聲消除單元24,上述數據同步單元21可由集成到聲卡中的軟件實現,而回聲消除單元24則可由集成到語音編碼器的軟件實現。當然,在實際應用中,數據同步單元21和回聲消除單元24也可分別由獨立于聲卡和語音編碼器的硬件及軟件實現。
[0029]數據同步單元21用于在聲卡播放音頻數據時(即聲卡將音頻數據輸出到揚聲器22時)將被播放的音頻數據同步存儲到第一聲道緩存區25 (例如右聲道緩存區)。具體地,數據同步單元21在聲卡每播放一個音頻數據幀時將該音頻數據幀存儲到第一聲道緩存區25。
[0030]麥克風23用于采集環境聲音數據,并將采集的環境聲音數據存儲到第二聲道緩存區26 (例如左聲道緩存區),上述環境聲音數據包括近端語音輸入數據和來自揚聲器的播放數據。
[0031]上述數據同步單元21和麥克風23同步存儲對應的音頻數據。
[0032]回聲消除單元24用于將第一聲道緩存區25中存儲的音頻數據作為估計回聲,對第二聲道緩存區26中存儲的數據(即混合有回聲的音頻數據)進行回聲消除處理。由于第一聲道緩存區25中的音頻數據為實時備份的聲卡當前播放的音頻數據,而非系統應用層寫入的待播放的數據,這就保證了估計回聲和第二聲道緩存區26中的數據(包含實際回聲數據)具有相關性(實際回聲與估計回聲頻率相同,只是幅值、相位等不同),回聲消除單元24可以通過刪除相同的頻率的音頻數據來消除第二聲道緩存區26中的實際回聲數據。
[0033]如圖3所示,上述回聲消除單元24在具體實現時可包括數據讀取子單元241、數據比對子單元242、同頻消重子單元243及音頻發送子單元244,其中上述數據讀取子單元241、數據比對子單元242、同頻消重子單元243及音頻發送子單元244都可由集成到音頻編碼器的軟件實現。
[0034]數據讀取子單元241用于同時讀取第一聲道緩存區25的數據和第二聲道緩存區26中的數據(同時順序讀取)。數據比對子單元242用于將讀取的第二聲道緩存區26中的數據與第一聲道緩存區25中的數據進行比對。同頻消重子單元243用于將第二聲道緩存區26的數據中與第一聲道緩存區25中的數據同頻率的部分消除掉。音頻發送子單元244則用于將同頻消重子單元243處理后的數據發送到VoIP通信的另一方。
[0035]當然,在實際應用中,回聲消除單元24也可采用其他方式實現,例如可采用speex等語音編碼器的AEC回聲消除部分,從而達到有效消除回聲的效果。
[0036]在上述VoIP通信中的回聲消除系統中,還可包括語音接收單元。該語音接收單元用于接收來自VoIP通信的另一方(即另一嵌入式設備)的音頻數據,并將接收的音頻數據寫入播放隊列27。聲卡從該播放隊列27讀取音頻數據幀并輸出到揚聲器22進行播放,同時數據同步單元21也將同一音頻數據幀存儲到第一聲道緩存區25。
[0037]在上述的VoIP通信中的回聲消除系統具體可應用于電梯物聯網中的VoIP通信,即語音接收單元和音頻發送子單元244通過電梯物聯網接收和發送音頻數據,實現語音通話。當然,上述回聲消除系統也可應用在其他使用揚聲器進行語音輸出、使用麥克風進行語音輸入的VoIP通信場合。
[0038]如圖4所示,是本發明VoIP通信中的回聲消除方法實施例的示意圖,其用于實現嵌入式設備(例如電梯物聯網)在VoIP通信中的回聲消除,該方法包括以下步驟:[0039]步驟S41:在聲卡播放音頻數據時將被播放的音頻數據同步存儲到第一聲道緩存區(例如右聲道緩存區)。具體地,可在聲卡每播放一個音頻數據幀時將該音頻數據幀存儲到第一聲道緩存區。特別地,該步驟可由聲卡執行。
[0040]步驟S42:通過麥克風采集環境聲音數據,并將環境聲音數據存儲到第二聲道緩存區(例如左聲道緩存區),上述環境聲音數據包括近端語音輸入數據和來自揚聲器的播放數據。
[0041]上述步驟S41和步驟S42同步執行,從而保證兩個緩存區中音頻數據的時間相關性。
[0042]步驟S43:將第一聲道緩存區中存儲的音頻數據作為估計回聲,對第二聲道緩存區中存儲的數據(即混合有回聲的數據)進行回聲消除處理。
[0043]上述步驟S43在具體實現時,可包括以下步驟:語音編碼器同時讀取第一聲道緩存區的數據和第二聲道緩存區的數據;語音編碼器將第二聲道緩存區中的數據與第一聲道緩存區的數據進行比對;語音編碼器將第二聲道緩存區中的數據消除掉與第一聲道緩存區中的數據同頻率的部分后,發送到VoIP通信的另一方。當然,上述步驟S43可采用諸如speex等語音編碼器的AEC回聲消除部分進行回聲消除處理。
[0044]在上述的VoIP通信中的回聲消除方法中,步驟S41之前還包括:接收來自VoIP通信的另一方的音頻數據,并將音頻數據寫入播放隊列。在步驟S41中,聲卡從上述播放隊列讀取音頻數據進行播放及緩存到第一聲道緩存區。
[0045]上述的VoIP通信中的回聲消除方法具體可應用于電梯物聯網中的VoIP通信,即通過電梯物聯網接收和發送音頻數據,實現語音通話。當然,上述回聲消除方法也可應用在其他使用揚聲器進行語音輸出、使用麥克風進行語音輸入的VoIP通信場合。
[0046]以上所述,僅為本發明較佳的【具體實施方式】,但本發明的保護范圍并不局限于此,任何熟悉本【技術領域】的技術人員在本發明揭露的技術范圍內,可輕易想到的變化或替換,都應涵蓋在本發明的保護范圍之內。因此,本發明的保護范圍應該以權利要求的保護范圍為準。
【權利要求】
1.一種VoIP通信中的回聲消除系統,其特征在于:包括數據同步單元、麥克風以及回聲消除單元,其中:所述數據同步單元,用于在聲卡播放音頻數據時將所述被播放的音頻數據同步存儲到第一聲道緩存區;所述麥克風,用于采集環境聲音數據,并將所述環境聲音數據存儲到第二聲道緩存區,所述環境聲音數據包括近端語音輸入數據和來自揚聲器的播放數據;所述回聲消除單元,用于將第一聲道緩存區中存儲的音頻數據作為估計回聲,對第二聲道緩存區中存儲的數據進行回聲消除處理。
2.根據權利要求1所述的VoIP通信中的回聲消除系統,其特征在于:所述回聲消除單元集成到語音編碼器,并包括數據讀取子單元、數據比對子單元、同頻消重子單元及音頻發送子單元,其中:所述數據讀取子單元,用于同時讀取第一聲道緩存區的數據和第二聲道緩存區的數據;所述數據比對子單元,用于將讀取的第二聲道緩存區中的數據與第一聲道緩存區的數據進行比對;同頻消重子單元,用于將第二聲道緩存區的數據中與第一聲道緩存區中的數據同頻率的部分消除掉;所述音頻發送子單元,用于將同頻消重子單元處理后的數據發送到VoIP通信的另一方。
3.根據權利要求2所述的VoIP通信中的回聲消除系統,其特征在于:所述回聲消除系統還包括語音接收單元,用于接收來自VoIP通信的另一方的音頻數據,并將所述音頻數據寫入播放隊列;所述聲卡從該播放隊列讀取音頻數據進行播放。
4.根據權利要求3所述的VoIP通信中的回聲消除系統,其特征在于:所述語音接收單元和音頻發送子單元通過電梯物聯網接收和發送數據。
5.根據權利要求1所述的VoIP通信中的回聲消除系統,其特征在于:所述數據同步單元集成到聲卡。
6.一種VoIP通信中 的回聲消除方法,其特征在于:包括以下步驟: (a)在聲卡播放音頻數據時將所述被播放的音頻數據同步存儲到第一聲道緩存區; (b)通過麥克風采集環境聲音數據,并將所述環境聲音數據存儲到第二聲道緩存區,所述環境聲音數據包括近端語音輸入數據和來自揚聲器的播放數據; (C)將第一聲道緩存區中存儲的音頻數據作為估計回聲,對第二聲道緩存區中存儲的數據進行回聲消除處理。
7.根據權利要求6所述的VoIP通信中的回聲消除方法,其特征在于:所述步驟(c)包括: (Cl)語音編碼器同時讀取第一聲道緩存區的數據和第二聲道緩存區的數據; (c2)所述語音編碼器將第二聲道緩存區中的數據與第一聲道緩存區的數據進行比對; (c3)所述語音編碼器將第二聲道緩存區中的數據消除掉與第一聲道緩存區中的數據同頻率的部分后,發送到VoIP通信的另一方。
8.根據權利要求7所述的VoIP通信中的回聲消除方法,其特征在于:所述步驟(a)之前包括:接收來自VoIP通信的另一方的音頻數據,并將所述音頻數據寫入播放隊列;在所述步驟(a)中,聲卡從所述播放隊列讀取音頻數據進行播放。
9.根據權利要求8所述的VoIP通信中的回聲消除方法,其特征在于:所述VoIP通信的雙方通過電梯物聯網發送和接收數據。
10.根據權利要求6所述的VoIP通信中的回聲消除方法,其特征在于:所述步驟(a)由聲卡驅動程序實 現。
【文檔編號】H04M7/00GK104010100SQ201410193107
【公開日】2014年8月27日 申請日期:2014年5月8日 優先權日:2014年5月8日
【發明者】范強國, 劉志立 申請人:深圳市匯川技術股份有限公司