專利名稱:前置回波抵消器情況下透?jìng)麟p音多頻信號(hào)的方法及裝置的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及網(wǎng)絡(luò)通信技術(shù)領(lǐng)域,尤其涉及一種前置回波抵消器情況下透?jìng)麟p音多頻信號(hào)的方法及裝置。
背景技術(shù):
在網(wǎng)絡(luò)通信系統(tǒng)中,通話質(zhì)量常常受到回波的影響。近些年來發(fā)展起來的EC(回波抵消器),較好地解決了這個(gè)問題。如圖1所示,EC算法模塊往往包含一個(gè)NLP(非線性處理)模塊和一個(gè)AF(自適應(yīng)濾波器)模塊。輸入到EC算法模塊的信號(hào)經(jīng)過AF處理能夠有效抵消回波,語音信號(hào)經(jīng)過NLP處理后能夠改善語音質(zhì)量。
EC算法要求滿足ITU-TG.168(2002)的標(biāo)準(zhǔn)要求。EC的設(shè)計(jì)主要是針對(duì)語音信號(hào)的回波問題,只有在確保語音質(zhì)量的前提下,才能夠有效抵消回波信號(hào)。但是,在實(shí)際應(yīng)用環(huán)境上,經(jīng)過EC的信號(hào)并不是純粹的語音信號(hào),還包括有大量的用以呼叫控制的用戶線信令信號(hào),如DTMF(雙音多頻)信號(hào)等。由于EC算法沒有針對(duì)DTMF信號(hào)做出嚴(yán)格規(guī)定,當(dāng)有DTMF信號(hào)在帶內(nèi)傳輸時(shí),啟動(dòng)NLP會(huì)損傷DTMF信號(hào),不能有效實(shí)現(xiàn)DTMF信號(hào)的可靠透?jìng)鳌?br>
針對(duì)上述存在的技術(shù)問題,現(xiàn)有兩個(gè)技術(shù)方案。
第一種方案為完全將EC算法模塊以及DTMF模塊獨(dú)立設(shè)計(jì),既可以是基于算法模塊軟件的獨(dú)立,也可以是基于硬件實(shí)體的獨(dú)立。該方案能夠消除回波的影響,部分地增加DTMF檢測(cè)的可靠性。
但是,該方案存在如下問題其一、由于將DTMF信號(hào)當(dāng)作一般的語音信號(hào)處理,為了強(qiáng)調(diào)語音質(zhì)量,EC一般都會(huì)啟動(dòng)NLP功能,對(duì)信號(hào)必然產(chǎn)生損傷,特別是EC收斂特性會(huì)嚴(yán)重影響DTMF的時(shí)長(zhǎng)指標(biāo);其二、在雙講的情況下,可能會(huì)導(dǎo)致部分的DTMF信號(hào)被截?cái)?,?huì)嚴(yán)重影響到DTMF的檢測(cè)可靠性以及相關(guān)指標(biāo)。
第二種方案為由外部控制,當(dāng)業(yè)務(wù)知道處于收號(hào)的流程階段,此時(shí)下發(fā)命令給EC算法模塊,關(guān)閉掉對(duì)應(yīng)的EC功能。這樣就可以消除掉EC對(duì)DTMF信號(hào)的損傷,滿足多數(shù)場(chǎng)合下的應(yīng)用。
但是,該方案存在如下問題其一、關(guān)閉掉EC,必然會(huì)產(chǎn)生回波(包括DTMF信號(hào)本身的回波),回波必然會(huì)影響到DTMF收號(hào)的可靠性;其二、對(duì)于一般的呼叫建立過程,外部業(yè)務(wù)可以預(yù)先關(guān)閉掉EC,但是對(duì)于某些業(yè)務(wù),如基于FXO(外部交換局)的PSTN(公共電話交換網(wǎng))業(yè)務(wù),VoIP(承載于IP上的語音技術(shù))設(shè)備并不知道對(duì)方的狀態(tài),還有些情況,如二次收號(hào)業(yè)務(wù),主機(jī)也不知道對(duì)方的狀態(tài),也就沒辦法指示關(guān)閉掉EC功能。
發(fā)明內(nèi)容
鑒于上述現(xiàn)有技術(shù)所存在的問題,本發(fā)明的目的是提供一種前置EC情況下透?jìng)鱀TMF信號(hào)的方法及裝置,針對(duì)語音信號(hào),可以進(jìn)行正常的回波抵消,達(dá)到理想的話音質(zhì)量;如果有帶內(nèi)DTMF信號(hào),既可以消除回波,同時(shí)又可以在不損傷信號(hào)的情況下可靠透?jìng)鞯綄?duì)方。
本發(fā)明的目的是通過以下技術(shù)方案實(shí)現(xiàn)的本發(fā)明提供了一種前置EC情況下透?jìng)鱀TMF信號(hào)的方法,該EC算法模塊包括自適應(yīng)濾波器AF和非線性處理模塊NLP,該方法包括下列步驟A、EC算法模塊輸出兩組數(shù)據(jù),一組是未經(jīng)過NLP處理的數(shù)據(jù),一組是經(jīng)過NLP處理的數(shù)據(jù);B、DTMF算法模塊獲取EC算法模塊輸出的未經(jīng)過NLP處理的數(shù)據(jù);C、DTMF算法模塊根據(jù)接收的數(shù)據(jù)中承載的信息通知編解碼模塊對(duì)其中一組數(shù)據(jù)進(jìn)行編碼處理。
所述的步驟C具體包括C1、將所述未經(jīng)過NLP處理的數(shù)據(jù)送給DTMF算法模塊進(jìn)行信號(hào)檢測(cè);C2、所述DTMF算法模塊將檢測(cè)的結(jié)果傳遞給編解碼模塊;C3、編解碼模塊根據(jù)所述檢測(cè)結(jié)果對(duì)其中一組數(shù)據(jù)進(jìn)行編碼處理。
所述的步驟C3具體包括若所述DTMF算法模塊沒有檢測(cè)到有效號(hào)碼,則所述編解碼模塊取所述經(jīng)過NLP處理的數(shù)據(jù)進(jìn)行數(shù)據(jù)編碼;若所述DTMF算法模塊檢測(cè)到有效號(hào)碼,則所述編解碼模塊取所述未經(jīng)過NLP處理的數(shù)據(jù)進(jìn)行數(shù)據(jù)編碼。
所述方法采取數(shù)據(jù)緩沖機(jī)制,使所述兩組數(shù)據(jù)分別存放在緩沖區(qū)內(nèi)緩存,并輸出給所述編解碼模塊。
所述緩沖區(qū)的時(shí)長(zhǎng)不小于DTMF算法模塊完成有效檢測(cè)所需時(shí)長(zhǎng)與所述所有模塊處理一幀數(shù)據(jù)所需時(shí)長(zhǎng)之差。
所述編解碼模塊根據(jù)數(shù)據(jù)存入緩沖區(qū)中的時(shí)間先后依次從所述緩沖區(qū)中讀出數(shù)據(jù)并進(jìn)行編碼處理。
在所述編解碼模塊每次編碼完成后,需要對(duì)所述緩沖區(qū)進(jìn)行數(shù)據(jù)更新處理。
本發(fā)明還提供了一種前置EC情況下透?jìng)鱀TMF信號(hào)的裝置,該裝置包括EC算法模塊、DTMF算法模塊和編解碼模塊,該EC算法模塊包括AF模塊和NLP模塊,所述EC算法模塊有兩個(gè)輸出端,一個(gè)是未經(jīng)過NLP處理的數(shù)據(jù)輸出端,一個(gè)是經(jīng)過NLP處理的數(shù)據(jù)輸出端;所述兩個(gè)輸出端分別與所述編解碼模塊連接;所述DTMF算法模塊的輸入端與該EC算法模塊的未經(jīng)過NLP處理的數(shù)據(jù)輸出端連接,該DTMF算法模塊的輸出端與所述編解碼模塊連接。
該裝置還包括緩沖區(qū),且所述EC算法模塊輸出的兩組數(shù)據(jù)分別存放在該緩沖區(qū)內(nèi)緩存,并輸出給所述編解碼模塊。
由上述本發(fā)明提供的技術(shù)方案可以看出,本發(fā)明對(duì)EC算法進(jìn)行了改進(jìn),使得EC算法模塊同時(shí)輸出兩組數(shù)據(jù),分別對(duì)應(yīng)未經(jīng)過NLP處理以及經(jīng)過NLP處理的數(shù)據(jù);未經(jīng)過NLP處理的數(shù)據(jù)用于信號(hào)音的DTMF檢測(cè),經(jīng)過NLP處理的數(shù)據(jù)用于編解碼;本發(fā)明還采用了數(shù)據(jù)緩沖機(jī)制。采用這種方法及裝置使得在語音情況下,可以進(jìn)行正常的回波抵消,達(dá)到理想的話音質(zhì)量,滿足ITU-TG168(2002)的標(biāo)準(zhǔn)要求;針對(duì)DTMF帶內(nèi)信號(hào),既可以消除回波,同時(shí)又不對(duì)信號(hào)帶來損傷,使得完整的DTMF信號(hào)可以通過帶內(nèi)透?jìng)鞯綄?duì)方,達(dá)到對(duì)方設(shè)備可靠收號(hào)的目的。
圖1為EC算法模塊框圖;圖2為本發(fā)明所述方法的主流程框圖;圖3為本發(fā)明所述裝置的結(jié)構(gòu)示意圖。
具體實(shí)施例方式
從上述背景技術(shù)我們知道,EC對(duì)信號(hào)的損傷,主要在其NLP的處理上;如果關(guān)閉掉NLP功能,通過對(duì)自適應(yīng)濾波器的完善,完全可以達(dá)到基本不損傷信號(hào)的目的。因此,本發(fā)明的技術(shù)方案基于兩個(gè)前提1、不考慮NLP的影響,自適應(yīng)濾波器完全可以消除掉遠(yuǎn)端輸入信號(hào)的回波,同時(shí)又不至于對(duì)近端輸入的DTMF信號(hào)產(chǎn)生太大損傷;2、EC、DTMF以及編解碼模塊有相應(yīng)的接口,使得DTMF信號(hào)在本端可以可靠檢測(cè)、并且檢測(cè)結(jié)果可以實(shí)時(shí)通知編解碼模塊。該接口既可以是基于同一個(gè)處理器的EC、DTMF、CODEC算法模塊,也可以是基于不同的硬件實(shí)體。
在上面的前提下,為了實(shí)現(xiàn)本發(fā)明的目的,我們將EC算法模塊進(jìn)行改造,使其在同一時(shí)刻能夠輸出兩個(gè)結(jié)果一個(gè)對(duì)應(yīng)經(jīng)過自適應(yīng)濾波器處理、未經(jīng)過NLP處理的數(shù)據(jù);另一個(gè)對(duì)應(yīng)經(jīng)過自適應(yīng)濾波器處理并經(jīng)過NLP處理的數(shù)據(jù)。其中未經(jīng)過NLP處理的數(shù)據(jù)主要用于DTMF信號(hào)音的檢測(cè),經(jīng)過NLP處理的數(shù)據(jù)用于語音編解碼。那么,如果DTMF算法模塊沒有檢測(cè)到有效號(hào)碼,則當(dāng)成一般的語音信號(hào)處理,取經(jīng)過NLP處理的數(shù)據(jù)輸出,送到編解碼模塊進(jìn)行編碼;如果DTMF算法模塊檢測(cè)到有效號(hào)碼,則此時(shí)只能取未經(jīng)過NLP處理的數(shù)據(jù)輸出到編解碼模塊。
通常情況下,由于DTMF算法模塊檢測(cè)到有效號(hào)碼本身需要一定時(shí)間,按照國(guó)標(biāo)要求,最惡劣情況可能需要40ms,如果不采取其他措施直接將當(dāng)前的未經(jīng)過NLP處理的數(shù)據(jù)輸出,假設(shè)所有模塊處理一幀數(shù)據(jù)所需時(shí)長(zhǎng)為10ms,那么其之前的30ms數(shù)據(jù)編碼輸出的是經(jīng)過NLP處理的數(shù)據(jù),可能存在畸變,而且數(shù)據(jù)之間不連貫。我們?nèi)绻扇?0ms的數(shù)據(jù)緩沖機(jī)制,則可以避免這種情況,就可以保證在有DTMF信號(hào)時(shí),始終能夠保證編碼輸出的數(shù)據(jù)是未經(jīng)過NLP處理的理想信號(hào),同時(shí)也可以保證數(shù)據(jù)之間的連續(xù)性。這樣就可以將帶內(nèi)DTMF信號(hào)可靠透?jìng)鞯綄?duì)方,達(dá)到了我們的設(shè)計(jì)要求。
為對(duì)本發(fā)明有進(jìn)一步的了解,下面將結(jié)合附圖對(duì)本發(fā)明所述的方法進(jìn)行詳細(xì)的說明。
本發(fā)明所述的方法的具體實(shí)現(xiàn)方式如圖2所示,包括以下步驟步驟21信號(hào)經(jīng)過EC算法模塊處理;如圖3所示,遠(yuǎn)端Rin及近端Sin信號(hào)輸入到EC算法模塊進(jìn)行處理后,同時(shí)輸出兩組數(shù)據(jù),一組是經(jīng)過AF模塊進(jìn)行回波抵消處理并經(jīng)過NLP模塊進(jìn)行非線性處理的數(shù)據(jù),一組是只通過AF模塊進(jìn)行回波抵消處理而未經(jīng)過NLP模塊處理的數(shù)據(jù);不論是語音信號(hào)還是DTMF信號(hào),經(jīng)過該步驟處理后,都可以實(shí)現(xiàn)有效消除回波的目的;步驟22進(jìn)行DTMF信號(hào)檢測(cè);如圖3所示,將所述未經(jīng)過NLP處理的數(shù)據(jù)送給DTMF算法模塊進(jìn)行信號(hào)檢測(cè)并將檢測(cè)的結(jié)果傳遞給編解碼算法模塊;步驟23判斷是否檢測(cè)到有效號(hào)碼,如果檢測(cè)到,則執(zhí)行步驟25,否則,執(zhí)行步驟24;步驟24若DTMF算法模塊沒有檢測(cè)到有效號(hào)碼,則編解碼模塊取緩沖區(qū)中經(jīng)過NLP處理的數(shù)據(jù)進(jìn)行數(shù)據(jù)編碼;步驟25若DTMF算法模塊檢測(cè)到有效號(hào)碼,則編解碼模塊取緩沖區(qū)中未經(jīng)過NLP處理的數(shù)據(jù)進(jìn)行編碼;如前所述,由于DTMF算法模塊檢測(cè)到有效號(hào)碼本身需要一定時(shí)間,為了保證在有DTMF信號(hào)時(shí),編解碼模塊輸出的數(shù)據(jù)是未經(jīng)過NLP處理的理想信號(hào)以及數(shù)據(jù)之間的連續(xù)性,在本發(fā)明中采取了數(shù)據(jù)緩沖機(jī)制,使經(jīng)過和未經(jīng)過NLP模塊處理的數(shù)據(jù)分別存放在緩沖區(qū)內(nèi)緩存,并輸出給編解碼模塊,如圖3所示。
假設(shè)所有模塊處理一幀數(shù)據(jù)需要10ms,DTMF信號(hào)檢測(cè)的時(shí)長(zhǎng)為40ms,我們?cè)O(shè)定所述緩沖區(qū)的時(shí)長(zhǎng)應(yīng)大于或等于30ms,本實(shí)施例中以30ms為例;此外,在步驟24和步驟25中,所述編解碼模塊根據(jù)數(shù)據(jù)存入緩沖區(qū)中的時(shí)間先后依次從所述緩沖區(qū)中讀出數(shù)據(jù)并進(jìn)行編碼處理,以保證編解碼輸出的數(shù)據(jù)之間的連續(xù)性;步驟26緩沖區(qū)進(jìn)行數(shù)據(jù)更新處理。
即所述編解碼模塊每次編碼完成后,需要對(duì)所述緩沖區(qū)進(jìn)行數(shù)據(jù)更新處理,這樣可以節(jié)省10ms的數(shù)據(jù)緩沖內(nèi)存。
根據(jù)國(guó)標(biāo)要求,DTMF算法模塊在40ms的時(shí)長(zhǎng)內(nèi)一定要完成可靠檢測(cè),本發(fā)明設(shè)置30ms的數(shù)據(jù)緩沖區(qū),加上當(dāng)前處理的10ms數(shù)據(jù),只要在編解碼模塊每次編碼完成后進(jìn)行緩沖區(qū)隊(duì)列數(shù)據(jù)更新,就可以保證在語音情況下,取經(jīng)過NLP處理的數(shù)據(jù)編碼,滿足理想話音質(zhì)量;同時(shí)在有DTMF信號(hào)時(shí),取未經(jīng)過NLP處理的數(shù)據(jù)編碼,不對(duì)信號(hào)帶來損傷,使得DTMF信號(hào)可以可靠透?jìng)鳌?br>
本發(fā)明所述的前置EC情況下透?jìng)鱀TMF信號(hào)的裝置如圖3所示該裝置包括一個(gè)EC算法模塊、一個(gè)DTMF算法模塊和一個(gè)編解碼模塊。該EC算法模塊包括AF模塊和NLP模塊,并且有兩個(gè)輸出端,一個(gè)是經(jīng)過AF模塊處理而未經(jīng)過NLP模塊處理的數(shù)據(jù)輸出端,一個(gè)是經(jīng)過AF模塊處理并且經(jīng)過NLP模塊處理的數(shù)據(jù)輸出端,并且這兩個(gè)輸出端分別與編解碼模塊連接。DTMF算法模塊的輸入端與該EC算法模塊的未經(jīng)過NLP處理的數(shù)據(jù)輸出端連接,其輸出端與編解碼模塊連接。
此外,在該裝置中還設(shè)置了緩沖區(qū),使所述EC算法模塊輸出的兩組數(shù)據(jù)分別存放在該緩沖區(qū)內(nèi)緩存,并輸出給編解碼模塊。
以上所述,僅為本發(fā)明較佳的具體實(shí)施方式
,但本發(fā)明的保護(hù)范圍并不局限于此,任何熟悉本技術(shù)領(lǐng)域的技術(shù)人員在本發(fā)明揭露的技術(shù)范圍內(nèi),可輕易想到的變化或替換,都應(yīng)涵蓋在本發(fā)明的保護(hù)范圍之內(nèi)。因此,本發(fā)明的保護(hù)范圍應(yīng)該以權(quán)利要求的保護(hù)范圍為準(zhǔn)。
權(quán)利要求
1.一種在有前置回波抵消器EC情況下透?jìng)麟p音多頻DTMF信號(hào)的方法,該EC算法模塊包括自適應(yīng)濾波器AF和非線性處理模塊NLP,其特征在于,該方法包括下列步驟A、EC算法模塊輸出兩組數(shù)據(jù),一組是未經(jīng)過NLP處理的數(shù)據(jù),一組是經(jīng)過NLP處理的數(shù)據(jù);B、DTMF算法模塊獲取EC算法模塊輸出的未經(jīng)過NLP處理的數(shù)據(jù);C、DTMF算法模塊根據(jù)接收的數(shù)據(jù)中承載的信息通知編解碼模塊對(duì)其中一組數(shù)據(jù)進(jìn)行編碼處理。
2.根據(jù)權(quán)利要求1所述的方法,其特征在于,所述的步驟C具體包括C1、將所述未經(jīng)過NLP處理的數(shù)據(jù)送給DTMF算法模塊進(jìn)行信號(hào)檢測(cè);C2、所述DTMF算法模塊將檢測(cè)的結(jié)果傳遞給編解碼模塊;C3、編解碼模塊根據(jù)所述檢測(cè)結(jié)果對(duì)其中一組數(shù)據(jù)進(jìn)行編碼處理。
3.根據(jù)權(quán)利要求2所述的方法,其特征在于,所述的步驟C3具體包括若所述DTMF算法模塊沒有檢測(cè)到有效號(hào)碼,則所述編解碼模塊取所述經(jīng)過NLP處理的數(shù)據(jù)進(jìn)行數(shù)據(jù)編碼;若所述DTMF算法模塊檢測(cè)到有效號(hào)碼,則所述編解碼模塊取所述未經(jīng)過NLP處理的數(shù)據(jù)進(jìn)行數(shù)據(jù)編碼。
4.根據(jù)權(quán)利要求1、2或3所述的方法,其特征在于,該方法采取數(shù)據(jù)緩沖機(jī)制,所述兩組數(shù)據(jù)分別存放在緩沖區(qū)內(nèi)緩存,并輸出給所述編解碼模塊。
5.根據(jù)權(quán)利要求4所述的方法,其特征在于,所述緩沖區(qū)的時(shí)長(zhǎng)不小于DTMF算法模塊完成有效檢測(cè)所需時(shí)長(zhǎng)與所述所有模塊處理一幀數(shù)據(jù)所需時(shí)長(zhǎng)之差。
6.根據(jù)權(quán)利要求5所述的方法,其特征在于,所述編解碼模塊根據(jù)數(shù)據(jù)存入緩沖區(qū)中的時(shí)間先后依次從所述緩沖區(qū)中讀出數(shù)據(jù)并進(jìn)行編碼處理。
7.根據(jù)權(quán)利要求6所述的方法,其特征在于,在所述編解碼模塊每次編碼完成后,對(duì)所述緩沖區(qū)進(jìn)行數(shù)據(jù)更新處理。
8.一種前置EC情況下透?jìng)鱀TMF信號(hào)的裝置,該裝置包括EC算法模塊、DTMF算法模塊和編解碼模塊,該EC算法模塊包括AF模塊和NLP模塊,其特征在于,所述EC算法模塊有兩個(gè)輸出端,一個(gè)是未經(jīng)過NLP處理的數(shù)據(jù)輸出端,一個(gè)是經(jīng)過NLP處理的數(shù)據(jù)輸出端;所述兩個(gè)輸出端分別與所述編解碼模塊連接;所述DTMF算法模塊的輸入端與該EC算法模塊的未經(jīng)過NLP處理的數(shù)據(jù)輸出端連接,該DTMF算法模塊的輸出端與所述編解碼模塊連接。
9.根據(jù)權(quán)利要求8所述的裝置,其特征在于,該裝置還包括緩沖區(qū),且所述EC算法模塊輸出的兩組數(shù)據(jù)分別存放在該緩沖區(qū)內(nèi)緩存,并輸出給所述編解碼模塊。
全文摘要
本發(fā)明涉及一種前置回波抵消器情況下透?jìng)麟p音多頻信號(hào)的方法及裝置,該方法對(duì)EC算法模塊進(jìn)行改進(jìn),使其輸出兩組數(shù)據(jù),一組是未經(jīng)過NLP處理的數(shù)據(jù),一組是經(jīng)過NLP處理的數(shù)據(jù);未經(jīng)過NLP處理的數(shù)據(jù)用于信號(hào)音的DTMF檢測(cè),如果沒有檢測(cè)到DTMF號(hào)碼,則當(dāng)成一般的語音信號(hào)處理,取經(jīng)過NLP處理后的數(shù)據(jù)輸出到編解碼模塊進(jìn)行編碼;如果檢測(cè)到DTMF號(hào)碼,則取未經(jīng)過NLP處理的數(shù)據(jù)輸出到編解碼模塊;本發(fā)明還采用了數(shù)據(jù)緩沖機(jī)制。采用上述方法及裝置,針對(duì)語音信號(hào),可以進(jìn)行正常的回波抵消,達(dá)到理想的話音質(zhì)量;針對(duì)DTMF帶內(nèi)信號(hào),既可以消除回波,同時(shí)又不對(duì)信號(hào)帶來損傷,使得完整的DTMF信號(hào)可以通過帶內(nèi)透?jìng)鞯綄?duì)方,達(dá)到對(duì)方設(shè)備可靠收號(hào)的目的。
文檔編號(hào)H04M7/00GK1867011SQ20051007067
公開日2006年11月22日 申請(qǐng)日期2005年5月18日 優(yōu)先權(quán)日2005年5月18日
發(fā)明者李玉龍, 唐繁榮, 陳微 申請(qǐng)人:華為技術(shù)有限公司