一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法,屬于語(yǔ)音編解碼技術(shù)領(lǐng)域。
【背景技術(shù)】
[0002] 不同的通信網(wǎng)絡(luò)常使用不同的語(yǔ)音編碼標(biāo)準(zhǔn)。為了保證通信網(wǎng)絡(luò)間的互通性,在 通信網(wǎng)絡(luò)之間連接時(shí),常需要在不同編碼器之間進(jìn)行"轉(zhuǎn)碼"。設(shè)通信網(wǎng)1使用A型語(yǔ)音編 解碼器,通信網(wǎng)2使用B型語(yǔ)音編解碼器。傳統(tǒng)的語(yǔ)音轉(zhuǎn)碼方法是以先解碼再編碼(DTE) 的方式進(jìn)行轉(zhuǎn)碼,即用通信網(wǎng)1所使用的A型語(yǔ)音解碼器對(duì)接收到的比特流進(jìn)行解碼,得到 時(shí)間域的語(yǔ)音信號(hào),然后再用通信網(wǎng)2所使用的B型語(yǔ)音編碼器對(duì)該時(shí)間域語(yǔ)音信號(hào)進(jìn)行 編碼,將編碼后的比特流發(fā)送到通信網(wǎng)2。這種轉(zhuǎn)碼方法的計(jì)算復(fù)雜度高,時(shí)延較大,所需的 存儲(chǔ)量也較大,兩次編解碼也使合成語(yǔ)音質(zhì)量不高。
【發(fā)明內(nèi)容】
[0003] 本發(fā)明針對(duì)以上問(wèn)題的提出,而研制一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法。
[0004] 一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法,其特征在于:通信網(wǎng)1發(fā)送的A碼流經(jīng)過(guò)比特 流解析單元,解碼單元,參數(shù)轉(zhuǎn)換單元、編碼單元和比特流封裝單元得到通信網(wǎng)2接收的B 碼流,通信網(wǎng)1、2是使用不同語(yǔ)音編碼標(biāo)準(zhǔn)的通信網(wǎng)絡(luò),例如使用AMR標(biāo)準(zhǔn)的無(wú)線網(wǎng),使用 G. 729AB標(biāo)準(zhǔn)的IP網(wǎng)。
[0005] 本發(fā)明技術(shù)方案帶來(lái)的有益效果如下:
[0006] (1)由于對(duì)線譜對(duì)系數(shù)轉(zhuǎn)碼時(shí),事先使用了支持向量回歸(SVR)算法對(duì)大量語(yǔ)音 數(shù)據(jù)進(jìn)行訓(xùn)練,從而得到發(fā)送端線譜對(duì)系數(shù)與接收端線譜對(duì)系數(shù)的映射模型。在此基礎(chǔ)上, 進(jìn)行輸入線譜對(duì)系數(shù)到輸出線譜對(duì)系數(shù)的映射,使線譜對(duì)系數(shù)的轉(zhuǎn)換更為精確,提高了合 成語(yǔ)音的質(zhì)量。
[0007] (2)將解碼所得的基音延遲整數(shù)部分TO作為編碼端開(kāi)環(huán)搜索結(jié)果,這樣在進(jìn)行閉 環(huán)搜索時(shí),可根據(jù)TO的值來(lái)限制閉環(huán)搜索范圍,從而提高了合成語(yǔ)音質(zhì)量,也使計(jì)算量有 所減小。
[0008] (3)在靜音插入描述幀的轉(zhuǎn)碼過(guò)程中,采用能量參數(shù)直接映射的方法,去掉了靜音 插入描述幀能量的計(jì)算,使得算法復(fù)雜度降低,存儲(chǔ)量相應(yīng)減少。
[0009] (4)從輸入的比特流中提取幀類(lèi)型信息,這樣就可在轉(zhuǎn)碼過(guò)程中不進(jìn)行幀類(lèi)型判 斷,而直接在比特流輸出時(shí)將幀類(lèi)型轉(zhuǎn)換為與接收到的幀類(lèi)型相同,有效地提高了接收端 的合成語(yǔ)音質(zhì)量。
【附圖說(shuō)明】
[0010] 圖1是本發(fā)明的流程圖。
[0011] 圖2是本發(fā)明的語(yǔ)音幀轉(zhuǎn)碼方法流程圖。
[0012] 圖3是本發(fā)明的靜音插入描述幀參數(shù)轉(zhuǎn)碼方法流程圖。
[0013] 圖4AMR到G. 729AB轉(zhuǎn)碼的DTE方法與本發(fā)明轉(zhuǎn)碼方法的PESQ比較。
[0014] 圖5AMR到G. 729AB轉(zhuǎn)碼的DTE方法與本發(fā)明轉(zhuǎn)碼方法的WMOPS比較。
【具體實(shí)施方式】
[0015] 下面結(jié)合附圖對(duì)本發(fā)明做進(jìn)一步說(shuō)明:
[0016] 如圖1所示:通信網(wǎng)1發(fā)送的A碼流經(jīng)過(guò)比特流解析單元,解碼單元,參數(shù)轉(zhuǎn)換單 元、編碼單元和比特流封裝單元得到通信網(wǎng)2接收的B碼流,所述通信網(wǎng)1、2是使用不同語(yǔ) 音編碼標(biāo)準(zhǔn)的通信網(wǎng)絡(luò)。
[0017] 這里以AMR到G.729AB的參數(shù)轉(zhuǎn)碼過(guò)程為例,闡述本發(fā)明的具體實(shí)現(xiàn)過(guò)程,即上述 A編碼標(biāo)準(zhǔn)為AMR,B編碼標(biāo)準(zhǔn)為G. 729AB,通信網(wǎng)1為無(wú)線通信網(wǎng),通信網(wǎng)2為IP網(wǎng)。AMR 幀長(zhǎng)為2〇1118,6.72948幀長(zhǎng)為1〇1118,兩者子幀長(zhǎng)度都為51118,41?-幀對(duì)應(yīng)6.72948兩幀。轉(zhuǎn) 碼具體方案如下:
[0018] 比特流解析單元用于接收無(wú)線通信網(wǎng)發(fā)送的AMR碼流,具體步驟如下:
[0019] (1)根據(jù)AMR的幀結(jié)構(gòu),從接收到的AMR碼流中依次提取幀類(lèi)型(SPEECH_G00D、 SPEECH_BAD、SID_FIRST、SID_UPDATE、SID_BAD、NO_DATA)、模式信息(MR_4. 75kbps、 MR_5. 15kbps、MR_5. 9kbps、MR_6. 7kbps、MR_7. 4kbps、MR_10. 2kbps、MR_12. 2kbps)和參數(shù) 比特。
[0020] (2)根據(jù)AMR的幀結(jié)構(gòu),將參數(shù)比特轉(zhuǎn)化為量化編碼后的參數(shù)值,即語(yǔ)音幀的線譜 對(duì)系數(shù)、基音延遲、固定碼本非零脈沖位置和符號(hào)及增益,或靜音插入描述幀的線譜對(duì)系數(shù) 和語(yǔ)音能量。
[0021] (3)根據(jù)幀類(lèi)型信息判斷當(dāng)前幀為語(yǔ)音幀(SPEECH_G00D、SPEECH_BAD)、靜音插入 描述幀(SID_UPDATE、SID_BAD)或非傳輸幀(SID_FIRST、NO_DATA)
[0022] 解碼單元用于AMR解碼器從參數(shù)比特中解碼,得到語(yǔ)音參數(shù)值及合成語(yǔ)音,具體 步驟如下:
[0023] (1)若當(dāng)前幀為語(yǔ)音幀:
[0024] 用AMR解碼器對(duì)量化編碼后的參數(shù)值解碼得語(yǔ)音參數(shù),包括線譜對(duì)系數(shù)、基音延 遲、固定碼本非零脈沖位置和符號(hào)、自適應(yīng)碼本增益和固定碼本增益;用AMR解碼器由以上 語(yǔ)音參數(shù)進(jìn)行語(yǔ)音重建,得到重構(gòu)語(yǔ)音s'(η)。
[0025] (2)若當(dāng)前幀為靜音插入描述幀:
[0026] 用AMR解碼器對(duì)量化編碼后的參數(shù)值解碼得靜音插入描述幀的線譜對(duì)系數(shù)和語(yǔ) 音能量。
[0027] 參數(shù)轉(zhuǎn)換單元用于對(duì)AMR解碼所得的語(yǔ)音參數(shù)進(jìn)行轉(zhuǎn)碼,得到G. 729ΑΒ量化編碼 所需的語(yǔ)音參數(shù),具體步驟如下:
[0028] (1)若接收到的AMR幀類(lèi)型為語(yǔ)音幀(SPEECH_G00D或SPEECH_BAD),則轉(zhuǎn)碼流程 如圖2所示:
[0029] (a)線性預(yù)測(cè)分析:
[0030] 線譜對(duì)系數(shù)的轉(zhuǎn)碼包括離線的映射模型參數(shù)獲取和在線的參數(shù)映射。
[0031] 映射模型參數(shù)獲取的過(guò)程為,首先由AMR和G.729AB編碼器對(duì)大量(10個(gè)小時(shí) 以上)、各種類(lèi)型(如成年男聲、成年女聲、男童聲、女童聲等)、各種語(yǔ)言(如漢語(yǔ)、英語(yǔ)、 法語(yǔ)等)的語(yǔ)音數(shù)據(jù)分別進(jìn)行編碼,分別得到K組和2K組量化的線譜對(duì)系數(shù):LSPAMK(k,i) 和LSPe.729AB(2k,i),i=l,···,!(,其中η為線譜對(duì)系數(shù)矢量的維數(shù)。再用支持 向量回歸算法計(jì)算LSP ame和LSP G. 72 9AB 之間的映射模型:LSP G.729AB-Ι(?) - LSPg. 729AB-2 ⑴= WiTLSPMK⑴+h的參數(shù)Wi、bi,其中,LSP e. 729ABj⑴、LSPe.729AB 2⑴分別表示AMR當(dāng)前幀對(duì)應(yīng)的 G. 729AB的兩幀的線譜對(duì)系數(shù),i=l,…,η。
[0032] 轉(zhuǎn)碼時(shí),就可由AMR線譜對(duì)系數(shù)LSPamk⑴使用η個(gè)映射模型:
[0033] LSPg.729AB-Ji) = LSPg.729ΑΒ-2⑴=Wi1LSP細(xì)⑴+ID i, i=l,…,η,分別計(jì)算出 LSPg. 729ΑΒ (i), i=l,…,η。
[0034] 用支持向量回歸算法計(jì)算LSPamk和LSPe. 729ΑΒ之間的映射模型參數(shù)Wi、h具體過(guò)程 為:
[0035] 定義第k幀(G. 729AB第2k幀)語(yǔ)音的線譜對(duì)系數(shù)LsPah^PLSPu29ab分別為訓(xùn)練數(shù) 據(jù) X 和 y,即記 x(k, i)=LSPAME(k, i), y (k, i)=LSPe.729AB(2k, i),用 η 個(gè)回歸函數(shù) A(X)=WiWbi 擬合數(shù)據(jù){叉(1^,;〇,7〇^;〇},1^=1,"*,1(,1=1,···,]!。
[0036] 定義η個(gè)映射函數(shù)
【主權(quán)項(xiàng)】
1. 一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法,其特征在于:通信網(wǎng)1發(fā)送的A碼流經(jīng)過(guò)比特流 解析單元,解碼單元,參數(shù)轉(zhuǎn)換單元、編碼單元和比特流封裝單元得到通信網(wǎng)2接收的B碼 流,所述通信網(wǎng)1、2是使用不同語(yǔ)音編碼標(biāo)準(zhǔn)的通信網(wǎng)絡(luò)。
2. 根據(jù)權(quán)利要求1所述的一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法,其特征在于:比特流解析 單元用于接收通信網(wǎng)1發(fā)送的A碼流,具體步驟如下: (1) 根據(jù)通信網(wǎng)1的A編碼標(biāo)準(zhǔn)的幀結(jié)構(gòu),從輸入的A碼流的相應(yīng)比特位提取模式信 息、幀類(lèi)型信息和參數(shù)比特。 (2) 根據(jù)通信網(wǎng)1的A編碼標(biāo)準(zhǔn)的幀結(jié)構(gòu),將參數(shù)比特轉(zhuǎn)化為語(yǔ)音參數(shù)量化編碼后的參 數(shù)值,語(yǔ)音幀的參數(shù)包括線譜對(duì)系數(shù)、基音延遲、固定碼本非零脈沖位置和符號(hào)及增益;靜 音插入描述幀的參數(shù)為線譜對(duì)系數(shù)和語(yǔ)音能量。 (3) 從A碼流中提取幀類(lèi)型信息,判斷接收到的幀類(lèi)型為語(yǔ)音幀、非傳輸幀或靜音插入 描述中貞。
3. 根據(jù)權(quán)利要求1所述的一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法,其特征在于:解碼單元用 于A解碼器從參數(shù)比特中解碼,得到語(yǔ)音參數(shù)值及合成語(yǔ)音,具體步驟如下: (1) 如果接收到的幀類(lèi)型為靜音插入描述幀,則根據(jù)接收到的參數(shù)索引值解碼,得到語(yǔ) 音參數(shù)值,參數(shù)為線譜對(duì)系數(shù)和能量ener。 (2) 如果接收到的幀類(lèi)型為語(yǔ)音幀,則: (a) 根據(jù)接收到的參數(shù)索引值,解碼得到語(yǔ)音參數(shù)值,參數(shù)包括線譜對(duì)系數(shù)、基音延遲 的整數(shù)部分TO和分?jǐn)?shù)部分TO_frac、固定碼本非零脈沖位置和符號(hào)、量化的自適應(yīng)碼本增 益g' p和量化的固定碼本增益g'。, (b) 根據(jù)上述語(yǔ)音參數(shù),用通信網(wǎng)1的A編碼標(biāo)準(zhǔn)進(jìn)行語(yǔ)音重建,得到重構(gòu)語(yǔ)音s'(n), (c) 得到重構(gòu)語(yǔ)音s'(η)后,不進(jìn)行A解碼器中的后置處理。
4. 根據(jù)權(quán)利要求1所述的一種語(yǔ)音編碼器碼流的轉(zhuǎn)碼方法,其特征在于:參數(shù)轉(zhuǎn)換單 元用于對(duì)解碼所得的語(yǔ)音參數(shù)進(jìn)行轉(zhuǎn)碼,得到通信網(wǎng)2的B編碼標(biāo)準(zhǔn)量化編碼所需的語(yǔ)音 參數(shù),具體步驟如下: (1)若接收到的為語(yǔ)音幀,則轉(zhuǎn)碼步驟為: (a)線性預(yù)測(cè)分析: 線譜對(duì)系數(shù)的轉(zhuǎn)碼包括離線的映射模型參數(shù)獲取和在線的參數(shù)映射, 映射模型參數(shù)獲取的過(guò)程為,首先由A、B編碼器對(duì)10小時(shí)以上的語(yǔ)音數(shù)據(jù)、各種類(lèi) 型、各種語(yǔ)言的語(yǔ)音數(shù)據(jù)分別進(jìn)行編碼,得到K組量化的線譜對(duì)系數(shù),所述各種類(lèi)型包括成 年男聲、成年女聲、男童聲、女童聲;各種語(yǔ)言包括漢語(yǔ)、英語(yǔ)、法語(yǔ)、西班牙語(yǔ)、阿拉伯語(yǔ): LSPA(k,i)和LSPB(k,i),k=l,"·,Κ,?=1,"·,η,其中η為線譜對(duì)系數(shù)矢量的維數(shù);再用支 持向量回歸算法計(jì)算LSPjP LSPb之間的映射模型:LSPB(i) = WiTLSPA (i)+bi的參數(shù)Wi、bi, i=l,…,η ;轉(zhuǎn)碼時(shí),就可由A編碼器線譜對(duì)系數(shù)LSPa⑴使用η個(gè)映射模型:LSP