專利名稱:音頻信號(hào)編碼/譯碼方法
技術(shù)領(lǐng)域:
本發(fā)明涉及音頻信號(hào)的通信和記錄操作,更具體地,涉及音頻信號(hào)編碼/譯碼方法。
近年來(lái),在例如電視會(huì)議等中所用的寬帶語(yǔ)音的大量語(yǔ)音編碼領(lǐng)域中,以及例如多媒體中所用的高質(zhì)量音頻編碼領(lǐng)域中都取得飛速發(fā)展。在這種編碼方法中,利用頻譜包絡(luò)信息作為輔助信息的自適應(yīng)變換編碼方法已被頻繁使用。在現(xiàn)有技術(shù)中,利用這種自適應(yīng)變換編碼方法的編碼/譯碼方法的一個(gè)例子,是日本專利公開第184098/1991號(hào)中的“自適應(yīng)變換編碼方法和系統(tǒng)”中所公開的方法,或IEEE Journal on Selected Areas in Communications第6卷第2號(hào)中James D.Johnston的“利用感性噪聲標(biāo)準(zhǔn)的音頻信號(hào)的變換編碼”中所公開的方法。
為描述本發(fā)明,首先描述現(xiàn)有技術(shù)中所用的自適應(yīng)變換編碼方法。圖2是編碼發(fā)送器1和譯碼接收器2之間這樣的自適應(yīng)變換編碼/譯碼方法的簡(jiǎn)要處理流程的框圖。
圖2中,參考標(biāo)號(hào)3指用于存儲(chǔ)數(shù)字化輸入的預(yù)定數(shù)目的抽樣值以構(gòu)造一個(gè)編碼塊的輸入緩沖器的處理。標(biāo)號(hào)4指用于由快速傅立葉變換等將輸入音頻信號(hào)變換到提供多個(gè)離散頻帶輸出的頻域的處理。標(biāo)號(hào)13指用于反向變換到時(shí)域的處理,與變換4相應(yīng),標(biāo)號(hào)5指用于利用Max量化器量化變換系數(shù)的處理。標(biāo)號(hào)11指用于反向量化的處理,與量化5相應(yīng)。標(biāo)號(hào)6指用于計(jì)算頻譜包絡(luò)的處理。例如,這可以通過(guò)下述方法實(shí)現(xiàn)對(duì)幾個(gè)離散頻帶的頻域變換系數(shù)的冪進(jìn)行平均而逼近頻譜包絡(luò);或者通過(guò)線性預(yù)分析輸入而演繹出頻譜包絡(luò);等等。標(biāo)號(hào)7指用于對(duì)頻譜包絡(luò)進(jìn)行編碼的處理,而標(biāo)號(hào)12指用于對(duì)頻譜包絡(luò)進(jìn)行譯碼的處理,與編碼7相應(yīng)。標(biāo)號(hào)8指用于根據(jù)速率失真定理或類似定理對(duì)每個(gè)離散頻帶的變換系數(shù)量化的位分配/量化步長(zhǎng)進(jìn)行自適應(yīng)控制的處理。標(biāo)號(hào)9指用于多路復(fù)用量化變換系數(shù)和頻譜包絡(luò)碼以產(chǎn)生一個(gè)傳輸碼的處理,而標(biāo)號(hào)10指用于多路分解傳輸碼以對(duì)量化變換系數(shù)和頻譜包絡(luò)碼進(jìn)行譯碼的處理。標(biāo)號(hào)14指用于以塊為單位存儲(chǔ)輸出信號(hào)以順序輸出它們的輸出緩沖器。
下面參照?qǐng)D2描述編碼/譯碼流程。在編碼操作中,由緩沖器3從輸入昔頻信號(hào)中構(gòu)造一個(gè)編碼塊,并由頻域變換4變換為變換系數(shù),直到它由變換系數(shù)量化5量化。在該變換系數(shù)量化5中,每個(gè)離散頻帶的系數(shù)用位分配和量化步長(zhǎng)量化,該位分配和量化步長(zhǎng)是根據(jù)頻譜包絡(luò)計(jì)算6從輸入信號(hào)中獲得的頻譜包絡(luò)而自適應(yīng)控制的。完成這些操作,以對(duì)每個(gè)離散頻帶的量化失真進(jìn)行審計(jì)性控制。另一方面,由編碼操作7對(duì)全頻帶頻譜包絡(luò)進(jìn)行編碼。然后,由多路復(fù)用操作9從量化變換系數(shù)和頻譜包絡(luò)碼中產(chǎn)生傳輸碼。
在譯碼操作2中,首先由多路分解操作10將量化變換系數(shù)和頻譜包絡(luò)碼分開。然后,由頻譜包絡(luò)譯碼操作12對(duì)頻譜包絡(luò)進(jìn)行譯碼,并且由位分配/量化步長(zhǎng)計(jì)算8根據(jù)已譯碼的頻譜包絡(luò)計(jì)算位分配/量化步長(zhǎng),以便在反向變換系數(shù)量化11中,通過(guò)使用位分配/量化步長(zhǎng)而對(duì)變換系數(shù)進(jìn)行譯碼。該系數(shù)由反向時(shí)域變換13變換為時(shí)域信號(hào),并存儲(chǔ)在輸出緩沖器14中,以便能順序輸出,對(duì)音頻信號(hào)進(jìn)行譯碼。
在上述現(xiàn)有技術(shù)的自適應(yīng)變換編碼方法中,全頻帶的頻譜包絡(luò)是通過(guò)相同的編碼方法進(jìn)行編碼的,并對(duì)每個(gè)全頻帶塊進(jìn)行更新。另一方面,對(duì)于全頻帶內(nèi)的不同的頻帶,音頻信號(hào)的頻譜包絡(luò)的時(shí)間波動(dòng)可能是不同的,并一般具有一種趨勢(shì)在較低頻域中時(shí)間波動(dòng)減小。這樣,時(shí)間波動(dòng)小的頻帶在相鄰的塊之間具有大的相關(guān)性并具有大的冗余。然而,現(xiàn)有技術(shù)的自適應(yīng)變換編碼方法并未有效地利用這種冗余,具有低的編碼效率,在現(xiàn)有技術(shù)的方法中,對(duì)全頻帶用相同的編碼方法對(duì)頻譜包絡(luò)進(jìn)行編碼,在每個(gè)全頻帶塊中對(duì)頻譜包絡(luò)進(jìn)行更新。尤其是在由線性預(yù)分析將要估算頻譜包絡(luò)的情況下,現(xiàn)有技術(shù)的方法不能考慮每頻帶時(shí)間波動(dòng)的差異,因?yàn)閷?duì)于全頻帶,將輸入信號(hào)作為整體進(jìn)行分析,以便對(duì)線性預(yù)測(cè)系數(shù)進(jìn)行計(jì)算/編碼和傳輸。
如上所述,在現(xiàn)有技術(shù)中,沒(méi)有考慮各頻帶之間的頻譜包絡(luò)的時(shí)間波動(dòng)的差異所引起的冗余。因此,現(xiàn)有技術(shù)對(duì)高質(zhì)量的低位速率編碼不足以提供自適應(yīng)變換編碼/譯碼方法。
本發(fā)明的一個(gè)目的是解決上述問(wèn)題,并提供一種音頻信號(hào)編碼/譯碼方法,它能夠有效地利用不同頻帶的不同冗余,并有效地利用頻譜包絡(luò)的冗余成分,而獨(dú)立于音頻信號(hào)的特性。
為解決這些問(wèn)題,本發(fā)明的特征在于對(duì)音頻信號(hào)的頻率分量的粗形狀(例如,頻譜包絡(luò))進(jìn)行頻帶劃分,以便執(zhí)行與每個(gè)頻帶頻譜包絡(luò)中時(shí)間波動(dòng)相適應(yīng)的編碼。
圖1A和1B是顯示本發(fā)明的音頻信號(hào)編碼/譯碼方法的工作的流程圖。
圖2是顯示一種已知的音頻信號(hào)自適應(yīng)變換編碼/譯碼方法的原理的結(jié)構(gòu)圖。
圖3是本發(fā)明的第一實(shí)施方式的編碼操作的結(jié)構(gòu)圖。
圖4是本發(fā)明第一實(shí)施方式的譯碼操作的結(jié)構(gòu)圖。
圖5是本發(fā)明第二實(shí)施方式的編碼方法的流程圖。
圖6是本發(fā)明第二實(shí)施方式的譯碼方法的流程圖。
圖7是本發(fā)明第三實(shí)施方式的編碼方法的流程圖。
圖8是本發(fā)明第三實(shí)施方式的譯碼方法的流程圖。
該方法的處理流程示于圖1A和1B。在圖1A和1B中,字母i指從較低頻域到較高頻域順序賦給各頻帶的索引,字母N指頻譜包絡(luò)的所劃分的頻帶的數(shù)目。換言之,如果頻譜包絡(luò)被分為兩個(gè)頻帶(即,N2),則頻帶i 1將是最低頻域中的頻帶,而頻帶i 2則是最高頻域中的頻帶。
在圖1A和1B中示出了下列要素和步驟步驟203執(zhí)行到頻域的快速傅立葉變換的變換,盡管并不特別限于此;步驟222執(zhí)行到時(shí)域的變換,與步驟203相應(yīng);步驟209和220執(zhí)行根據(jù)速率失真定理等對(duì)位分配/量化步長(zhǎng)的計(jì)算,盡管并不特別限于此;步驟210執(zhí)行Max量化器等的量化,盡管并不特別限于此;以及步驟221執(zhí)行反向量化,與步驟步210相應(yīng)。參照?qǐng)D3描述利用本發(fā)明解決現(xiàn)有技術(shù)問(wèn)題的裝置。
在編碼操作中,首先,步驟201輸入的被抽樣的音頻信號(hào)的M個(gè)抽樣值在輸入緩沖器更新步驟202被存儲(chǔ)以構(gòu)造一個(gè)編碼塊。值M并不是特別限制的。在步驟203將該編碼塊變換到頻域,以計(jì)算變換系數(shù)。
接著,在頻帶索引初始化步驟204(i=0)之后,由步驟205計(jì)算第一頻帶i的頻譜包絡(luò),以計(jì)算頻帶i被分割的頻譜包絡(luò),并在步驟206進(jìn)行編碼,以對(duì)頻帶i被分割的頻譜包絡(luò)進(jìn)行編碼。這里,在頻帶i被分割的頻譜包絡(luò)計(jì)算步驟205中,將頻譜包絡(luò)分割為多個(gè)頻帶,以免相鄰頻帶的變換系數(shù)的平均冪值是該頻譜包絡(luò),并對(duì)輸入信號(hào)進(jìn)行頻帶分割,以進(jìn)行線性預(yù)分析,以便對(duì)每個(gè)被分割的頻帶計(jì)算頻譜包絡(luò),以免該頻譜包絡(luò)由線性預(yù)分析預(yù)測(cè)。另一方面,頻帶i被分割的頻譜包絡(luò)編碼步驟206是一個(gè)編碼步驟,該步驟的方法最適于特定頻帶i頻譜包絡(luò)的時(shí)間波動(dòng)。該步驟206使能夠?qū)Ω鱾€(gè)頻帶利用不同的方法,如,對(duì)于具有小時(shí)間波動(dòng)的頻帶,使用向后自適應(yīng)、內(nèi)塊預(yù)編碼方法或延長(zhǎng)更新周期的方法。執(zhí)行頻帶索引增加步驟207,后隨頻帶處理結(jié)束判定步驟208。
對(duì)N個(gè)頻帶的每一個(gè),執(zhí)行步驟205至208,以便逼近音頻信號(hào)的頻率分量的粗形狀的全頻帶頻譜包絡(luò)。據(jù)此,在位分配/量化步長(zhǎng)計(jì)算步驟209,確定將應(yīng)用到變換系數(shù)量化210的每個(gè)離散頻帶的位分配/量化步長(zhǎng),并在步驟210量化已在步驟203確定的變換系數(shù)210。另外,在多路復(fù)用步驟211,對(duì)變換系數(shù)碼、頻譜包絡(luò)碼和其他碼進(jìn)行多路復(fù)用,以在步驟213輸出傳輸碼。
在譯碼側(cè),傳輸碼輸入步驟214的變換系數(shù)碼、頻譜包絡(luò)碼和其他碼首先在多路分解步驟215進(jìn)行多路分解。在頻帶索引初始化步驟216之后,執(zhí)行頻帶i被分割的頻譜包絡(luò)解調(diào)步驟217,以對(duì)每個(gè)頻帶i的頻譜包絡(luò)進(jìn)行譯碼。對(duì)N個(gè)頻帶,利用頻帶索引增加步驟218和頻帶處理結(jié)束判定步驟219執(zhí)行該譯碼,以構(gòu)造全頻帶的頻譜包絡(luò)。然后,在位分配/量化步長(zhǎng)計(jì)算步驟220確定每個(gè)離散頻帶的的變換系數(shù)的位分配/量化步長(zhǎng),以便在反向變換系數(shù)量化已步驟221對(duì)變換系數(shù)進(jìn)行譯碼。在反向變換步驟222,將該譯碼的變換系數(shù)變換為時(shí)域信號(hào),并在輸出緩沖器更新步驟223通過(guò)更新輸出緩沖器而順序輸出,以對(duì)音頻信號(hào)進(jìn)行譯碼,如輸出224所指。
在本發(fā)明中,如上所述,通過(guò)對(duì)頻譜包絡(luò)進(jìn)行頻帶分割所得的各個(gè)頻帶利用不同編碼的方法,應(yīng)用到自適應(yīng)變換編碼方法中,使得在對(duì)各個(gè)頻帶考慮音頻信號(hào)頻譜包絡(luò)的時(shí)間波動(dòng)的差異時(shí)完成編碼。特別是,可以有效地利用具有小時(shí)間波動(dòng)的任何頻帶的冗余,以利用自適應(yīng)變換編碼方法實(shí)現(xiàn)低位速率的頻譜包絡(luò)編碼,而抑制編碼失真。
本發(fā)明第一個(gè)實(shí)施方式示于圖3和圖4。圖3是編碼側(cè)本實(shí)施方式的結(jié)構(gòu)框圖;而圖4是譯碼側(cè)的結(jié)構(gòu)框圖。本實(shí)施方式針對(duì)于N=2的例子,其中音頻帶被分為較高頻帶和較低頻帶(其中較高頻帶稱為“較高頻域”,而較低頻帶稱為“較低頻域”),對(duì)不同的頻域分別使用不同的音頻編碼/譯碼方法。
參照?qǐng)D3描述編碼操作。在該編碼操作中,首先將一個(gè)抽樣輸入輸入到輸入緩沖器303中。在本實(shí)施方式中,該輸入是一個(gè)音頻信號(hào),其頻帶限制在50至7,000赫茲,抽樣頻率為16K赫茲。緩沖器303存儲(chǔ)緊接前面8個(gè)抽樣值之后的120個(gè)抽樣值,以構(gòu)造一個(gè)編碼塊。簡(jiǎn)言之,該編碼塊具有8個(gè)抽樣值的交迭成分,該輸入與分析窗口W(t)相乘,如下述等式1所示 在等式1中,M編碼塊中交迭抽樣值的數(shù)目,t編碼塊中一個(gè)抽樣值的位置的索引,L編碼塊的一個(gè)抽樣值。在本實(shí)施方式中,等式1中的L為128,而M為8。加窗口后的編碼塊在1 28個(gè)點(diǎn)由DCT305進(jìn)行離散余弦變換,使其被變換為DCT系數(shù)。該系數(shù)由1至5位Max量化器組成的量化306進(jìn)行量化。在該量化306中,每個(gè)離散頻帶的DCT系數(shù)的位分配/量化步長(zhǎng)由位分配/量化步長(zhǎng)計(jì)算323控制。在本實(shí)施方式中,位分配Rj通過(guò)下述等式2計(jì)算Rj=R*+12log2σj212Σj=0Llog2σj2]]>量化步長(zhǎng)Sj由下述等式3計(jì)算sj=1σj]]>順便說(shuō)一下,等式2和3中,j從較低頻域順序分配的變換系數(shù)的頻帶的索引,σj頻帶j的頻譜包絡(luò),R*每次抽樣的平均位數(shù)。在本實(shí)施方式中,值R*設(shè)為1.93。另外,在本實(shí)施方式中,頻譜包絡(luò)具有其在編碼側(cè)301確定的較高頻域(即,4K赫茲至7K赫茲)和在譯碼側(cè)302確定的較低頻域(即,50赫茲至4K赫茲),將7位向量量化應(yīng)用到較高頻域,而將向后自適應(yīng)方法應(yīng)用到較低頻域。
在較高頻域頻譜計(jì)算/編碼301中,首先從輸入中由QMF(即,正交鏡面濾波器,由公知的24—抽頭QMF構(gòu)成)308計(jì)算較高頻域信號(hào)(即,4K赫茲至7K赫茲),并且由分析緩沖器更新309更新較高頻域頻譜包絡(luò)分析緩沖器。該較高頻域頻譜包絡(luò)分析緩沖器由100個(gè)抽樣值組成。對(duì)于該分析緩沖器,在LPC分析310中執(zhí)行第8級(jí)線性預(yù)分析,以計(jì)算線性預(yù)測(cè)系數(shù)(LPC)。該系數(shù)由LPC—>LSP變換311變換為線性頻譜對(duì)(LSP),并在VQ312中進(jìn)行7位向量量化。另一方面,該碼在VQ—1 313中進(jìn)行反向量化,并由LSP—>LPC變換314變換為量化的LPC系數(shù),然后它由頻譜包絡(luò)變換315變換為較高頻域頻譜包絡(luò)。
另一方面,在較低頻域頻譜計(jì)算302中,使用向后自適應(yīng)方法,其中輸入的頻譜包絡(luò)由從在先編碼/譯碼信號(hào)中計(jì)算的值逼近。為此,由反向量化307從變換系數(shù)碼中確定變換系數(shù),并在1DCT316中在128個(gè)點(diǎn)處受到反向余弦變換,以便將譯碼后的信號(hào)在1—塊延遲317中鎖存一塊的時(shí)間周期。該譯碼后的信號(hào)的頻帶由24—抽頭QMF318分割為確定的較低頻域信號(hào),并且由100個(gè)抽樣值組成的較低頻域頻譜分析緩沖器由分析緩沖器更新步驟319更新。對(duì)于這個(gè)分析緩沖器,由LPC分析320執(zhí)行第12級(jí)的LPC分析,且由頻譜包絡(luò)變換321計(jì)算較低頻域頻譜包絡(luò)。
在301和302確定的較低和較高頻域頻譜包絡(luò)在全頻帶頻譜合成322中進(jìn)行合成,并用于前述位分配/量化步長(zhǎng)計(jì)算323的操作中。另外,由多路復(fù)用步驟324從變換系數(shù)碼和較高頻域LSP碼構(gòu)成傳輸碼。
接著,描述譯碼操作。在該譯碼操作中,首先由多路分解步驟403將傳輸碼分離為變換系數(shù)碼和7位的較高頻域LSP碼。在一個(gè)單元401中,對(duì)較高頻域頻譜包絡(luò)進(jìn)行譯碼,如圖所示。在VQ—1步驟中,對(duì)較高頻域LSP碼進(jìn)行反向量化,并由LSP—>LPC變換411變換為量化的LPC系數(shù),然后由頻譜包絡(luò)確定步驟315譯碼為較高頻域頻譜包絡(luò)。另一方面,使用向后自適應(yīng)方法,在譯碼單元402中計(jì)算較低頻域頻譜,如圖所示。在該譯碼側(cè)的向后自適應(yīng)方法與在編碼側(cè)的類似。由1—塊延遲413所延遲的譯碼后的信號(hào)的頻帶由24—抽頭QMF414分割。利用這個(gè)較低頻域信號(hào),較低頻域頻譜分析緩沖器由分析緩沖器更新步驟415更新,并且在LPC分析416中執(zhí)行第12級(jí)的LPC分析,以便在頻譜包絡(luò)變換步驟41 7中得到較低頻域頻譜包絡(luò)。另外,如在編碼側(cè)時(shí)那樣,執(zhí)行全頻帶頻譜合成404,以在位分配/量化步長(zhǎng)計(jì)算405中由與編碼側(cè)323中的類似操作得到變換系數(shù)量化條件。根據(jù)該條件,變換系數(shù)在128個(gè)點(diǎn)處受到反向量化406和IDCT操作407。該系數(shù)在步驟408中乘以下述等式4的合成窗口w,(t),并增加交迭的16個(gè)抽樣值,以確定輸出信號(hào)。這些輸出信號(hào)存儲(chǔ)在輸出緩沖器409中,并順序地輸出以產(chǎn)生一個(gè)譯碼輸出。
w(t)=10≤t≤L-1本實(shí)施方式利用了較低頻域頻譜包絡(luò)塊之間的高度相關(guān)性,并且對(duì)較低頻域頻譜包絡(luò)使用向后自適應(yīng)方法,從而,僅有較高頻域頻譜包絡(luò)被編碼/傳輸。結(jié)果是,即使需要7位/塊的位對(duì)頻譜包絡(luò)進(jìn)行編碼,也達(dá)到了極高的音質(zhì)。根據(jù)本實(shí)施方式,對(duì)于相同傳輸位速率而言,總體上與在全頻帶上對(duì)LSP進(jìn)行量化/傳輸?shù)那闆r相比,達(dá)到更高的音質(zhì)。
另外,通過(guò)將本實(shí)施方式的音頻信號(hào)編碼/譯碼方法應(yīng)用到寬帶電話系統(tǒng)中,傳輸位速率為32K位/秒時(shí)能達(dá)到極高的音質(zhì)。
下面,本發(fā)明的第二實(shí)施方式的流程圖示于圖5和圖6。圖5是本實(shí)施方式的編碼流程圖,圖6是譯碼流程圖。順更說(shuō)一下,在圖5和圖6中,i代表從較低頻域側(cè)順序分配的頻譜包絡(luò)編碼被分割頻帶的索引,而N代表頻譜包絡(luò)編碼的被分割頻帶的數(shù)目。在本實(shí)施方式中,頻帶也分為兩個(gè)較低頻域和較高頻域。順便說(shuō)一下,本實(shí)施方式用流程圖說(shuō)明,從流程圖可以容易地構(gòu)造框圖。
首先,參照?qǐng)D5描述編碼操作。在編碼操作中,在輸入501中輸入的抽樣音頻信號(hào)在緩沖器更新步驟502中被構(gòu)造到一個(gè)編碼塊中。在本實(shí)施方式中,抽樣頻率為16K赫茲;當(dāng)然,盡管本發(fā)明不限于此。另外,在本實(shí)施方式中,編碼塊由256個(gè)抽樣值組成,其中16個(gè)抽樣值是交迭成分。在分析窗口503中,該編碼塊乘以分析窗口,如等式1所示,其中L為256,M為16,并由DCT504在256個(gè)點(diǎn)處進(jìn)行離散余弦變換。另一方面,為了頻譜包絡(luò)計(jì)算/編碼目的,由N—頻帶分離濾波器505將編碼塊分割為N個(gè)頻帶的信號(hào)。在本實(shí)施方式中,N設(shè)為N=2,并使用公知的24個(gè)抽頭的QMF作為分離濾波器。開始時(shí),執(zhí)行頻帶索引i初始化步驟506(注意,圖6中相應(yīng)的頻帶索引i初始化步驟603)。另外,對(duì)于頻帶i的信號(hào),在LPC分析507中計(jì)算第m(i)級(jí)的LPC系數(shù),并在LPC—>LSP步驟508變換為L(zhǎng)SP系數(shù)。再有,在LSP差計(jì)算509中,根據(jù)等式5計(jì)算與緊接前面塊的量化LSP系數(shù)的差。然而,在等式5中,p代表LSP系數(shù)的級(jí),n代表被編碼的塊,n-1代表指示緊接前面塊的索引,lsp代表差值。Δlspp(n)=lspp(n)-lspp(n-1)lspp(n-1)]]>在頻帶i差判定步驟510之后,該差值或者在差分向量量化511中以kd(i)位進(jìn)行向量量化,此時(shí)其絕對(duì)值的平均值小于th(i),或者在LSP向量量化512中以k(i)位進(jìn)行向量量化。如此獲得的量化LSP系數(shù)在LSP頻譜包絡(luò)變換步驟513中被變換為頻譜包絡(luò),然后進(jìn)行頻帶索引i增加步驟514,以及頻帶分割結(jié)束處理步驟515。
對(duì)N個(gè)頻帶執(zhí)行前述步驟507至515的操作,以逼近全頻帶的頻譜包絡(luò)。據(jù)此,將要被施加到DCT系數(shù)量化517的每個(gè)離散頻帶的位分配/量化步長(zhǎng)由位分配/量化步長(zhǎng)計(jì)算516確定,以量化預(yù)先確定的DCT系數(shù)。在本實(shí)施方式中,將計(jì)算等式(通過(guò)將等式2和3中的L的值設(shè)為256,R*的值設(shè)為1.47而獲得的)應(yīng)用到位分配/量化步長(zhǎng)計(jì)算516,并使用公知的(1至5位的)Max量化器以量化DCT系數(shù)。另外,在多路復(fù)用步驟518中,對(duì)DCT系數(shù)碼、LSP系數(shù)碼和用于對(duì)頻帶i的LSP進(jìn)行編碼的差值/非差值開關(guān)標(biāo)志(0/1)進(jìn)行多路復(fù)用,并作為具有總位速率為360位/塊的傳輸碼輸出519。
在譯碼側(cè),首先,在步驟601中接收DCT系數(shù)碼、LSP系數(shù)碼和用于對(duì)頻帶i的LSP進(jìn)行編碼的差值/非差值開關(guān)標(biāo)志(0/1),并在多路分解步驟602中被分離。另外,對(duì)于每個(gè)頻帶i,根據(jù)開關(guān)標(biāo)志步驟604,由反向差分向量量化605或反向LSP向量量化606對(duì)LSP系數(shù)進(jìn)行譯碼,并在LSP頻譜包絡(luò)變換步驟607中,對(duì)頻帶i的頻譜包絡(luò)進(jìn)行譯碼。然后執(zhí)行頻帶索引i增加步驟608和頻帶分割處理及判定步驟609。
對(duì)于N個(gè)頻帶執(zhí)行這些操作,以對(duì)全頻帶的頻譜包絡(luò)進(jìn)行譯碼,并且由位分配/量化步長(zhǎng)計(jì)算610確定每個(gè)離散頻帶的DCT系數(shù)的位分配/量化步長(zhǎng),以便由反向DCT系數(shù)量化611對(duì)DCT系數(shù)進(jìn)行譯碼。由IDCT612在256個(gè)點(diǎn)對(duì)其進(jìn)行反向余弦變換,并在合成窗口613中乘以等式4的窗口。在輸出緩沖器更新步驟614中加入交迭的成分,以對(duì)音頻輸出信號(hào)進(jìn)行譯碼615。
在本實(shí)施方式中,值m(i)、th(i)、kd(i)和k(i)的值由表1給定。
表1
根據(jù)本實(shí)施方式,較高或較低頻域的頻譜包絡(luò)可以被跟隨,即使其波動(dòng)大,并且如果時(shí)間波動(dòng)低,則可減少冗余位。在自適應(yīng)變換編碼方法中,為進(jìn)行DCT系數(shù)量化,除了用于頻譜包絡(luò)編碼的位之外的所有位都用到了,使得,在冗余位減少的塊中能夠提高音質(zhì)。根據(jù)本發(fā)明的方法,由于這種效果,對(duì)于相同的傳輸位速率而言,在輸入頻譜波動(dòng)較小的部分中,與現(xiàn)有技術(shù)的方法相比,能夠提高音質(zhì)。
再者,通過(guò)將本實(shí)施方式的方法應(yīng)用到24K位/秒的語(yǔ)音傳輸系統(tǒng),對(duì)于相同的位速率,能達(dá)到比現(xiàn)有技術(shù)系統(tǒng)更好的音質(zhì)。
本發(fā)明第三個(gè)實(shí)施方式的流程圖示于圖7和圖8。圖7是本實(shí)施方式的編碼流程圖;圖8是譯碼流程圖。順便說(shuō)一下,在圖7和圖8中,n代表在編碼開始時(shí)從編碼塊0順序分配的編碼塊的索引,i代表從較低頻域順序分配的頻譜包絡(luò)編碼被分割頻帶的索引。本實(shí)施方式也將其頻帶分為兩個(gè)較低頻域和較高頻域。順便說(shuō),本實(shí)施方式用流程圖說(shuō)明。從中可以容易地得到框圖。
首先參照?qǐng)D7描述編碼操作。在編碼操作中,在輸入701處輸入的抽樣音頻信號(hào)在輸入緩沖器更新步驟702處被構(gòu)造到一個(gè)編碼塊中。本實(shí)施方式中,抽樣頻率為32K赫茲。另外,在本實(shí)施方式中,編碼塊由256個(gè)抽樣值組成,其中16個(gè)抽樣值是一個(gè)交迭成分。該編碼塊由分析窗口703乘以一個(gè)分析窗口(如等式1所示,其中L為256,M為16),并由DCT704在256個(gè)點(diǎn)進(jìn)行離散余弦變換。另外,為了頻譜包絡(luò)計(jì)算/編碼目的,將DCT系數(shù)分割為N個(gè)頻帶。在本實(shí)施方式中,進(jìn)行這種分割,如表2中頻帶i的列中所列。表2列出了屬于頻帶i的DCT系數(shù)的頻帶的索引范圍。
表2
另外,至于頻帶i的信號(hào),在頻帶索引i初始化步驟705之后,在頻帶i更新時(shí)序判定705中判定塊n是否處于頻帶i的更新時(shí)序,并切換頻譜計(jì)算/編碼操作和頻譜譯碼操作。這種切換可以根據(jù)頻譜包絡(luò)的時(shí)間波動(dòng)自適應(yīng)地執(zhí)行(但在本實(shí)施方式中是固定的),以便在更新時(shí)序條件下起作用,如表2所列。另外,在頻譜計(jì)算/編碼操作時(shí),由頻帶i頻譜計(jì)算707從較低頻域順序計(jì)算DCT系數(shù)的m(i)號(hào)的平均值,并在頻譜向量量化708中執(zhí)行k(i)位的向量量化。另一方面,在沒(méi)有頻譜更新的情況下,在預(yù)測(cè)頻譜值計(jì)算709處從先前頻譜中計(jì)算預(yù)測(cè)值,以提供塊n的頻譜包絡(luò)。該預(yù)測(cè)值計(jì)算是由如等式6所表示的方法執(zhí)行。順便說(shuō)一下,在等式6中,ajr代表一個(gè)預(yù)測(cè)系數(shù),Q代表預(yù)測(cè)級(jí)。在本實(shí)施方式中,預(yù)測(cè)級(jí)Q設(shè)為2,預(yù)測(cè)系數(shù)ajr舉例為由LBG算法或類似算法根據(jù)幾個(gè)數(shù)據(jù)得出的值。σj(n)=Σr=1Qajrσj(n-r)]]>在頻譜內(nèi)插步驟710中,在對(duì)數(shù)域中將頻譜量化值或預(yù)測(cè)值線性內(nèi)插到頻帶i的頻譜包絡(luò)中。然后,進(jìn)行頻帶索引增加步驟711和頻帶索引結(jié)束判定步驟712。
對(duì)于N個(gè)頻帶執(zhí)行前述步驟706至712的操作,以逼近全頻帶的頻譜包絡(luò)。據(jù)此,由位分配/量化步長(zhǎng)計(jì)算713確定每個(gè)離散頻帶的位分配/量化步長(zhǎng)(如將要應(yīng)用到DCT系數(shù)量化714中的),并且量化在步驟704預(yù)先確定的DCT系數(shù)。在本實(shí)施方式中,將等式2(其中R*為1.25)和等式3應(yīng)用到位分配/量化步長(zhǎng)計(jì)算713,并且DCT系數(shù)量化714由公知的(1至5位的)Max量化器組成。另外,在多路復(fù)用步驟715,對(duì)DCT系數(shù)碼和頻譜碼進(jìn)行多路復(fù)用,以輸出傳輸碼716。
在譯碼側(cè),首先,在多路分解步驟802分離步驟801的DCT系數(shù)碼和頻譜碼。另外,對(duì)每個(gè)頻帶i,根據(jù)頻帶i開關(guān)時(shí)序判定804執(zhí)行反向頻譜向量量化805或頻譜預(yù)測(cè)值計(jì)算806,并且在頻譜內(nèi)插807處在對(duì)數(shù)域中執(zhí)行線性內(nèi)插,以對(duì)頻帶i的頻譜包絡(luò)進(jìn)行譯碼。然后,進(jìn)行頻帶索引增加步驟808和頻帶結(jié)束判定步驟809。
對(duì)N個(gè)頻帶執(zhí)行前述步驟804至809的操作,以構(gòu)造全頻帶的頻譜包絡(luò)。在位分配/量化步長(zhǎng)計(jì)算810處確定每個(gè)離散頻帶的DCT系數(shù)的位分配/量化步長(zhǎng),以在反向DCT系數(shù)量化811中對(duì)DCT系數(shù)進(jìn)行譯碼。在IDCT812中在256個(gè)點(diǎn)處對(duì)其進(jìn)行反向余弦變換,并在合成窗口813中乘以等式4的窗口,并在輸出緩沖器更新步驟814中增加一個(gè)交迭成分,從而對(duì)音頻輸出信號(hào)進(jìn)行譯碼815。
根據(jù)本實(shí)施方式,具有小的頻譜包絡(luò)波動(dòng)的域,其頻譜包絡(luò)只由預(yù)測(cè)方法確定,但含有一個(gè)不傳輸?shù)膲K。因此,能夠降低平均傳輸位速率,而保持良好的音質(zhì)。
另外,通過(guò)對(duì)48K位/秒的音頻信號(hào)記錄系統(tǒng)應(yīng)用本實(shí)施方式,能夠達(dá)到的音質(zhì)與具有64K位/秒傳輸位速率的現(xiàn)有系統(tǒng)的音質(zhì)相同。
順便說(shuō)一下,首先,上述第二和第三實(shí)施方式都舉出在頻譜包絡(luò)的全頻帶被分割為兩個(gè)頻帶(即較低頻域和較高頻域)時(shí)的方法,使得對(duì)較低頻域和較高頻域應(yīng)用不同的編碼/譯碼方法。然而,分割的數(shù)目并不限于兩個(gè),也可以是三個(gè)或更多,使得對(duì)分割的域應(yīng)用不同的編碼/譯方法,或者,使得對(duì)某些分割的頻帶應(yīng)用共同的編碼/譯碼方法,這取決于對(duì)每個(gè)頻帶什么是最適當(dāng)?shù)摹?br>
根據(jù)本發(fā)明,能調(diào)節(jié)在自適應(yīng)變換編碼方法中所用的頻譜包絡(luò),以使用對(duì)每個(gè)頻帶的時(shí)間波動(dòng)適當(dāng)?shù)木幋a/傳輸方法,以提供能有效利用對(duì)于不同頻帶是不同的冗余的音頻信號(hào)編碼/譯碼方法。另外,根據(jù)本發(fā)明,每個(gè)頻帶的頻譜包絡(luò)編碼/譯碼方法可以根據(jù)時(shí)間波動(dòng)而自適應(yīng)地改變,從而實(shí)現(xiàn)自適應(yīng)變換編碼方法,它獨(dú)立于音頻信號(hào)的性質(zhì)有效地利用頻譜包絡(luò)的冗余成分。
權(quán)利要求
1.一種信號(hào)編碼/譯碼方法,它通過(guò)以由預(yù)定數(shù)目的抽樣值組成的塊為單位將所述信號(hào)從時(shí)域變換到頻域內(nèi)的系數(shù)、并通過(guò)根據(jù)所述信號(hào)的頻率分量的粗形狀控制所述系數(shù)的量化位分配和量化步長(zhǎng)實(shí)現(xiàn),其特征在于所述頻率分量的粗形狀被分割為多個(gè)單個(gè)的頻帶,以便根據(jù)頻率分量的粗形狀的時(shí)間波動(dòng)對(duì)各頻帶利用不同的方法對(duì)所述頻率分量進(jìn)行編碼。
2.權(quán)利要求1的方法,其中所述信號(hào)是一個(gè)音頻信號(hào)。
3.權(quán)利要求1或2的方法,其特征在于對(duì)頻率分量粗形狀——其被分割為所述多個(gè)單個(gè)的頻帶——進(jìn)行編碼的方法是根據(jù)每個(gè)所述頻帶的頻率分量的粗形狀的時(shí)間波動(dòng)而改變的。
4.權(quán)利要求1的方法,其特征在于對(duì)頻率分量的粗形狀——其被分割為所述多個(gè)單個(gè)的頻帶——進(jìn)行更新的周期是根據(jù)每個(gè)所述頻帶的頻率分量的粗形狀的波動(dòng)而改變的。
5.權(quán)利要求2的方法,其特征在于對(duì)頻率分量的粗形狀——其被分割為所述多個(gè)單個(gè)的頻帶——進(jìn)行更新的周期是根據(jù)每個(gè)所述頻帶的頻率分量的粗形狀的波動(dòng)而改變的。
6.權(quán)利要求1或2的方法,其特征在于頻率分量的粗形狀——其被分割為所述多個(gè)單個(gè)的頻帶——是通過(guò)對(duì)由所述信號(hào)在時(shí)間域中頻帶分割所得的信號(hào)進(jìn)行線性預(yù)分析而估計(jì)的。
7.一種對(duì)音頻信號(hào)進(jìn)行編碼/譯碼的方法,包括步驟以由預(yù)定數(shù)目的抽樣值組成的塊為單位將時(shí)域內(nèi)的音頻信號(hào)變換到頻域的系數(shù);在所述粗形狀已被編碼后,通過(guò)根據(jù)所述音頻信號(hào)的頻率分量的粗形狀,控制所述系數(shù)的量化位分配和量化步長(zhǎng),而對(duì)所述頻域的離散頻帶的系數(shù)進(jìn)行量化,以獲得一個(gè)量化系數(shù);通過(guò)對(duì)量化系數(shù)和已編碼的粗形狀進(jìn)行多路復(fù)用,從所述量化系數(shù)和所述已編碼的粗形狀產(chǎn)生一個(gè)傳輸碼;通過(guò)從所述傳輸碼中多路分解所述量化系數(shù)和所述已編碼的粗形狀,解調(diào)所述粗形狀;根據(jù)所述粗形狀計(jì)算位分配/量化步長(zhǎng);通過(guò)應(yīng)用所述位分配/量化步長(zhǎng)解調(diào)所述傳輸系數(shù);以及將所述系數(shù)變換為一個(gè)時(shí)域信號(hào),并存儲(chǔ)和順序輸出所述時(shí)域信號(hào);還包括步驟將所述粗形狀分割為多個(gè)頻帶;通過(guò)在每個(gè)所述頻帶中,根據(jù)所述頻率分量的粗形狀的時(shí)間波動(dòng),對(duì)每個(gè)頻帶應(yīng)用不同的方法,而進(jìn)行編碼/譯碼操作;通過(guò)逼近粗形狀的全頻帶,計(jì)算每個(gè)離散頻帶的位分配/量化步長(zhǎng)。
8.一種對(duì)音頻信號(hào)進(jìn)行編碼/譯碼的方法,包括步驟以由預(yù)定數(shù)目的抽樣值組成的塊為單位將時(shí)域內(nèi)的音頻信號(hào)變換到頻域的系數(shù);在所述粗形狀已被編碼后,通過(guò)根據(jù)所述音頻信號(hào)的頻率分量的粗形狀,控制所述系數(shù)的量化位分配和量化步長(zhǎng),而對(duì)所述頻域的離散頻帶的系數(shù)進(jìn)行量化,以獲得一個(gè)量化系數(shù);通過(guò)對(duì)量化系數(shù)和已編碼的粗形狀進(jìn)行多路復(fù)用,從所述量化系數(shù)和所述已編碼的粗形狀產(chǎn)生一個(gè)傳輸碼;通過(guò)從所述傳輸碼中多路分解所述量化系數(shù)和所述已編碼的粗形狀,解調(diào)所述粗形狀;根據(jù)所述粗形狀計(jì)算位分配/量化步長(zhǎng);通過(guò)應(yīng)用所述位分配/量化步長(zhǎng)解調(diào)所述傳輸系數(shù);以及將所述系數(shù)變換為一個(gè)時(shí)域信號(hào),并存儲(chǔ)和順序輸出所述時(shí)域信號(hào);還包括步驟將由輸入音頻信號(hào)組成的已抽樣和已編碼的塊分割為多個(gè)頻帶的信號(hào);將所述音頻信號(hào)頻帶分割為多個(gè)時(shí)域帶,通過(guò)對(duì)每個(gè)所述時(shí)域帶信號(hào)的線性預(yù)分析計(jì)算線性預(yù)測(cè)系數(shù),并將它們變換為線頻譜對(duì);計(jì)算所述線頻譜對(duì)與緊接前塊的線頻譜對(duì)的量化系數(shù)之間的差以確定一個(gè)差值;如果所述差的絕對(duì)值的平均值小于一個(gè)預(yù)定值,則向量量化該差值,并且如果所述差的絕對(duì)值的平均值大于所述預(yù)定值,則向量量化線頻譜對(duì)系數(shù),以確定線頻譜對(duì)的量化系數(shù),并將該線頻譜對(duì)的這個(gè)量化系數(shù)變換為一個(gè)粗形狀;以及通過(guò)逼近粗形狀的全頻帶,計(jì)算每個(gè)離散頻帶的位分配/量化步長(zhǎng)。
9.一種對(duì)音頻信號(hào)進(jìn)行編碼/譯碼的方法,包括步驟以由預(yù)定數(shù)目的抽樣值組成的塊為單位將時(shí)域內(nèi)的音頻信號(hào)變換到頻域的系數(shù);在所述粗形狀已被編碼后,通過(guò)根據(jù)所述音頻信號(hào)的頻率分量的粗形狀,控制所述系數(shù)的量化位分配和量化步長(zhǎng),而對(duì)所述頻域的離散頻帶的系數(shù)進(jìn)行量化,以獲得一個(gè)量化系數(shù);通過(guò)對(duì)量化系數(shù)和已編碼的粗形狀進(jìn)行多路復(fù)用,從所述量化系數(shù)和所述已編碼的粗形狀產(chǎn)生一個(gè)傳輸碼;通過(guò)從所述傳輸碼中多路分解所述量化系數(shù)和所述已編碼的粗形狀,解調(diào)所述粗形狀;根據(jù)所述粗形狀計(jì)算位分配/量化步長(zhǎng);通過(guò)應(yīng)用所述位分配/量化步長(zhǎng)解調(diào)所述傳輸系數(shù);以及將所述系數(shù)變換為一個(gè)時(shí)域信號(hào),并存儲(chǔ)和順序輸出所述時(shí)域信號(hào);還包括步驟將由輸入音頻信號(hào)組成的已抽樣和已編碼的塊分割為多個(gè)頻帶;判定所述已抽樣和已編碼的塊的一個(gè)頻帶是否處于更新時(shí)序的一點(diǎn);如果處于更新時(shí)序的一點(diǎn),則進(jìn)行粗形狀計(jì)算并對(duì)所述頻帶進(jìn)行向量量化,如果所述頻帶不處于更新時(shí)序的一點(diǎn),則從預(yù)測(cè)粗形狀中計(jì)算所述粗形狀的預(yù)測(cè)值;線性內(nèi)插來(lái)自所述向量量化的量化值或所述粗形狀的所述預(yù)測(cè)值;以及通過(guò)逼近粗形狀的全頻帶,計(jì)算每個(gè)離散頻帶的位分配/量化步長(zhǎng)。
10.一種對(duì)音頻信號(hào)進(jìn)行編碼/譯碼的方法,包括步驟以由預(yù)定數(shù)目的抽樣值組成的塊為單位將時(shí)域內(nèi)的音頻信號(hào)變換到頻域的系數(shù);在所述粗形狀已被編碼后,通過(guò)根據(jù)所述音頻信號(hào)的頻率分量的粗形狀,控制所述系數(shù)的量化位分配和量化步長(zhǎng),而對(duì)所述頻域的離散頻帶的系數(shù)進(jìn)行量化,以獲得一個(gè)量化系數(shù);通過(guò)對(duì)量化系數(shù)和已編碼的粗形狀進(jìn)行多路復(fù)用,從所述量化系數(shù)和所述已編碼的粗形狀產(chǎn)生一個(gè)傳輸碼;通過(guò)從所述傳輸碼中多路分解所述量化系數(shù)和所述已編碼的粗形狀,解調(diào)所述粗形狀;根據(jù)所述粗形狀計(jì)算位分配/量化步長(zhǎng);通過(guò)應(yīng)用所述位分配/量化步長(zhǎng)解調(diào)所述傳輸系數(shù);以及將所述系數(shù)變換為一個(gè)時(shí)域信號(hào),并存儲(chǔ)和順序輸出所述時(shí)域信號(hào);還包括步驟向量量化步驟從已抽樣的輸入音頻信號(hào)中計(jì)算/存儲(chǔ)粗形狀的較高頻域信號(hào),通過(guò)對(duì)所述信號(hào)的線性預(yù)分析計(jì)算線性預(yù)測(cè)系數(shù),并將所述系數(shù)變換為線頻譜對(duì);較高頻步驟反向量化由所述向量量化步驟獲得的碼,將所述線頻譜對(duì)反向變換為線性預(yù)測(cè)系數(shù),并將反向變換后的系數(shù)變換為較高頻域的粗形狀;較低頻步驟反向量化以對(duì)由所述系數(shù)的量化所獲得的變換系數(shù)碼進(jìn)行譯碼,通過(guò)頻帶分割已譯碼的信號(hào)鎖存一塊已譯碼的變換系數(shù),以確定粗形狀的較低頻域信號(hào),并線性預(yù)分析所述信號(hào),以計(jì)算較低頻域的粗形狀;以及合成步驟合成由前述步驟確定的較低/較高頻域的粗形狀,以計(jì)算所述系數(shù)的位分配和量化步長(zhǎng)。
11.權(quán)利要求1或2的方法,其中所述信號(hào)的頻率分量的所述粗形狀包括所述信號(hào)的頻率分量的頻譜包絡(luò)。
12.權(quán)利要求7的方法,其中所述音頻信號(hào)的頻率分量的所述粗形狀包括所述音頻信號(hào)的頻率分量的頻譜包絡(luò)。
13.權(quán)利要求8的方法,其中所述音頻信號(hào)的頻率分量的所述粗形狀包括所述音頻信號(hào)的頻率分量的頻譜包絡(luò)。
14.權(quán)利要求9的方法,其中所述音頻信號(hào)的頻率分量的所述粗形狀包括所述音頻信號(hào)的頻率分量的頻譜包絡(luò)。
15.權(quán)利要求10的方法,其中所述音頻信號(hào)的頻率分量的所述粗形狀包括所述音頻信號(hào)的頻率分量的頻譜包絡(luò)。
全文摘要
一種自適應(yīng)變換編碼/譯碼方案,有效地利用了頻譜包絡(luò)的各頻帶之間的不同冗余,以低位速率實(shí)現(xiàn)音頻信號(hào)的編碼。在自適應(yīng)變換編碼方法中,將頻譜包絡(luò)分割為各個(gè)頻帶,以便對(duì)各頻帶的頻譜包絡(luò)應(yīng)用不同的編碼方法。通過(guò)將本發(fā)明應(yīng)用到音頻信號(hào)的自適應(yīng)變換編碼中,可將頻譜包絡(luò)調(diào)整為適應(yīng)每個(gè)頻帶的時(shí)間波動(dòng)的編碼/傳輸方法,以有效地利用各頻帶的不同冗余。
文檔編號(hào)G10L11/00GK1121620SQ9510960
公開日1996年5月1日 申請(qǐng)日期1995年7月27日 優(yōu)先權(quán)日1994年7月28日
發(fā)明者高島卓, 淺川吉章, 關(guān)根英敏 申請(qǐng)人:株式會(huì)社日立制作所