亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種回聲消除數(shù)據(jù)同步對齊方法、系統(tǒng)及音頻通信設(shè)備的制作方法

文檔序號:7579160閱讀:507來源:國知局
專利名稱:一種回聲消除數(shù)據(jù)同步對齊方法、系統(tǒng)及音頻通信設(shè)備的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于音頻處理領(lǐng)域,尤其涉及一種回聲消除數(shù)據(jù)同步對齊方法、系統(tǒng)及音頻通信設(shè)備。
背景技術(shù)
近年來,隨著網(wǎng)絡(luò)技術(shù)的發(fā)展,網(wǎng)絡(luò)電話(Voice over Internet Protocol,VoIP)技術(shù)已經(jīng)突破了瓶頸,以其低廉的價格,高質(zhì)量的通話效果贏得了用戶的喜愛。然而當(dāng)通話終端使用音響或者擴(kuò)音器播放對方的聲音時,聲音經(jīng)過外部環(huán)境的反射就會被話筒采集至IJ,從而形成聲學(xué)回聲,導(dǎo)致通話質(zhì)量的降低。因此,回音消除模塊是音頻對話中的必備模塊,如果回聲消除的效果不好,就會嚴(yán)重影響通話質(zhì)量,而輸入回音消除模塊的數(shù)據(jù)是否同步,是保證回音消除能否起效的基礎(chǔ)。然而現(xiàn)有技術(shù)采用相對簡單的緩沖音頻播放數(shù)據(jù)和音頻采集數(shù)據(jù)的方法,無法對緩沖區(qū)的數(shù)據(jù)進(jìn)行有針對性、較為準(zhǔn)確的同步對齊,直接由回音消除模塊進(jìn)行處理,極大地浪費了CPU的資源,導(dǎo)致回音消除效果差、回聲消除性能不穩(wěn)定。

發(fā)明內(nèi)容
本發(fā)明實施例的目的在于提供一種回聲消除數(shù)據(jù)同步對齊方法,旨在解決由于現(xiàn)有技術(shù)采用相對簡單的緩沖音頻播放數(shù)據(jù)和音頻采集數(shù)據(jù)的方法,無法對緩沖區(qū)的數(shù)據(jù)進(jìn)行有針對性、較為準(zhǔn)確的同步對齊,導(dǎo)致回音消除效果差、回聲消除性能不穩(wěn)定的問題。本發(fā)明實施例是這樣實現(xiàn)的,一種回聲消除數(shù)據(jù)同步對齊方法,所述方法包括下述步驟將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取所述回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù);當(dāng)所述次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)所述回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù);將所述回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊。本發(fā)明實施例的另一目的在于提供一種回聲消除數(shù)據(jù)同步對齊系統(tǒng),所述系統(tǒng)包括次數(shù)信息獲取單元,用于將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取所述回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù); 回聲參考隊列調(diào)整單元,用于當(dāng)所述次數(shù)信息獲取單元獲取的次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù);以及
音頻數(shù)據(jù)發(fā)送單元,用于將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)幀發(fā)送給回聲消除模塊。本發(fā)明實施例的另一目的在于提供ー種包括上述回聲消除數(shù)據(jù)同步對齊系統(tǒng)的音頻通信設(shè)備。本發(fā)明實施例在回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)回聲參考隊列中音頻數(shù)據(jù)幀的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù),將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊,使得進(jìn)入回聲消除模塊的待消除回聲的音頻數(shù)據(jù)與作為回聲消除的參考音頻數(shù)據(jù)在回聲消除之前進(jìn)行同步對齊,從而減少回聲消除模塊音頻數(shù)據(jù)的誤比較,提高了回聲消除模塊的回聲消除效率,以及語音通話的質(zhì)量。


圖I是本發(fā)明第一實施例提供的回聲消除數(shù)據(jù)同步對齊方法的實現(xiàn)流程圖;圖2是本發(fā)明第二實施例提供的回聲消除數(shù)據(jù)同步對齊方法的實現(xiàn)流程圖;圖3是本發(fā)明第二實施例提供的回聲消除數(shù)據(jù)同步對齊系統(tǒng)的具體實例圖;圖4是本發(fā)明第三實施例提供的回聲消除數(shù)據(jù)同步對齊系統(tǒng)的結(jié)構(gòu)圖;圖5是本發(fā)明第三實施例提供的回聲消除數(shù)據(jù)同步對齊系統(tǒng)的結(jié)構(gòu)圖;圖6是本發(fā)明第四實施例提供的回聲消除數(shù)據(jù)同步對齊系統(tǒng)的結(jié)構(gòu)圖。
具體實施例方式為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明進(jìn)行進(jìn)ー步詳細(xì)說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。本發(fā)明實施例在回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)回聲參考隊列中音頻數(shù)據(jù)幀的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù),將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊,使得進(jìn)入回聲消除模塊的待消除回聲的音頻數(shù)據(jù)與作為回聲消除的參考音頻數(shù)據(jù)在回聲消除之前進(jìn)行同步對齊,從而減少回聲消除模塊音頻數(shù)據(jù)的誤比較,提高了回聲消除模塊的回聲消除效率,以及語音通話的質(zhì)量。本發(fā)明實施例提供了 ー種回聲消除數(shù)據(jù)同步對齊方法,所述方法包括下述步驟將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取所述回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù);
當(dāng)所述次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)所述回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù);將所述回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊。
本發(fā)明實施例還提供了一種回聲消除數(shù)據(jù)同步對齊系統(tǒng),所述系統(tǒng)包括次數(shù)信息獲取單元,用于將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取所述回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù);回聲參考隊列調(diào)整單元,用于當(dāng)所述次數(shù)信息獲取單元獲取的次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)回聲參 考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù);以及音頻數(shù)據(jù)發(fā)送單元,用于將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)幀發(fā)送給回聲消除模塊。本發(fā)明實施例還提供了一種包括上述回聲消除數(shù)據(jù)同步對齊系統(tǒng)的音頻通信設(shè)備。本發(fā)明實施例在回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)回聲參考隊列中音頻數(shù)據(jù)幀的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù),將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊,使得進(jìn)入回聲消除模塊的待消除回聲的音頻數(shù)據(jù)與作為回聲消除的參考音頻數(shù)據(jù)在回聲消除之前進(jìn)行同步對齊,從而減少回聲消除模塊音頻數(shù)據(jù)的誤比較,提高了回聲消除模塊的回聲消除效率,以及語音通話的質(zhì)量。以下結(jié)合具體實施例對本發(fā)明的具體實現(xiàn)進(jìn)行詳細(xì)描述實施例一:由于計算機(jī)聲卡種類繁多,出現(xiàn)時鐘漂移的程度不同,另外不確定的網(wǎng)絡(luò)通信延時,外部環(huán)境對聲音的不同反射,以及windows本身是一個多任務(wù)、非實時的操作系統(tǒng),導(dǎo)致回聲消除模塊難以實時地采集輸入的音頻數(shù)據(jù),實現(xiàn)音頻播放設(shè)備播放的音頻數(shù)據(jù)和音頻采集設(shè)備采集的音頻數(shù)據(jù)的同步對齊和回聲的消除。在本發(fā)明實施例中,通過獲取回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)(也就是音頻播放設(shè)備播放的音頻數(shù)據(jù)幀)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù),也就是與音頻采集設(shè)備采集的音頻數(shù)據(jù)不同步的次數(shù),根據(jù)回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù),實現(xiàn)音頻播放設(shè)備播放的音頻數(shù)據(jù)和音頻采集設(shè)備采集的音頻數(shù)據(jù)的同步對齊,從而為回聲消除做好準(zhǔn)備。圖I示出了本發(fā)明第一實施例提供的一種回聲消除數(shù)據(jù)同步對齊方法的實現(xiàn)流程,詳述如下在步驟SlOl中,將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù)。在本發(fā)明實施例中,操作系統(tǒng)調(diào)用第一線程(播放線程)通過音頻播放設(shè)備播放音頻數(shù)據(jù),調(diào)用第二線程(采集線程)通過音頻采集設(shè)備采集音頻數(shù)據(jù),兩個線程相互獨立,同時,保存音頻播放設(shè)備播放的音頻數(shù)據(jù),作為回聲消除的參考音頻數(shù)據(jù),音頻數(shù)據(jù)以幀的形式進(jìn)行組織。在具體實施過程中,采取隊列的數(shù)據(jù)結(jié)構(gòu)來存儲音頻數(shù)據(jù),從隊尾寫入音頻數(shù)據(jù),從隊頭讀取音頻數(shù)據(jù)。具體地,回聲參考隊列用于存儲音頻播放設(shè)備播放的音頻數(shù)據(jù),當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)時,則說明采集線程被操作系統(tǒng)頻繁調(diào)度,而播放線程相對長時間未被調(diào)度;當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)大于等于預(yù)設(shè)的最大幀數(shù)時,則說明播放線程被操作系統(tǒng)頻繁調(diào)度,而采集線程相對長時間未被調(diào)度,此時需要對回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)進(jìn)行調(diào)整。
因此,應(yīng)預(yù)先對回聲參考隊列進(jìn)行初始化,例如設(shè)置回聲參考隊列的最小幀數(shù)、最大幀數(shù)、平均幀數(shù)、設(shè)置回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)的次數(shù)以及回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù)等。在步驟S102中,當(dāng)次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù)。在本發(fā)明實施例中,可以通過設(shè)置計數(shù)器統(tǒng)計回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)的次數(shù),當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,將空幀插入到回聲參考隊列的隊尾,使回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)達(dá)到預(yù)設(shè)的平均幀數(shù),并將計算器置零,重新開始計數(shù)。另外,可以通過設(shè)置計數(shù)器統(tǒng)計回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù),當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,將回聲參考隊列中隊頭的若干音頻數(shù)據(jù)幀移出隊列,使得回聲參考隊列中音頻數(shù)據(jù)幀的幀數(shù)為預(yù)設(shè)的最大幀數(shù),并將計算器置零,重新開始計數(shù)。在具體實施過程中,當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)位于預(yù)設(shè)的最小幀數(shù)和最大幀數(shù)之間時,則無須對其進(jìn)行調(diào)整,通過將回聲參考隊列中音頻數(shù)據(jù)幀與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)幀發(fā)送給回聲消除模塊,不斷消耗回聲參考隊列中的音頻數(shù)據(jù)幀,從而實現(xiàn)回聲參考隊列中音頻數(shù)據(jù)幀的自動調(diào)整。在步驟S103中,將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊。在本發(fā)明實施例中,通過步驟S102對回聲參考隊列中的音頻數(shù)據(jù)幀進(jìn)行調(diào)整后,完成回聲參考隊列中音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)的同步對齊,并將同步對齊后的回聲參考隊列中音頻數(shù)據(jù)幀與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)幀發(fā)送給回聲消除模塊。在具體實施過程中,回聲消除模塊可以采用聲學(xué)回聲消除算法AEC等回聲消除算法進(jìn)行回聲的消除。在本發(fā)明實施例中,在步驟SlOl之前,需要通過精確估計音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)和音頻播放設(shè)備播放的音頻數(shù)據(jù)之間的延時,從而實現(xiàn)對回聲參考隊列的參數(shù)進(jìn)行初始化,為音頻數(shù)據(jù)的同步對齊提供依據(jù)。實施例二 :在回聲消除過程中,需要傳給回聲消除模塊兩個音頻信號音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)和音頻播放設(shè)備播放的音頻數(shù)據(jù),兩個音頻數(shù)據(jù)必須同步好,才能獲得較好的回聲消除效果。同步是指兩個信號雖然存在延時,但延時必須相對固定,在時序上要保持連貫,若送入回聲消除模塊的兩個音頻信號沒有同步,即兩個音頻信號發(fā)生幀錯位,就無法進(jìn)行回聲消除。在本發(fā)明實施例中,通過精確估計音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)和音頻播放設(shè)備播放的音頻數(shù)據(jù)之間的延吋,調(diào)整輸入到回聲消除模塊的音頻數(shù)據(jù)幀,實現(xiàn)兩者之間的同步對齊,提高了回聲消除的效率。圖2示出了本發(fā)明第二實施 例提供的一種回聲消除數(shù)據(jù)同步對齊方法的實現(xiàn)流程,詳述如下在本發(fā)明實施例中,為了精確估計音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)和音頻播放設(shè)備播放的音頻數(shù)據(jù)之間的延時,可以通過在語音通話前,預(yù)先計算從音頻播放設(shè)備播放的音頻數(shù)據(jù)被音頻采集設(shè)備采集到的延時信息。在具體實施過程中,預(yù)先設(shè)置樣品音頻數(shù)據(jù),并通過音頻播放設(shè)備循環(huán)播放該音頻數(shù)據(jù),通過音頻采集設(shè)備采集播放的該音頻數(shù)據(jù),如圖3所示。在步驟S201中,通過音頻播放設(shè)備循環(huán)播放預(yù)設(shè)的音頻數(shù)據(jù)。在步驟S202中,判斷音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)是否超過預(yù)設(shè)值,當(dāng)音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)超過預(yù)設(shè)值時,執(zhí)行步驟S206,否則執(zhí)行步驟S203。在本發(fā)明實施例中,為了提高語音通信的實時性,播放的預(yù)設(shè)音頻數(shù)據(jù)的數(shù)據(jù)量不應(yīng)太大,另外預(yù)設(shè)值即音頻播放設(shè)備播放音頻數(shù)據(jù)的預(yù)設(shè)次數(shù)也不應(yīng)太多,從而降低延時計算的復(fù)雜度。在步驟S203中,通過音頻采集設(shè)備同步采集音頻播放設(shè)備本次播放的音頻數(shù)據(jù),輸出采集的音頻數(shù)據(jù)。在本發(fā)明實施例中,當(dāng)音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)未超過預(yù)設(shè)值時,通過音頻采集設(shè)備同步采集音頻播放設(shè)備本次播放的音頻數(shù)據(jù),輸出采集的音頻數(shù)據(jù)。在步驟S204中,計算音頻播放設(shè)備本次播放的音頻數(shù)據(jù)中音頻數(shù)據(jù)幀與采集的音頻數(shù)據(jù)中預(yù)置范圍內(nèi)音頻數(shù)據(jù)幀的自相關(guān)函數(shù)值。在步驟S205中,獲取并保存自相關(guān)函數(shù)值中的最大值,以及取得最大值時采集的音頻數(shù)據(jù)中音頻數(shù)據(jù)幀的延時信息。自相關(guān)函數(shù)是用來表征ー個隨機(jī)過程本身,在兩個不同時刻Tl,T2的狀態(tài)之間的相關(guān)程度。在本發(fā)明實施例中,計算音頻播放設(shè)備本次播放的音頻數(shù)據(jù)中音頻數(shù)據(jù)幀與采集的音頻數(shù)據(jù)中預(yù)置范圍內(nèi)音頻數(shù)據(jù)幀的自相關(guān)函數(shù)值,當(dāng)自相關(guān)函數(shù)值中取得最大值時,通過采集的音頻數(shù)據(jù)中對應(yīng)音頻數(shù)據(jù)幀的時間信息,獲取并保存本次播放的音頻數(shù)據(jù)被音頻采集設(shè)備采集的時間間隙,即回聲形成的延時時間信息。在步驟S206中,獲取所有保存的時間信息中的最小延時、最長延時以及平均延時。在本發(fā)明實施例中,當(dāng)音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)超過預(yù)設(shè)值時,獲取保存的延時信息中的最大延時,最長延時以及平均延時。其中平均延時表征了音頻播放設(shè)備播放的音頻數(shù)據(jù)中每ー幀從播放到再被采集到的平均延時信息,從而為后續(xù)回聲的消除提供了基礎(chǔ)。在本發(fā)明實施倒中,預(yù)先設(shè)置播放的樣本音頻數(shù)據(jù)的格式可以為pcm, avi, wav等音頻格式,其時間長度為も秒,每隔t2秒播放一次,循環(huán)播放η次,通過獨立的播放線程控制其播放,獨立的采集線程采集其播放出來的聲音,即每t2秒播放ー個時間長度為、秒的樣本音頻數(shù)據(jù),同時采集t2秒的樣本音頻數(shù)據(jù)的回聲音頻數(shù)據(jù)。用Count表示毎次計算自相關(guān)函數(shù)值的使用的樣本音頻數(shù)據(jù)中樣本點個數(shù),為了提高自相關(guān)函數(shù)值的計算速度和回聲形成的延時信息的準(zhǔn)確度,可以在樣本音頻數(shù)據(jù)中查找能量值最大的采樣點,以該采樣點為中心,擴(kuò)展為總樣本點數(shù)目為Count的ー個數(shù)據(jù)幀,設(shè)為樣本幀,同時,從采集的t2秒的回聲音頻數(shù)據(jù)中預(yù)先設(shè)置的開始位置起,將包括數(shù)目為Count的樣本回聲音頻數(shù)據(jù)采樣點的ー個數(shù)據(jù)幀,設(shè)為回聲幀,將回聲幀與樣本幀進(jìn)行卷積,計算兩者的自相關(guān)函數(shù)值,計算公式如下所示
權(quán)利要求
1.一種回聲消除數(shù)據(jù)同步對齊方法,其特征在于,所述方法包括下述步驟 將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取所述回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù); 當(dāng)所述次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)所述回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù); 將所述回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊。
2.權(quán)利要求I所述的方法,其特征在于,所述將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取所述回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù)的步驟之前,所述方法還包括下述步驟 根據(jù)預(yù)先獲取的回聲形成的最小延時、最長延時以及平均延時,初始化預(yù)置的回聲參考隊列。
3.如權(quán)利要求2所述的方法,其特征在于,通過以下步驟獲取所述回聲形成的最小延時、最長延時以及平均延時 通過音頻播放設(shè)備循環(huán)播放預(yù)設(shè)的音頻數(shù)據(jù),判斷所述音頻播放設(shè)備播放所述音頻數(shù)據(jù)的次數(shù)是否超過預(yù)設(shè)值; 當(dāng)所述音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)未超過預(yù)設(shè)值時,通過音頻采集設(shè)備同步采集所述音頻播放設(shè)備本次播放的音頻數(shù)據(jù),輸出采集的音頻數(shù)據(jù); 計算所述音頻播放設(shè)備本次播放的音頻數(shù)據(jù)中音頻數(shù)據(jù)幀與采集的音頻數(shù)據(jù)中預(yù)置范圍內(nèi)音頻數(shù)據(jù)幀的自相關(guān)函數(shù)值; 獲取并保存所述自相關(guān)函數(shù)值中的最大值,以及取得所述最大值時采集的音頻數(shù)據(jù)中音頻數(shù)據(jù)幀的延時信息; 當(dāng)所述音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)超過預(yù)設(shè)值時,獲取所有保存的時間信息中的最小延時、最長延時以及平均延時。
4.如權(quán)利要求3所述的方法,其特征在于, 所述最小幀數(shù)為獲取的回聲形成的最小延時/音頻數(shù)據(jù)幀的時間長度; 所述最大幀數(shù)為獲取的回聲形成的最長延時/音頻數(shù)據(jù)幀的時間長度; 所述平均幀數(shù)為獲取的回聲形成的平均延時/音頻數(shù)據(jù)幀的時間長度。
5.如權(quán)利要求I所述的方法,其特征在于,所述當(dāng)所述次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)所述回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù)的步驟具體包括下述步驟 當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于最小幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,向所述回聲參考隊列添加空幀,使所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù)等于預(yù)設(shè)的平均幀數(shù); 當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)大于等于最大幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,移除所述回聲參考隊列中的若干音頻數(shù)據(jù)幀,使所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù)等于預(yù)設(shè)的最大幀數(shù)。
6.一種回聲消除數(shù)據(jù)同步對齊系統(tǒng),其特征在于,所述系統(tǒng)包括次數(shù)信息獲取單元,用于將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取所述回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù); 回聲參考隊列調(diào)整單元,用于當(dāng)所述次數(shù)信息獲取單元獲取的次數(shù)超過預(yù)設(shè)的次數(shù)時,根據(jù)回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù);以及 音頻數(shù)據(jù)發(fā)送單元,用于將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)幀發(fā)送給回聲消除模塊。
7.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括 回聲參考隊列初始化單元,用于根據(jù)預(yù)先獲取的回聲形成的最小延時、最長延時以及平均延時,初始化預(yù)置的回聲參考隊列。
8.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述系統(tǒng)還包括 播放次數(shù)判斷單元,用于通過音頻播放設(shè)備循環(huán)播放預(yù)設(shè)的音頻數(shù)據(jù),判斷所述音頻播放設(shè)備播放所述音頻數(shù)據(jù)的次數(shù)是否超過預(yù)設(shè)值; 音頻數(shù)據(jù)輸出單元,用于當(dāng)音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)未超過預(yù)設(shè)值時,通過音頻采集設(shè)備同步采集音頻播放設(shè)備本次播放的音頻數(shù)據(jù),輸出采集音頻數(shù)據(jù); 函數(shù)值計算單元,用于計算音頻播放設(shè)備本次播放的音頻數(shù)據(jù)中音頻數(shù)據(jù)幀與采集的音頻數(shù)據(jù)中預(yù)置范圍內(nèi)音頻數(shù)據(jù)幀的自相關(guān)函數(shù)值; 第一延時信息獲取單元,用于獲取并保存自相關(guān)函數(shù)值中的最大值,以及取得最大值時采集的音頻數(shù)據(jù)中音頻數(shù)據(jù)幀的延時信息;以及 第二延時信息獲取單元,用于當(dāng)音頻播放設(shè)備播放音頻數(shù)據(jù)的次數(shù)超過預(yù)設(shè)值時,獲取所有保存的時間信息中的最小延時、最長延時以及平均延時。
9.如權(quán)利要求6所述的系統(tǒng),其特征在于,所述回聲參考隊列調(diào)整單元具體包括 最小幀調(diào)整單元,用于當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于最小幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,向所述回聲參考隊列添加空幀,使所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù)等于預(yù)設(shè)的平均幀數(shù);以及 最大幀調(diào)整單元,用于當(dāng)回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)大于等于最大幀數(shù)的次數(shù)超過預(yù)設(shè)的次數(shù)時,移除所述回聲參考隊列中的若干音頻數(shù)據(jù)幀,使所述回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù)等于預(yù)設(shè)的最大幀數(shù)。
10.一種音頻通信設(shè)備,其特征在于,所述系統(tǒng)包括權(quán)利要求6至9任一項所述的回聲消除數(shù)據(jù)同步對齊系統(tǒng)。
全文摘要
本發(fā)明適用于音頻處理領(lǐng)域,提供了一種回聲消除數(shù)據(jù)同步對齊方法、系統(tǒng)及音頻通信設(shè)備,包括將音頻播放設(shè)備播放的音頻數(shù)據(jù)寫入到預(yù)置的回聲參考隊列,獲取回聲參考隊列中音頻數(shù)據(jù)的幀數(shù)連續(xù)出現(xiàn)小于等于預(yù)設(shè)的最小幀數(shù)或者大于等于預(yù)設(shè)的最大幀數(shù)的次數(shù);根據(jù)回聲參考隊列中音頻數(shù)據(jù)的預(yù)設(shè)的平均幀數(shù),動態(tài)調(diào)整回聲參考隊列中當(dāng)前音頻數(shù)據(jù)的幀數(shù);將回聲參考隊列中的音頻數(shù)據(jù)與音頻采集設(shè)備采集的待消除回聲的音頻數(shù)據(jù)發(fā)送給回聲消除模塊。本發(fā)明通過動態(tài)調(diào)整回聲參考隊列中的音頻數(shù)據(jù),將待消除回聲的音頻數(shù)據(jù)與參考音頻數(shù)據(jù)在回聲消除之前進(jìn)行同步對齊,從而減少回聲消除模塊音頻數(shù)據(jù)的誤比較,提高回聲消除模塊的回聲消除效率,以及語音通話的質(zhì)量。
文檔編號H04M9/08GK102625006SQ201110033889
公開日2012年8月1日 申請日期2011年1月31日 優(yōu)先權(quán)日2011年1月31日
發(fā)明者張海東, 鄒連平, 陳劍勇 申請人:深圳三石科技有限公司
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1