專利名稱:編碼裝置、解碼裝置以及其方法
技術(shù)領(lǐng)域:
本發(fā)明涉及將信號編碼及傳輸,并接收及解碼的通信系統(tǒng)所使用的編碼裝置/解碼裝置以及編碼方法/解碼方法。
背景技術(shù):
在以移動通信系統(tǒng)或因特網(wǎng)通信為代表的分組通信系統(tǒng)等中傳輸語音/音頻信號時(shí),為了提高語音/音頻信號的傳輸效率,經(jīng)常使用壓縮/編碼技術(shù)。而且,近年來,在開發(fā)即使在傳輸中發(fā)生傳輸差錯(cuò)時(shí),也能夠從編碼信息的一部分獲得質(zhì)量良好的解碼信號的可擴(kuò)展編碼/解碼方式。
作為上述的壓縮/編碼技術(shù)有下述技術(shù),即,利用語音信號及/或音頻信號(以下,記為“語音/音頻信號”)所具有的時(shí)間上的相關(guān)性來提高壓縮效率的、時(shí)間軸上的預(yù)測編碼技術(shù)。例如,在專利文獻(xiàn)1中,基于先前幀的信號預(yù)測當(dāng)前幀的信號,并根據(jù)其預(yù)測誤差來切換預(yù)測編碼方法。此外,在非專利文獻(xiàn)1中列舉了下述技術(shù),根據(jù)LSF(Line Spectral Frequency線譜頻率)等語音參數(shù)的時(shí)間軸上的變化程度及幀差錯(cuò)的發(fā)生狀態(tài),切換預(yù)測編碼方法。
專利文獻(xiàn)1特開平8-211900號公報(bào) 非專利文獻(xiàn)1Thomas Eriksson,Jan Linden,and Jan Skoglund,"ExploitingInter-frame Correlation In Spectral Quantization","Acoustics,Speech,and SignalProcessing",1996.ICASSP-96.Conference Proceedings,7-10May 1996 Page(s)765-768vol.2
發(fā)明內(nèi)容
本發(fā)明要解決的問題 但是,在上述任一技術(shù)中,都是以各個(gè)幀為單位進(jìn)行基于時(shí)域的參數(shù)的預(yù)測編碼,并沒有提及基于頻域的參數(shù)這樣的非時(shí)域的參數(shù)的預(yù)測編碼。若將上述的基于時(shí)域的參數(shù)的預(yù)測編碼的方法簡單地適用于頻域參數(shù)的編碼,雖然在先前幀與當(dāng)前幀中量化對象頻帶一致時(shí)沒有問題,但是在先前幀與當(dāng)前幀中量化對象頻帶不同時(shí),編碼誤差及解碼信號的音質(zhì)劣化顯著增加,有可能無法對語音/音頻信號進(jìn)行解碼。
本發(fā)明的目的在于,提供在各個(gè)幀中將不同頻帶的頻率分量作為量化對象時(shí),能夠降低語音/音頻信號的編碼信息量,而且降低語音/音頻信號的編碼誤差及解碼信號的音質(zhì)劣化的編碼裝置等。
解決問題的方案 本發(fā)明的編碼裝置采用的結(jié)構(gòu)包括變換單元,將輸入信號變換到頻域,獲得頻域參數(shù);選擇單元,從分割了所述頻域獲得的多個(gè)子帶中選擇量化對象頻帶,生成表示了所述量化對象頻帶的頻帶信息;形狀量化單元,對所述量化對象頻帶中的所述頻域參數(shù)的形狀進(jìn)行量化而獲得形狀編碼信息;以及增益量化單元,對所述量化對象頻帶中的頻域參數(shù)的增益進(jìn)行編碼而獲得增益編碼信息。
本發(fā)明的解碼裝置采用的結(jié)構(gòu)包括接收單元,接收表示了從分割了輸入信號的頻域獲得的多個(gè)子帶中所選擇的量化對象頻帶的信息;形狀反量化單元,對所述量化對象頻帶中的頻域參數(shù)的形狀被量化后獲得的形狀編碼信息進(jìn)行解碼而生成解碼形狀;增益反量化單元,對所述量化對象頻帶中的頻域參數(shù)的增益被量化后獲得的增益編碼信息進(jìn)行解碼而生成解碼增益,使用所述解碼形狀和所述解碼增益對頻域參數(shù)進(jìn)行解碼而生成解碼頻域參數(shù);以及時(shí)域變換單元,將所述解碼頻域參數(shù)變換到時(shí)域而獲得時(shí)域解碼信號。
本發(fā)明的編碼方法包括以下步驟將輸入信號變換到頻域,獲得頻域參數(shù);從分割了所述頻域獲得的多個(gè)子帶中選擇量化對象頻帶,生成表示了所述量化對象頻帶的頻帶信息;以及對所述量化對象頻帶中的所述頻域參數(shù)的形狀進(jìn)行量化,并對所述量化對象頻帶中的頻域參數(shù)的增益進(jìn)行編碼而獲得增益編碼信息。
本發(fā)明的解碼方法包括以下步驟接收表示了從分割了輸入信號的頻域獲得的多個(gè)子帶中所選擇的量化對象頻帶的信息;對所述量化對象頻帶中的頻域參數(shù)的形狀被量化后獲得的形狀編碼信息進(jìn)行解碼而生成解碼形狀;對所述量化對象頻帶中的頻域參數(shù)的增益被量化后獲得的增益編碼信息進(jìn)行解碼而生成解碼增益,使用所述解碼形狀和所述解碼增益對頻域參數(shù)進(jìn)行解碼而生成解碼頻域參數(shù);以及將所述解碼頻域參數(shù)變換到時(shí)域而獲得時(shí)域解碼信號。
發(fā)明效果 根據(jù)本發(fā)明,能夠降低語音/音頻信號等的編碼信息量,并且防止解碼信號或解碼語音等的急劇的質(zhì)量劣化,并降低語音/音頻信號等的編碼誤差及解碼信號的質(zhì)量劣化。
圖1是表示本發(fā)明實(shí)施方式1的語音編碼裝置的主要結(jié)構(gòu)的方框圖。
圖2是例示本發(fā)明實(shí)施方式1的頻帶選擇單元中獲得的域的結(jié)構(gòu)的圖。
圖3是表示本發(fā)明實(shí)施方式1的語音解碼裝置的主要結(jié)構(gòu)的方框圖。
圖4是表示本發(fā)明實(shí)施方式1的語音編碼裝置的變更(variation)的主要結(jié)構(gòu)的方框圖。
圖5是表示本發(fā)明實(shí)施方式1的語音解碼裝置的變更的主要結(jié)構(gòu)的方框圖。
圖6是表示本發(fā)明實(shí)施方式2的語音編碼裝置的主要結(jié)構(gòu)的方框圖。
圖7是表示本發(fā)明實(shí)施方式2的第二層編碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖8是表示本發(fā)明實(shí)施方式2的語音解碼裝置的主要結(jié)構(gòu)的方框圖。
圖9是表示本發(fā)明實(shí)施方式2的第二層解碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖10是表示本發(fā)明實(shí)施方式3的語音編碼裝置的主要結(jié)構(gòu)的方框圖。
圖11是表示本發(fā)明實(shí)施方式3的語音解碼裝置的主要結(jié)構(gòu)的方框圖。
圖12是表示本發(fā)明實(shí)施方式4的語音編碼裝置的主要結(jié)構(gòu)的方框圖。
圖13是表示本發(fā)明實(shí)施方式4的語音解碼裝置的主要結(jié)構(gòu)的方框圖。
圖14是表示本發(fā)明實(shí)施方式5的語音編碼裝置的主要結(jié)構(gòu)的方框圖。
圖15是表示本發(fā)明實(shí)施方式5的頻帶擴(kuò)展編碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖16是表示本發(fā)明實(shí)施方式5的校正比例因子(scale factor)編碼單元的內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖17是表示本發(fā)明實(shí)施方式5的第二層編碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖18是表示本發(fā)明實(shí)施方式5的語音解碼裝置的主要結(jié)構(gòu)的方框圖。
圖19是表示本發(fā)明實(shí)施方式5的頻帶擴(kuò)展解碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖20是表示本發(fā)明實(shí)施方式5的第二層解碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖21是表示本發(fā)明實(shí)施方式6的語音編碼裝置的主要結(jié)構(gòu)的方框圖。
圖22是表示本發(fā)明實(shí)施方式6的第二層編碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖23是例示本發(fā)明實(shí)施方式6的頻帶選擇單元中獲得的域的結(jié)構(gòu)的圖。
圖24是表示本發(fā)明實(shí)施方式6的語音解碼裝置的主要結(jié)構(gòu)的方框圖。
圖25是表示本發(fā)明實(shí)施方式6的第二層解碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖26是表示本發(fā)明實(shí)施方式7的語音編碼裝置的主要結(jié)構(gòu)的方框圖。
圖27是表示本發(fā)明實(shí)施方式7的第二層編碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
圖28是表示本發(fā)明實(shí)施方式7的語音解碼裝置的主要結(jié)構(gòu)的方框圖。
圖29是表示本發(fā)明實(shí)施方式7的第二層解碼單元內(nèi)部的主要結(jié)構(gòu)的方框圖。
具體實(shí)施例方式 本發(fā)明的概要為,作為一個(gè)例子,在各幀中不同頻帶的頻率分量的量化中,在判定出先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶的數(shù)目為規(guī)定值以上時(shí),對頻域的參數(shù)進(jìn)行預(yù)測編碼,而在判定出共用的子帶的數(shù)目小于規(guī)定值時(shí),對頻域的參數(shù)進(jìn)行直接編碼。由此,能夠降低語音/音頻信號等的編碼信息量,并且防止解碼信號或解碼語音等的急劇的質(zhì)量劣化,能夠降低語音/音頻信號等的編碼誤差及解碼信號的質(zhì)量劣化,特別是解碼語音的音質(zhì)劣化。。
以下,參照附圖詳細(xì)地說明本發(fā)明的實(shí)施方式。下面,使用語音編碼裝置/語音解碼裝置作為本發(fā)明的編碼裝置/解碼裝置的例子進(jìn)行說明。
(實(shí)施方式1) 圖1是表示本發(fā)明實(shí)施方式1的語音編碼裝置100的主要結(jié)構(gòu)的方框圖。
在該圖中,語音編碼裝置100包括頻域變換單元101、頻帶選擇單元102、形狀量化單元103、有無預(yù)測編碼判定單元104、增益量化單元105以及復(fù)用單元106。
頻域變換單元101使用輸入信號進(jìn)行改進(jìn)離散余弦變換(MDCTModified Discrete Cosine Transform),計(jì)算作為頻域的參數(shù)的MDCT系數(shù)并將其輸出到頻帶選擇單元102。
頻帶選擇單元102將從頻域變換單元101輸入的MDCT系數(shù)分割為多個(gè)子帶,從多個(gè)子帶中選擇作為量化對象的頻帶,將表示所選擇的頻帶的頻帶信息輸出到形狀量化單元103、有無預(yù)測編碼判定單元104以及復(fù)用單元106。而且,頻帶選擇單元102將MDCT系數(shù)輸出到形狀量化單元103。另外,除了從頻域變換單元101將MDCT系數(shù)輸入到頻帶選擇單元102,再輸入到形狀量化單元103以外,也可以從頻域變換單元101直接將MDCT系數(shù)輸入到形狀量化單元103。
形狀量化單元103使用從頻帶選擇單元102輸入的MDCT系數(shù)中的、與從頻帶選擇單元102輸入的頻帶信息所表示的頻帶對應(yīng)的MDCT系數(shù)進(jìn)行形狀量化,并將所獲得的形狀編碼信息輸出到復(fù)用單元106。而且,形狀量化單元103求形狀量化的理想增益值,并將所求出的理想增益值輸出到增益量化單元105。
有無預(yù)測編碼判定單元104使用從頻帶選擇單元102輸入的頻帶信息,求當(dāng)前幀的量化對象頻帶與先前幀的量化對象頻帶之間共用的子帶的數(shù)目。然后,有無預(yù)測編碼判定單元104在共用的子帶的數(shù)目為規(guī)定值以上時(shí),判定為對頻帶信息所表示的量化對象頻帶的MDCT系數(shù)進(jìn)行預(yù)測編碼,在共用的子帶的數(shù)目小于規(guī)定值時(shí),判定為不對頻帶信息所表示的量化對象頻帶的MDCT系數(shù)進(jìn)行預(yù)測編碼。有無預(yù)測編碼判定單元104將判定結(jié)果輸出到增益量化單元105。
增益量化單元105在從有無預(yù)測編碼判定單元104輸入的判定結(jié)果表示進(jìn)行預(yù)測編碼的判定結(jié)果時(shí),使用內(nèi)置的緩存器中所存儲的先前幀的量化增益值以及內(nèi)置的增益碼本,對當(dāng)前幀的量化對象頻帶的增益進(jìn)行預(yù)測編碼而獲得增益編碼信息。另一方面,增益量化單元105在從有無預(yù)測編碼判定單元104輸入的判定結(jié)果表示不進(jìn)行預(yù)測編碼的判定結(jié)果時(shí),對從形狀量化單元103輸入的理想增益值進(jìn)行直接量化而獲得增益編碼信息。增益量化單元105將所獲得的增益編碼信息輸出到復(fù)用單元106。
復(fù)用單元106將從頻帶選擇單元102輸入的頻帶信息、從形狀量化單元103輸入的形狀編碼信息以及從增益量化單元105輸入的增益編碼信息進(jìn)行復(fù)用,并將所獲得的比特流發(fā)送到語音解碼裝置。
具有上述結(jié)構(gòu)的語音編碼裝置100對輸入信號進(jìn)行每N個(gè)樣本的劃分(N為自然數(shù)),將每N個(gè)樣本作為一幀而對每個(gè)幀進(jìn)行編碼。以下,詳細(xì)地說明語音編碼裝置100的各個(gè)單元的動作。另外,在以下的說明中,將作為編碼對象的幀的輸入信號表示為xn(n=0、1、...、N-1)。其中,n表示作為編碼對象的幀中的各個(gè)樣本的索引。
頻域變換單元101內(nèi)置N個(gè)緩存器,首先,根據(jù)下述的式(1),使用“0”值對各個(gè)緩存器進(jìn)行初始化。
bufn=0(n=0,1,…,N-1)...(1) 在該式中,bufn(n=0、...、N-1)表示頻域變換單元101內(nèi)置的N個(gè)的緩存器中的第n+1緩存器。
接著,頻域變換單元101根據(jù)下述的式(2),對輸入信號xn進(jìn)行改進(jìn)離散余弦變換(MDCT),求MDCT系數(shù)Xk。
在該式中,k表示1幀中的各個(gè)樣本的索引。另外,x’n是根據(jù)下述的式(3),使輸入信號xn與緩存器bufn組合獲得的向量。
接著,頻域變換單元101如下述的式(4)所示,將bufn(n=0、...、N-1)更新。
bufn=xn(n=0,…N-1) ...(4) 接著,頻域變換單元101將求出的MDCT系數(shù)Xk輸出到頻帶選擇單元102。
頻帶選擇單元102首先將MDCT系數(shù)Xk分割為多個(gè)子帶。這里,以MDCT系數(shù)Xk被均等地分割為J(J為自然數(shù))個(gè)子帶的情況為例進(jìn)行說明。然后,頻帶選擇單元102從J個(gè)子帶中選擇連續(xù)的L(L為自然數(shù))個(gè)子帶,獲得M(M為自然數(shù))種的子帶組。以下,將該M種的子帶組稱為域(region)。
圖2是例示頻帶選擇單元102中所獲得的域的結(jié)構(gòu)的圖。
在該圖中,子帶的數(shù)目為17個(gè)(J=17),域的種類為8種(M=8),各個(gè)域由連續(xù)的5個(gè)(L=5)子帶構(gòu)成。其中,例如,域4由子帶6~10構(gòu)成。
接著,頻帶選擇單元102根據(jù)下述的式(5),計(jì)算M種的各個(gè)域的平均能量E(m)。
在該式中,j表示J個(gè)的各個(gè)子帶的索引,m表示M種的各個(gè)域的索引。另外,S(m)表示構(gòu)成域m的L個(gè)子帶的索引中的最小值,B(j)表示構(gòu)成子帶j的多個(gè)MDCT系數(shù)的索引中的最小值。W(j)表示子帶j的帶寬。在以下的說明中,以J個(gè)的各個(gè)子帶的帶寬都相等的情況,即,W(j)是常數(shù)的情況為例進(jìn)行說明。
接著,頻帶選擇單元102選擇平均能量E(m)為最大的域、例如由子帶j”~j”+L-1構(gòu)成的頻帶作為量化對象的頻帶(量化對象頻帶),并將表示該域的索引m_max作為頻帶信息輸出到形狀量化單元103、有無預(yù)測編碼判定單元104以及復(fù)用單元106。而且,頻帶選擇單元102將MDCT系數(shù)Xk輸出到形狀量化單元103。另外,在以下的說明中,將表示頻帶選擇單元102所選擇的量化對象頻帶的子帶索引設(shè)為j”~j”+L-1。
形狀量化單元103對從頻帶選擇單元102輸入的頻帶信息m_max表示的頻帶對應(yīng)的MCDT系數(shù),對每個(gè)子帶進(jìn)行形狀量化。具體而言,形狀量化單元103對L個(gè)子帶的每個(gè)子帶,搜索由SQ個(gè)的形狀碼向量構(gòu)成的內(nèi)置的形狀碼本來求使下述的式(6)的結(jié)果為最大的形狀碼向量的索引。
在該式中,SCik表示構(gòu)成形狀碼本的形狀碼向量,i表示形狀碼向量的索引,k表示形狀碼向量的元素的索引。
形狀量化單元103將使上述的式(6)的結(jié)果為最大的形狀碼向量的索引S_max作為形狀編碼信息輸出到復(fù)用單元106。而且,形狀量化單元103根據(jù)下述的式(7),計(jì)算理想增益值Gain_i(j),并將其輸出到增益量化單元105。
有無預(yù)測編碼判定單元104內(nèi)置有存儲在先前幀中從頻帶選擇單元102輸入的頻帶信息m_max的緩存器。這里,以有無預(yù)測編碼判定單元104內(nèi)置有存儲先前三個(gè)幀的頻帶信息m_max的緩存器的情況為例進(jìn)行說明。有無預(yù)測編碼判定單元104首先使用先前幀中從形狀量化單元103輸入的頻帶信息m_max以及當(dāng)前幀中從形狀量化單元103輸入的頻帶信息m_max,求在先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶的數(shù)目。然后,有無預(yù)測編碼判定單元104在共用的子帶的數(shù)目為規(guī)定值以上時(shí),判定為進(jìn)行預(yù)測編碼,在共用的子帶的數(shù)目小于規(guī)定值時(shí),判定為不進(jìn)行預(yù)測編碼。具體而言,將時(shí)間上先前一幀中從頻帶選擇單元102輸入的頻帶信息m_max所表示的L個(gè)子帶與當(dāng)前幀中從頻帶選擇單元102輸入的頻帶信息m_max所表示的L個(gè)子帶進(jìn)行比較,在共用的子帶的數(shù)目為P個(gè)以上時(shí),判定為進(jìn)行預(yù)測編碼,在共用的子帶的數(shù)目小于P個(gè)時(shí),判定為不進(jìn)行預(yù)測編碼。有無預(yù)測編碼判定單元104將判定結(jié)果輸出到增益量化單元105。接著,有無預(yù)測編碼判定單元104使用當(dāng)前幀中從頻帶選擇單元102輸入的頻帶信息m_max,對存儲頻帶信息的內(nèi)置的緩存器進(jìn)行更新。
增益量化單元105內(nèi)置有存儲在先前幀中所獲得的量化增益值的緩存器。在從有無預(yù)測編碼判定單元104輸入的判定結(jié)果表示進(jìn)行預(yù)測編碼的判定結(jié)果時(shí),增益量化單元105通過使用內(nèi)置的緩存器中所存儲的先前幀的量化增益值Ctj,對當(dāng)前幀的增益值進(jìn)行預(yù)測,從而進(jìn)行量化。具體而言,增益量化單元105對L個(gè)子帶的每個(gè)子帶,搜索由GQ個(gè)增益碼向量構(gòu)成的內(nèi)置的增益碼本,求使下述的式(8)的結(jié)果為最小的增益碼向量的索引。
在該式中,GCij表示構(gòu)成增益碼本的增益碼向量,i表示增益碼向量的索引,j表示增益碼向量的元素的索引。例如,在構(gòu)成域的子帶數(shù)目為5時(shí)(L=5時(shí)),j取0~4的值。其中,Ctj表示時(shí)間上前t幀的增益的值,例如t=1時(shí),Ctj表示時(shí)間上前一幀的增益值。而且,α是增益量化單元105中所存儲的四階的線性預(yù)測系數(shù)。另外,增益量化單元105將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量量化。
增益量化單元105將使上述的式(8)的結(jié)果為最小的增益碼向量的索引G_min作為增益編碼信息輸出到復(fù)用單元106。另外,內(nèi)置的緩存器中不存在對應(yīng)于先前幀的子帶的增益值時(shí),增益量化單元105在上述的式(8)中,用內(nèi)置的緩存器中的頻率上最接近的子帶的增益值來代替。
另一方面,在從有無預(yù)測編碼判定單元104輸入的判定結(jié)果表示不進(jìn)行預(yù)測編碼的判定結(jié)果時(shí),增益量化單元105根據(jù)下述的式(9),對從形狀量化單元103輸入的理想增益值Gain_i(j)進(jìn)行直接量化。這里,增益量化單元105也是將理想增益值作為L維向量來處理,進(jìn)行向量量化。
這里,將使上述的式(9)為最小的碼本的索引記為G_min。
增益量化單元105將G_min作為增益編碼信息輸出到復(fù)用單元106。而且,增益量化單元105使用當(dāng)前幀中所獲得的增益編碼信息G_min及量化增益值Ctj,根據(jù)下述的式(10),對內(nèi)置的緩存器進(jìn)行更新。
復(fù)用單元106將從頻帶選擇單元102輸入的頻帶信息m_max、從形狀量化單元103輸入的形狀編碼信息S_max以及從增益量化單元105輸入的增益編碼信息G_min進(jìn)行復(fù)用,并將所獲得的比特流發(fā)送到語音解碼裝置。
圖3是表示本實(shí)施方式的語音解碼裝置200的主要結(jié)構(gòu)的方框圖。
在該圖中,語音解碼裝置200包括分離單元201、形狀反量化單元202、有無預(yù)測解碼判定單元203、增益反量化單元204以及時(shí)域變換單元205。
分離單元201從由語音編碼裝置100傳輸?shù)谋忍亓髦蟹蛛x頻帶信息、形狀編碼信息以及增益編碼信息,將所獲得的頻帶信息輸出到形狀反量化單元202及有無預(yù)測解碼判定單元203,將形狀編碼信息輸出到形狀反量化單元202,將增益編碼信息輸出到增益反量化單元204。
形狀反量化單元202通過對從分離單元201輸入的形狀編碼信息進(jìn)行反量化,求對應(yīng)于從分離單元201輸入的頻帶信息所表示的量化對象頻帶的MDCT系數(shù)的形狀的值,并將所求出的形狀的值輸出到增益反量化單元204。
有無預(yù)測解碼判定單元203使用從分離單元201輸入的頻帶信息,求當(dāng)前幀的量化對象頻帶與先前幀的量化對象頻帶之間共用的子帶的數(shù)目。然后,有無預(yù)測解碼判定單元203在共用的子帶的數(shù)目為規(guī)定值以上時(shí),判定為對頻帶信息所表示的量化對象頻帶的MDCT系數(shù)進(jìn)行預(yù)測解碼,在共用的子帶的數(shù)目小于規(guī)定值時(shí),判定為不對頻帶信息所表示的量化對象頻帶的MDCT系數(shù)進(jìn)行預(yù)測解碼。有無預(yù)測解碼判定單元203將判定結(jié)果輸出到增益反量化單元204。
增益反量化單元204在從有無預(yù)測解碼判定單元203輸入的判定結(jié)果表示進(jìn)行預(yù)測解碼的判定結(jié)果時(shí),使用內(nèi)置的緩存器中所存儲的先前幀的增益值以及內(nèi)置的增益碼本,對從分離單元201輸入的增益編碼信息進(jìn)行預(yù)測解碼而獲得增益值。另一方面,增益反量化單元204在從有無預(yù)測解碼判定單元203輸入的判定結(jié)果表示不進(jìn)行預(yù)測解碼的判定結(jié)果時(shí),使用內(nèi)置的增益碼本,對從分離單元201輸入的增益編碼信息進(jìn)行直接反量化而獲得增益值。增益反量化單元204將所獲得的增益值輸出到時(shí)域變換單元205。而且,增益反量化單元204使用所獲得的增益值以及從形狀反量化單元202輸入的形狀的值,求量化對象頻帶的MDCT系數(shù),并將其作為解碼MDCT系數(shù)輸出到時(shí)域變換單元205。
時(shí)域變換單元205對從增益反量化單元204輸入的解碼MDCT系數(shù)進(jìn)行改進(jìn)離散余弦逆變換(IMDCTInverse Modified Discrete Cosine Transform),生成時(shí)域的信號,并將其作為解碼信號輸出。
具有上述的結(jié)構(gòu)的語音解碼裝置200進(jìn)行以下的動作。
分離單元201從語音編碼裝置100傳輸?shù)谋忍亓髦蟹蛛x頻帶信息m_max、形狀編碼信息S_max以及增益編碼信息G_min,將所獲得的頻帶信息m_max輸出到形狀反量化單元202及有無預(yù)測解碼判定單元203,將形狀編碼信息S_max輸出到形狀反量化單元202,將增益編碼信息G_min輸出到增益反量化單元204。
形狀反量化單元202內(nèi)置有與語音編碼裝置100的形狀量化單元103所配備的形狀碼本相同的形狀碼本,搜索以從分離單元201輸入的形狀編碼信息S_max為索引的形狀碼向量。形狀反量化單元202將搜索出的碼向量輸出到增益反量化單元204,作為從分離單元201輸入的頻帶信息m_max所表示的量化對象頻帶的MDCT系數(shù)的形狀的值。這里,將作為形狀的值而搜索出的形狀碼向量記為Shape_q(k)(k=B(j”),...,B(j”+L)-1)。
有無預(yù)測解碼判定單元203內(nèi)置有存儲在先前幀中從分離單元201輸入的頻帶信息m_max的緩存器。這里,以有無預(yù)測解碼判定單元203內(nèi)置有存儲先前三個(gè)幀的頻帶信息m_max的緩存器的情況為例進(jìn)行說明。有無預(yù)測解碼判定單元203首先使用先前幀中從分離單元201輸入的頻帶信息m_max以及當(dāng)前幀中從分離單元201輸入的頻帶信息m_max,求先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶的數(shù)目。然后,有無預(yù)測解碼判定單元203在共用的子帶的數(shù)目為規(guī)定值以上時(shí),判定為進(jìn)行預(yù)測解碼,在共用的子帶的數(shù)目小于規(guī)定值時(shí),判定為不進(jìn)行預(yù)測解碼。具體而言,有無預(yù)測解碼判定單元203將時(shí)間上先前一幀中從分離單元201輸入的頻帶信息m_max所表示的L個(gè)子帶與當(dāng)前幀中從分離單元201輸入的頻帶信息m_max所表示的L個(gè)子帶進(jìn)行比較,在共用的子帶的數(shù)目為P個(gè)以上時(shí),判定為進(jìn)行預(yù)測解碼,在共用的子帶的數(shù)目小于P個(gè)時(shí),判定為不進(jìn)行預(yù)測解碼。有無預(yù)測解碼判定單元203將判定結(jié)果輸出到增益反量化單元204。接著,有無預(yù)測解碼判定單元203使用當(dāng)前幀中從分離單元201輸入的頻帶信息m_max,對存儲頻帶信息的內(nèi)置的緩存器進(jìn)行更新。
增益反量化單元204內(nèi)置有存儲在先前幀中所獲得的增益值的緩存器。在從有無預(yù)測解碼判定單元203輸入的判定結(jié)果是表示進(jìn)行預(yù)測解碼的判定結(jié)果時(shí),增益反量化單元204使用內(nèi)置的緩存器中所存儲的先前幀的增益值,對當(dāng)前幀的增益值進(jìn)行預(yù)測,來進(jìn)行反量化。具體而言,增益反量化單元204內(nèi)置有與語音編碼裝置100的增益量化單元105相同的增益碼本,根據(jù)下述的式(11),進(jìn)行增益的反量化而獲得增益值Gain_q’。這里,C”tj表示時(shí)間上前t幀的增益的值,例如t=1時(shí),C”tj表示前一幀的增益值。而且,α是增益反量化單元204中所存儲的四階的線性預(yù)測系數(shù)。增益反量化單元204將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量反量化。
另外,內(nèi)置的緩存器中對應(yīng)于先前幀的子帶的增益值不存在時(shí),增益反量化單元204在上述的式(11)中,用內(nèi)置的緩存器中的頻率上最接近的子帶的增益值來代替。
另一方面,在從有無預(yù)測解碼判定單元203輸入的判定結(jié)果表示不進(jìn)行預(yù)測解碼的判定結(jié)果時(shí),增益反量化單元204使用上述的增益碼本,根據(jù)下述的式(12),對增益值進(jìn)行反量化。這里,也將增益值作為L維向量來處理,進(jìn)行向量反量化。也就是說,在不進(jìn)行預(yù)測解碼時(shí),將對應(yīng)于增益編碼信息G_min的增益碼向量GCjG_min直接作為增益值。
接著,增益反量化單元204使用對當(dāng)前幀進(jìn)行反量化所獲得的增益值以及從形狀反量化單元202輸入的形狀的值,根據(jù)下述的式(13),計(jì)算解碼MDCT系數(shù),根據(jù)下述的式(14),對內(nèi)置的緩存器進(jìn)行更新。這里,將計(jì)算出的解碼MDCT系數(shù)記為X”k。而且,在MDCT系數(shù)的反量化中,k存在于B(j”)~B(j”+1)-1內(nèi)時(shí),增益值Gain_q’(j)取Gain_q’(j”)的值。
增益反量化單元204將根據(jù)上述的式(13)計(jì)算出的解碼MDCT系數(shù)X”k輸出到時(shí)域變換單元205。
時(shí)域變換單元205首先根據(jù)下述的式(15)將內(nèi)置的緩存器buf’k的值初始化為“0”。
接著,時(shí)域變換單元205使用從增益反量化單元204輸入的解碼MDCT系數(shù)X”k,根據(jù)下述的式(16),求解碼信號Yn。
在該式中,X2”k是組合了解碼MDCT系數(shù)X”k與buf’k獲得的向量,使用下述的式(17)求X2”k。
接著,時(shí)域變換單元205根據(jù)下述的式(18),對緩存器buf’k進(jìn)行更新。
buf′k=X"k(k=0,…N-1) ...(18) 時(shí)域變換單元205輸出所求得的解碼信號Yn作為輸出信號。
這樣,根據(jù)本實(shí)施方式,由于在各個(gè)幀中選擇能量較大的頻帶作為量化對象頻帶,對頻域參數(shù)進(jìn)行量化,所以能夠使所量化的增益的值的分布產(chǎn)生偏置,提高向量量化的性能。
而且,根據(jù)本實(shí)施方式,在各個(gè)幀的不同量化對象頻帶的頻域參數(shù)的量化中,在判定出先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶的數(shù)目為規(guī)定值以上時(shí),對頻域的參數(shù)進(jìn)行預(yù)測編碼,而在判定出共用的子帶的數(shù)目小于規(guī)定值時(shí),對頻域的參數(shù)進(jìn)行直接編碼。因此,能夠降低語音編碼的編碼信息量,而且防止急劇的語音質(zhì)量劣化,并能夠降低語音/音頻信號的編碼誤差及解碼信號的音質(zhì)劣化。
而且,根據(jù)本實(shí)施方式,在編碼端以多個(gè)子帶構(gòu)成的域?yàn)閱挝粊頉Q定量化對象頻帶并對頻域參數(shù)進(jìn)行量化,將表示哪個(gè)域的頻域參數(shù)是量化對象的信息發(fā)送到解碼端即可。因此,與以子帶為單位決定是否利用預(yù)測編碼并將表示哪個(gè)子帶是量化對象的信息發(fā)送到解碼端相比,能夠提高量化的效率并進(jìn)一步降低向解碼端發(fā)送的編碼信息量。
另外,在本實(shí)施方式中,以多個(gè)子帶構(gòu)成的域?yàn)閱挝贿M(jìn)行增益的量化的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以以子帶單位選擇量化對象,即以子帶單位判定是否進(jìn)行預(yù)測量化。
而且,在本實(shí)施方式中,作為增益的預(yù)測量化方法,以在時(shí)間軸上對同一頻域的增益進(jìn)行線性預(yù)測的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以在時(shí)間軸上對不同的頻域的增益進(jìn)行線性預(yù)測。
而且,在本實(shí)施方式中,作為量化對象的信號,以通常的語音/音頻信號為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以將通過LPC(線性預(yù)測系數(shù)Linear Prediction Coefficient)逆濾波對語音/音頻信號進(jìn)行處理而獲得的驅(qū)動激勵(lì)信號作為量化對象。
而且,在本實(shí)施方式中,作為選擇量化對象的頻帶的基準(zhǔn),以各個(gè)域的能量的大小為基準(zhǔn),即選擇聽覺上的重要度為最高的域的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,除了聽覺上的重要度以外,也可以同時(shí)考慮與先前幀中所選擇的頻帶的頻率上的相關(guān)性。也就是說,也可以在其與先前所選擇的量化對象頻帶之間共用的子帶的數(shù)目為規(guī)定值以上且能量為規(guī)定值以上的候補(bǔ)頻帶存在時(shí),選擇上述的候補(bǔ)頻帶中能量為最大的頻帶作為所述量化對象頻帶,在所述候補(bǔ)頻帶不存在時(shí),選擇在全頻域中能量為最大的頻帶作為所述量化對象頻帶。例如,在能量最大的域與先前幀中所選擇的頻帶之間共用的子帶不存在,能量第二大的域與先前幀中所選擇的頻帶之間共用的子帶的數(shù)目為規(guī)定閾值以上且能量第二大的域的能量為規(guī)定閾值以上時(shí),并不是選擇能量最大的域而是選擇能量第二大的域。而且,本實(shí)施方式的頻帶選擇單元在能量為規(guī)定值以上的域中,選擇與先前所選擇的量化對象頻帶最接近的域作為量化對象頻帶。
而且,在本實(shí)施方式中,也可以使用先前幀進(jìn)行插補(bǔ)后進(jìn)行MDCT系數(shù)的量化。參照圖2,說明下述情況,即例如先前幀的量化對象頻帶為域3(即,子帶5~9),當(dāng)前幀的量化對象頻帶為域4(即,子帶6~10),使用先前幀的量化結(jié)果對當(dāng)前幀進(jìn)行預(yù)測編碼。此時(shí),使用先前幀的子帶6~9,對當(dāng)前幀的子帶6~9進(jìn)行預(yù)測編碼,使用先前幀的子帶5~9對先前幀的子帶10進(jìn)行插補(bǔ)后,使用通過插補(bǔ)所獲得的先前幀的子帶10,對當(dāng)前幀的子帶10進(jìn)行預(yù)測編碼。
而且,在本實(shí)施方式中,以不管是否進(jìn)行預(yù)測編碼都使用同一碼本來進(jìn)行量化的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以在增益的量化及形狀的量化的各個(gè)量化中,根據(jù)是進(jìn)行預(yù)測編碼還是不進(jìn)行預(yù)測編碼而使用不同的碼本。
而且,在本實(shí)施方式中,以所有的子帶寬都相同的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以使各個(gè)子帶的子帶寬分別不同。
而且,在本實(shí)施方式中,以在增益的量化及形狀的量化中,對所有的子帶使用同一碼本的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以在增益的量化及形狀的量化的各個(gè)量化中,對每個(gè)子帶使用不同的碼本。
而且,在本實(shí)施方式中,以選擇連續(xù)的子帶作為量化對象頻帶的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以選擇非連續(xù)的多個(gè)子帶作為量化對象頻帶。此時(shí),使用相鄰的子帶的值,對未被選擇的子帶的值進(jìn)行插補(bǔ),從而能夠進(jìn)一步提高語音編碼的效率。
而且,在本實(shí)施方式中,以語音編碼裝置100具備有無預(yù)測編碼判定單元104的情況為例進(jìn)行了說明,但本發(fā)明的語音編碼裝置并不限于此,也可以如圖4所示的語音編碼裝置100a那樣,采用下述的結(jié)構(gòu),即,不具備有無預(yù)測編碼判定單元104,而在增益量化單元105中總是不進(jìn)行預(yù)測量化。此時(shí),如圖4所示,語音編碼裝置100a包括頻域變換單元101、頻帶選擇單元102、形狀量化單元103、增益量化單元105以及復(fù)用單元106。另外,圖5是表示與語音編碼裝置100a對應(yīng)的語音解碼裝置200a的結(jié)構(gòu)的方框圖,語音解碼裝置200a包括分離單元201、形狀反量化單元202、增益反量化單元204以及時(shí)域變換單元205。此時(shí),語音編碼裝置100a從全頻帶中選擇進(jìn)行量化的一部分頻帶,將所選擇的頻帶進(jìn)一步分割為多個(gè)子帶,對各個(gè)子帶的增益進(jìn)行量化。由此,與對全頻帶的分量進(jìn)行量化的方法相比較,能夠以較低的比特率進(jìn)行量化,提高編碼效率。而且,利用頻率軸上的增益的相關(guān)對增益的向量進(jìn)行量化,從而能夠進(jìn)一步提高編碼效率。
而且,本發(fā)明的語音編碼裝置也可以如圖4所示的語音編碼裝置100a那樣,采用下述的結(jié)構(gòu),即,不具備有無預(yù)測編碼判定單元104,而在增益量化單元105中總是進(jìn)行預(yù)測量化。對應(yīng)于這樣的語音編碼裝置100a的語音解碼裝置200a的結(jié)構(gòu)如圖5所示。此時(shí),語音編碼裝置100a從全頻帶中選擇進(jìn)行量化的一部分頻帶,將所選擇的頻帶進(jìn)一步分割為多個(gè)子帶,進(jìn)行各個(gè)子帶的增益的量化。由此,與對全頻帶的分量進(jìn)行量化的方法相比較,能夠以較低的比特率進(jìn)行量化,提高編碼效率。而且,利用時(shí)間軸上的增益的相關(guān)對增益的向量進(jìn)行預(yù)測量化,從而能夠進(jìn)一步提高編碼效率。
另外,在本實(shí)施方式中,作為在頻帶選擇單元中選擇量化對象頻帶的方法,以在全頻帶中選擇能量為最大的域的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,除了上述的判定基準(zhǔn),也可以利用時(shí)間上前面的幀中所選擇的頻帶的信息來進(jìn)行選擇。例如,可以舉出下述的方法,乘以權(quán)重之后,選擇進(jìn)行量化的域,該權(quán)重使包含時(shí)間上前面的幀中所選擇的頻帶的附近的頻帶的域容易被選擇。而且,在選擇進(jìn)行量化的頻帶的層為多個(gè)時(shí),也可以利用在低層選擇的頻帶的信息,來選擇在高層進(jìn)行量化的頻帶。例如,可以舉出下述的方法,乘以權(quán)重之后,選擇進(jìn)行量化的域,該權(quán)重使包含低層中所選擇的頻帶的附近的頻帶的域容易被選擇。
而且,在本實(shí)施方式中,作為選擇量化對象頻帶的方法,以在全頻帶中選擇能量為最大的域的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以事先預(yù)備性地選擇某頻帶,在預(yù)備性地選擇出的頻帶中最終選擇量化對象頻帶。此時(shí),根據(jù)輸入信號的采樣速率或編碼比特率,決定預(yù)備性地選擇的頻帶即可。有下述方法等,例如,在比特率或采樣速率較低時(shí),預(yù)備性地選擇低頻部分。
也可以采用下述方法,例如,在頻帶選擇單元102中,從可選擇的域的全部候補(bǔ)中限定了低頻部分的域后,計(jì)算域的能量來決定進(jìn)行量化的域。作為該例子可以舉出下述方法,從圖2所示的全部8個(gè)候補(bǔ)的域中,從低頻側(cè)開始限定5個(gè)候補(bǔ),選擇其中能量最大的域。而且,頻帶選擇單元102也可以使越處于低頻側(cè)的域越容易被選擇而對其能量乘以權(quán)重之后,比較能量。而且,頻帶選擇單元102也可以選擇低頻側(cè)的固定的子帶。語音信號具有越處于低頻側(cè)諧波結(jié)構(gòu)越強(qiáng)的特征,其結(jié)果,在低頻側(cè)存在較強(qiáng)的峰值。由于該較強(qiáng)的峰值難以掩蔽,所以容易被察覺為是噪聲。這里,通過使越處于低頻側(cè)的域越容易被選擇而不是簡單地僅基于能量的大小來選擇域,包含較強(qiáng)的峰值的域被選擇的可能性變高,作為結(jié)果噪聲感減少了。這樣,通過將要選擇的域限定在低頻側(cè)或乘以越處于低頻側(cè)越容易被選擇的權(quán)重,能夠提高解碼信號的質(zhì)量。
而且,說明了本發(fā)明的語音編碼裝置的結(jié)構(gòu)為,對進(jìn)行量化的頻帶的分量首先進(jìn)行形狀(形狀信息)的量化,接著進(jìn)行增益(增益信息)的量化,但本發(fā)明并不限于此,也可以為首先進(jìn)行增益的量化,接著進(jìn)行形狀的量化的結(jié)構(gòu)。
(實(shí)施方式2) 圖6是表示本發(fā)明實(shí)施方式2的語音編碼裝置300的主要結(jié)構(gòu)的方框圖。
在該圖中,語音編碼裝置300包括下采樣單元301、第一層編碼單元302、第一層解碼單元303、上采樣單元304、第一頻域變換單元305、延遲單元306、第二頻域變換單元307、第二層編碼單元308、以及復(fù)用單元309,并且該語音編碼裝置采用由二層構(gòu)成的可擴(kuò)展的結(jié)構(gòu)。另外,在第一層適用CELP(Code Exited Linear Prediction碼激勵(lì)線性預(yù)測)方式的語音編碼方法,在第二層編碼中,適用本發(fā)明實(shí)施方式1中已說明的語音編碼方法。
下采樣單元301對所輸入的語音/音頻信號進(jìn)行下采樣處理,將語音/音頻信號的采樣頻率從Rate1變換為Rate2(Rate1>Rate2),并將其輸出到第一層編碼單元302。
第一層編碼單元302對從下采樣單元301輸入的下采樣后的語音/音頻信號進(jìn)行CELP方式的語音編碼,并將所獲得的第一層編碼信息輸出到第一層解碼單元303及復(fù)用單元309。具體而言,第一層編碼單元302對于由聲道信息和激勵(lì)信息構(gòu)成的語音信號,對聲道信息,通過求LPC參數(shù)進(jìn)行編碼,對激勵(lì)信息,通過求用于確定使用事先存儲的哪一個(gè)語音模式(model)的索引,即,用于確定生成自適應(yīng)碼本及固定碼本的哪個(gè)激勵(lì)向量的索引進(jìn)行編碼。
第一層解碼單元303對從第一層編碼單元302輸入的第一層編碼信息進(jìn)行CELP方式的語音解碼,并將所獲得的第一層解碼信號輸出到上采樣單元304。
上采樣單元304對從第一層解碼單元303輸入的第一層解碼信號進(jìn)行上采樣處理,將第一層解碼信號的采樣頻率從Rate2變換為Rate1后輸出到第一頻域變換單元305。
第一頻域變換單元305對從上采樣單元304輸入的上采樣后的第一層解碼信號進(jìn)行MDCT,將作為頻域的參數(shù)而獲得的第一層MDCT系數(shù)輸出到第二層編碼單元308。這里,由于第一頻域變換單元305中的具體變換方法與本發(fā)明實(shí)施方式1的語音編碼裝置100的頻域變換單元101中的變換方法相同,所以省略其說明。
延遲單元306通過將輸入的語音/音頻信號存儲到內(nèi)置的緩存器中并在經(jīng)過規(guī)定時(shí)間后將其輸出,將延遲后的語音/音頻信號輸出到第二頻域變換單元307。這里,所延遲的規(guī)定時(shí)間是考慮了在下采樣單元301、第一層編碼單元302、第一層解碼單元303、上采樣單元304、第一頻域變換單元305以及第二頻域變換單元307中產(chǎn)生的算法延遲的時(shí)間。
第二頻域變換單元307對從延遲單元306輸入的延遲后的語音/音頻信號進(jìn)行MDCT,將作為頻域的參數(shù)而獲得的第二層MDCT系數(shù)輸出到第二層編碼單元308。這里,由于第二頻域變換單元307中的具體變換方法與實(shí)施方式1的語音編碼裝置100的頻域變換單元101中的變換方法相同,所以省略其說明。
第二層編碼單元308使用從第一頻域變換單元305輸入的第一層MDCT系數(shù)及從第二頻域變換單元307輸入的第二層MDCT系數(shù)進(jìn)行第二層編碼,將所獲得的第二層編碼信息輸出到復(fù)用單元309。在后面敘述第二層編碼單元308的內(nèi)部的主要結(jié)構(gòu)及具體的動作。
復(fù)用單元309將從第一層編碼單元302輸入的第一層編碼信息與從第二層編碼單元308輸入的第二層編碼信息進(jìn)行復(fù)用,將所獲得的比特流發(fā)送到語音解碼裝置。
圖7是表示第二層編碼單元308的內(nèi)部的主要結(jié)構(gòu)的方框圖。另外,第二層編碼單元308具有與實(shí)施方式1中示出的語音編碼裝置100(參照圖1)相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
第二層編碼單元308具備殘差MDCT系數(shù)計(jì)算單元381來代替頻域變換單元101,這一方面與語音編碼裝置100不同。另外,復(fù)用單元106中的處理與語音編碼裝置100的復(fù)用單元106中的處理相同,為了便于說明,將從本實(shí)施方式的復(fù)用單元106輸出的信號名稱記為第二層編碼信息。
另外,也可以不經(jīng)由復(fù)用單元106而將頻帶信息、形狀編碼信息、增益編碼信息直接輸入到復(fù)用單元309,并將其與第一層編碼信息進(jìn)行復(fù)用。
殘差MDCT系數(shù)計(jì)算單元381求從第一頻域變換單元305輸入的第一層MDCT系數(shù)與從第二頻域變換單元307輸入的第二層MDCT系數(shù)之間的殘差,并將其作為殘差MDCT系數(shù)輸出到頻帶選擇單元102。
圖8是表示本發(fā)明實(shí)施方式2的語音解碼裝置400的主要結(jié)構(gòu)的方框圖。
在該圖中,語音解碼裝置400包括控制單元401、第一層解碼單元402、上采樣單元403、頻域變換單元404、第二層解碼單元405、時(shí)域變換單元406以及開關(guān)407。
控制單元401對從語音編碼裝置300傳輸?shù)谋忍亓鞯慕Y(jié)構(gòu)要素進(jìn)行分析,并根據(jù)該比特流的結(jié)構(gòu)要素,自適應(yīng)地將合適的編碼信息輸出到第一層解碼單元402及第二層解碼單元405,并且將控制信息輸出到開關(guān)407。具體而言,控制單元401在比特流由第一層編碼信息及第二層編碼信息構(gòu)成時(shí),將第一層編碼信息輸出到第一層解碼單元402,將第二層編碼信息輸出到第二層解碼單元405,另一方面,在比特流僅由第一層編碼信息構(gòu)成時(shí),將第一層編碼信息輸出到第一層解碼單元402。
第一層解碼單元402對從控制單元401輸入的第一層編碼信息以CELP方式進(jìn)行解碼,并將所獲得的第一層解碼信號輸出到上采樣單元403及開關(guān)407。
上采樣單元403對從第一層解碼單元402輸入的第一層解碼信號進(jìn)行上采樣處理,將第一層解碼信號的采樣頻率從Rate2變換為Rate1,并將其輸出到頻域變換單元404。
頻域變換單元404對從上采樣單元403輸入的上采樣后的第一層解碼信號進(jìn)行MDCT,將作為頻域的參數(shù)獲得的第一層解碼MDCT系數(shù)輸出到第二層解碼單元405。這里,由于頻域變換單元404中的具體變換方法與實(shí)施方式1的語音編碼裝置100的頻域變換單元101中的變換方法相同,所以省略其說明。
第二層解碼單元405使用從控制單元401輸入的第二層編碼信息及從頻域變換單元404輸入的第一層解碼MDCT系數(shù)進(jìn)行增益的反量化及形狀的反量化,獲得第二層解碼MDCT系數(shù)。第二層解碼單元405將所獲得的第二層解碼MDCT系數(shù)與第一層解碼MDCT系數(shù)相加,并將所獲得的相加結(jié)果作為相加MDCT系數(shù)輸出到時(shí)域變換單元406。在后面敘述第二層解碼單元405的內(nèi)部的主要結(jié)構(gòu)及具體的動作。
時(shí)域變換單元406對從第二層解碼單元405輸入的相加MDCT系數(shù)進(jìn)行IMDCT,將作為時(shí)域分量獲得的第二層解碼信號輸出到開關(guān)407。
開關(guān)407基于從控制單元401輸入的控制信息,在輸入到語音解碼裝置400的比特流由第一層編碼信息及第二層編碼信息構(gòu)成時(shí),輸出從時(shí)域變換單元406輸入的第二層解碼信號作為輸出信號,另一方面,在比特流僅由第一層編碼信息構(gòu)成時(shí),輸出從第一層解碼單元402輸入的第一層解碼信號作為輸出信號。
圖9是表示第二層解碼單元405的內(nèi)部的主要結(jié)構(gòu)的方框圖。另外,第二層解碼單元405具有與實(shí)施方式1中示出的語音解碼裝置200(參照圖3)相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
第二層解碼單元405還具備相加MDCT系數(shù)計(jì)算單元452,這方面與語音解碼裝置200不同。另外,第二層解碼單元405的分離單元451與語音解碼裝置200的分離單元201在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
分離單元451從控制單元401輸入的第二層編碼信息中分離頻帶信息、形狀編碼信息以及增益編碼信息,將所獲得的頻帶信息輸出到形狀反量化單元202及有無預(yù)測解碼判定單元203,將形狀編碼信息輸出到形狀反量化單元202,將增益編碼信息輸出到增益反量化單元204。
相加MDCT系數(shù)計(jì)算單元452將從頻域變換單元404輸入的第一層解碼MDCT系數(shù)與從增益反量化單元204輸入的第二層解碼MDCT系數(shù)相加,并將所獲得的相加結(jié)果輸出到時(shí)域變換單元406作為相加MDCT系數(shù)。
這樣,根據(jù)本實(shí)施方式,在各個(gè)幀中將不同頻帶的頻率分量作為量化對象時(shí),適用可擴(kuò)展編碼而且自適應(yīng)地進(jìn)行非時(shí)間性的參數(shù)的預(yù)測編碼,所以能夠降低語音編碼的編碼信息量,而且進(jìn)一步降低語音/音頻信號的編碼誤差及解碼信號的音質(zhì)劣化。
另外,在本實(shí)施方式中,以第二層編碼單元308將第一層MDCT系數(shù)與第二層MDCT系數(shù)之間的差分分量作為編碼對象的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,第二層編碼單元308也可以對規(guī)定頻率以下的頻帶將第一層MDCT系數(shù)與第二層MDCT系數(shù)之間的差分分量作為編碼對象,對高于規(guī)定頻率的頻帶將輸入信號的MDCT系數(shù)自身作為編碼對象。也就是說,可以根據(jù)頻帶,切換是否采用差分分量。
而且,在本實(shí)施方式中,作為選擇第二層編碼的量化對象頻帶的方法,以選擇第一層MDCT系數(shù)與第二層MDCT系數(shù)之間的殘差分量的能量為最大的域的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以選擇第一層MDCT系數(shù)的能量為最大的域。例如,也可以計(jì)算第一層MDCT系數(shù)的每個(gè)子帶的能量,并將每個(gè)域的各個(gè)子帶的能量相加,選擇能量為最大的域作為第二層編碼的量化對象頻帶。而且,在解碼裝置端,從通過第一層解碼所獲得的第一層解碼MDCT系數(shù)的各個(gè)域中選擇能量最大的域?yàn)榈诙咏獯a的反量化對象頻帶。由此,不從編碼裝置端發(fā)送有關(guān)第二層編碼的量化頻帶的頻帶信息,能夠降低編碼比特率。
而且,在本實(shí)施方式中,以第二層編碼單元308對第一層MDCT系數(shù)與第二層MDCT系數(shù)之間的殘差分量,選擇量化對象頻帶并進(jìn)行量化的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,第二層編碼單元308也可以基于第一層MDCT系數(shù),預(yù)測第二層MDCT系數(shù),并對該預(yù)測出的MDCT系數(shù)與實(shí)際的第二層MDCT系數(shù)之間的殘差分量,選擇量化對象頻帶并進(jìn)行量化。通過這樣,能夠利用第一層MDCT系數(shù)與第二層MDCT系數(shù)之間的相關(guān)性,進(jìn)一步提高編碼效率。
(實(shí)施方式3) 圖10是表示本發(fā)明實(shí)施方式3的語音編碼裝置500的主要結(jié)構(gòu)的方框圖。另外,語音編碼裝置500具有與圖1所示的語音編碼裝置100相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
語音編碼裝置500還具備插補(bǔ)值計(jì)算單元504,這方面與語音編碼裝置100不同。另外,語音編碼裝置500的增益量化單元505與語音編碼裝置100的增益量化單元105在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
插補(bǔ)值計(jì)算單元504內(nèi)置有存儲表示先前幀的量化對象頻帶的頻帶信息的緩存器。插補(bǔ)值計(jì)算單元504使用從增益量化單元505讀出的先前幀的量化對象頻帶的量化增益值,對從頻帶選擇單元102輸入的頻帶信息所表示的當(dāng)前幀的量化對象頻帶中,在先前幀中未被量化過的頻帶的增益值進(jìn)行插補(bǔ)。插補(bǔ)值計(jì)算單元504將所獲得的增益插補(bǔ)值輸出到增益量化單元505。
增益量化單元505,在進(jìn)行預(yù)測編碼時(shí),除了使用內(nèi)置的緩存器中所存儲的先前幀的量化增益值及內(nèi)置的增益碼本以外,還使用從插補(bǔ)值計(jì)算單元504輸入的增益插補(bǔ)值,這方面與語音編碼裝置100的增益量化單元105不同。
以下,具體地說明插補(bǔ)值計(jì)算單元504進(jìn)行的增益值的插補(bǔ)方法。
插補(bǔ)值計(jì)算單元504內(nèi)置有存儲在先前幀中從頻帶選擇單元102輸入的頻帶信息m_max的緩存器。這里,以內(nèi)置有存儲先前三幀的頻帶信息m_max的緩存器的情況為例進(jìn)行說明。
插補(bǔ)值計(jì)算單元504首先對先前三幀,通過線性插補(bǔ),計(jì)算頻帶信息m_max所表示的頻帶以外的增益值。對于比頻帶信息m_max所表示的頻帶低的頻帶的增益值,根據(jù)式(19)計(jì)算插補(bǔ)值,對于比頻帶信息m_max所表示的頻帶高的頻帶的增益值,根據(jù)式(20)計(jì)算插補(bǔ)值。
β0·q0+β1·q1+β2·q2+β3·g=0 ...(19) β0′·q0+β1′·q1+β2′·q2+β3′·g=0 ...(20) 在式(19)及式(20)中,βi表示插補(bǔ)系數(shù),qi表示先前幀的頻帶信息m_max所表示的量化對象頻帶的增益值,g表示與先前幀的頻帶信息m_max所表示的量化對象頻帶相鄰的、沒有被量化的頻帶的增益的插補(bǔ)值。這里,i越小表示頻率越低的頻帶,在式(19)中g(shù)表示先前幀的頻帶信息m_max所表示的量化對象頻帶的高頻側(cè)的相鄰頻帶的增益的插補(bǔ)值,式(20)中g(shù)表示先前幀的頻帶信息m_max所表示的量化對象頻帶的低頻側(cè)的相鄰頻帶的增益的插補(bǔ)值。假設(shè)插補(bǔ)系數(shù)βi使用為了滿足式(19)及式(20)而事先以統(tǒng)計(jì)方式求出的值。而且,這里,以在式(19)及式(20)各個(gè)式中使用不同的插補(bǔ)系數(shù)βi的情況進(jìn)行了說明,但也可以在式(19)及式(20)中使用同樣的一組預(yù)測系數(shù)αi。
如式(19)及式(20)所示,在插補(bǔ)值計(jì)算單元504中,能夠?qū)εc先前幀的頻帶信息m_max所表示的量化對象頻帶相鄰的、高頻側(cè)或低頻側(cè)的一個(gè)頻帶的增益值進(jìn)行插補(bǔ)。而且,插補(bǔ)值計(jì)算單元504利用通過式(19)及式(20)所獲得的結(jié)果,反復(fù)進(jìn)行式(19)及式(20)的運(yùn)算,從而一個(gè)一個(gè)地對相鄰的未被量化過的頻帶的增益值進(jìn)行插補(bǔ)。
這樣,插補(bǔ)值計(jì)算單元504使用從增益量化單元505讀出的先前三幀的進(jìn)行了量化的增益值,對從頻帶選擇單元102輸入的頻帶信息所表示的當(dāng)前幀的量化對象頻帶中的、先前三幀的頻帶信息m_max所表示的頻帶以外的頻帶的增益值進(jìn)行插補(bǔ)。
接著,說明增益量化單元505的預(yù)測編碼的動作。
增益量化單元505通過使用所存儲的先前幀的量化增益值、從插補(bǔ)值計(jì)算單元504輸入的增益插補(bǔ)值以及內(nèi)置的增益碼本,預(yù)測當(dāng)前幀的增益值,進(jìn)行量化。具體而言,增益量化單元505對L個(gè)子帶的每個(gè)子帶,搜索由GQ個(gè)增益碼向量構(gòu)成的內(nèi)置的增益碼本來求使下述的式(21)的結(jié)果為最小的增益碼向量的索引。
在式(21)中,GCij表示構(gòu)成增益碼本的增益碼向量,i表示增益碼向量的索引,j表示增益碼向量的元素的索引。這里,Ctj表示時(shí)間上前t幀的量化增益值,例如t=1時(shí),Ctj表示時(shí)間上前一幀的量化增益值而且,α是增益量化單元505中所存儲的四階的線性預(yù)測系數(shù)。而且,先前的三幀中未被選擇作為量化對象的頻帶的增益值,利用由插補(bǔ)值計(jì)算單元504根據(jù)式(19)及式(20)計(jì)算出的增益的插補(bǔ)值。另外,增益量化單元505將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量量化。
增益量化單元505將使上述的式(21)的結(jié)果為最小的增益碼向量的索引G_min作為增益編碼信息輸出到復(fù)用單元106。而且,增益量化單元505使用當(dāng)前幀中所獲得的增益編碼信息G_min及量化增益值Ctj,根據(jù)下述的式(22),對內(nèi)置的緩存器進(jìn)行更新。
圖11是表示本發(fā)明實(shí)施方式3的語音解碼裝置600的主要結(jié)構(gòu)的方框圖。另外,語音解碼裝置600具有與圖3所示的語音解碼裝置200相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
語音解碼裝置600還具備插補(bǔ)值計(jì)算單元603,這方面與語音解碼裝置200不同。另外,語音解碼裝置600的增益反量化單元604與語音解碼裝置200的增益反量化單元204在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
插補(bǔ)值計(jì)算單元603內(nèi)置有存儲在先前幀中進(jìn)行了反量化的頻帶信息的緩存器。插補(bǔ)值計(jì)算單元603使用從增益反量化單元604讀出的在先前幀中進(jìn)行了反量化的頻帶的增益值,對從分離單元201輸入的頻帶信息所表示的當(dāng)前幀的量化對象頻帶中,在先前幀中未被反量化過的頻帶的增益值進(jìn)行插補(bǔ)。插補(bǔ)值計(jì)算單元603將所獲得的增益插補(bǔ)值輸出到增益反量化單元604。
增益反量化單元604,在進(jìn)行預(yù)測解碼時(shí),除了使用所存儲的先前幀的進(jìn)行了反量化的增益值及內(nèi)置的增益碼本以外,還使用從插補(bǔ)值計(jì)算單元603輸入的增益插補(bǔ)值,這方面與語音解碼裝置200的增益反量化單元204不同。
由于插補(bǔ)值計(jì)算單元603中的增益值的插補(bǔ)方法與插補(bǔ)值計(jì)算單元504中的增益值的插補(bǔ)方法相同,所以省略詳細(xì)的說明。
以下,說明增益反量化單元604中的預(yù)測解碼的動作。
增益反量化單元604使用所存儲的在先前幀中進(jìn)行了反量化的增益值、從插補(bǔ)值計(jì)算單元603輸入的插補(bǔ)增益值以及內(nèi)置的增益碼本,預(yù)測當(dāng)前幀的增益值,進(jìn)行反量化。具體而言,增益反量化單元604根據(jù)下述的式(23),進(jìn)行增益的反量化而獲得增益值Gain_q’。
在式(23)中,C”tj表示時(shí)間上前t幀的增益的值,例如t=1時(shí),C”tj表示前一幀的增益值。而且,α是增益反量化單元604中所存儲的四階的線性預(yù)測系數(shù)。而且,先前的三幀中未被選擇作為量化對象的頻帶的增益值,利用由插補(bǔ)值計(jì)算單元603計(jì)算出的增益的插補(bǔ)值。增益反量化單元604將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量反量化。
接著,增益反量化單元604使用對當(dāng)前幀進(jìn)行反量化所獲得的增益值以及從形狀反量化單元202輸入的形狀的值,根據(jù)下述的式(24),計(jì)算解碼MDCT系數(shù),根據(jù)下述的式(25),對內(nèi)置的緩存器進(jìn)行更新。這里,將計(jì)算出的解碼MDCT系數(shù)記為X”k。而且,在MDCT系數(shù)的反量化中,k存在于B(j”)~B(j”+1)-1內(nèi)時(shí),增益值Gain_q’(j)取Gain_q’(j”)的值。
這樣,根據(jù)本實(shí)施方式,在對各個(gè)幀的不同量化對象頻帶的頻域參數(shù)進(jìn)行量化時(shí),基于在先前幀中進(jìn)行了量化的值,一個(gè)一個(gè)地對相鄰的未被量化的頻帶的值進(jìn)行插補(bǔ),也使用插補(bǔ)后的值來進(jìn)行預(yù)測量化。因此,能夠進(jìn)一步提高語音編碼的編碼精度。
另外,在本實(shí)施方式中,以在計(jì)算增益的插補(bǔ)值時(shí),使用事先求出的固定的插補(bǔ)系數(shù)β的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以對事先求出的插補(bǔ)系數(shù)β進(jìn)行調(diào)整后進(jìn)行插補(bǔ)。例如,也可以根據(jù)在各個(gè)幀中進(jìn)行了量化的頻帶的增益的分布,調(diào)整預(yù)測系數(shù)。具體而言,在各個(gè)幀中進(jìn)行了量化的增益的偏差較大時(shí),以下述方式進(jìn)行調(diào)整,即減弱預(yù)測系數(shù),加大當(dāng)前幀的增益的權(quán)重,從而能夠提高語音編碼的編碼精度。
而且,在本實(shí)施方式中,以在各個(gè)幀中作為進(jìn)行量化的頻帶是將連續(xù)的多個(gè)子帶(1域)為對象的情況進(jìn)行了說明,但本發(fā)明并不限于此,也可以將多個(gè)域作為量化對象。此時(shí),除了基于式(19)及式(20)的插補(bǔ)方法以外,還對所選擇的域之間的頻帶采用對各個(gè)域的端值進(jìn)行線性插補(bǔ)的方法,從而能夠提高語音編碼的編碼精度。
(實(shí)施方式4) 圖12是表示本發(fā)明實(shí)施方式4的語音編碼裝置700的主要結(jié)構(gòu)的方框圖。另外,語音編碼裝置700具有與圖1所示的語音編碼裝置100相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
語音編碼裝置700還具備預(yù)測系數(shù)決定單元704,這方面與語音編碼裝置100不同。另外,語音編碼裝置700的增益量化單元705與語音編碼裝置100的增益量化單元105在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
預(yù)測系數(shù)決定單元704內(nèi)置有存儲了表示先前幀的量化對象頻帶的頻帶信息的緩存器,基于先前幀的頻帶信息,決定用于增益量化單元705的量化中的預(yù)測系數(shù),并將所決定的預(yù)測系數(shù)輸出到增益量化單元705。
增益量化單元705在進(jìn)行預(yù)測編碼時(shí),用從預(yù)測系數(shù)決定單元704輸入的預(yù)測系數(shù)來代替事先決定的預(yù)測系數(shù),這方面與語音編碼裝置100的增益量化單元105不同。
以下,說明預(yù)測系數(shù)決定單元704中的決定預(yù)測系數(shù)的動作。
預(yù)測系數(shù)決定單元704內(nèi)置有存儲在先前幀中從頻帶選擇單元102輸入的頻帶信息m_max的緩存器。這里,以內(nèi)置有存儲先前三幀的頻帶信息m_max的緩存器的情況為例進(jìn)行說明。
預(yù)測系數(shù)決定單元704使用內(nèi)置的緩存器中所存儲的頻帶信息m_max以及在當(dāng)前幀中從頻帶選擇單元102輸入的頻帶信息m_max,求在當(dāng)前幀的量化對象頻帶與先前幀的量化對象頻帶之間共用的子帶的數(shù)目,在共用的子帶的數(shù)目為規(guī)定值以上時(shí),將預(yù)測系數(shù)決定為組(set)A,并將其輸出到增益量化單元705。而且,在共用的子帶的數(shù)目小于規(guī)定值時(shí),將預(yù)測系數(shù)決定為組B,并將其輸出到增益量化單元705。這里,預(yù)測系數(shù)的組A與預(yù)測系數(shù)的組B相比,更重視先前幀的值,并且是使先前幀的增益值的權(quán)重更大的參數(shù)組。例如,在預(yù)測階數(shù)為四階時(shí),能夠?qū)⒔MA決定為(αa0=0.60、αa1=0.25、αa2=0.10、αa3=0.05),將組B決定為(αb0=0.80、αb1=0.10、αb2=0.05、αb3=0.05)。
接著,預(yù)測系數(shù)決定單元704使用當(dāng)前幀中從頻帶選擇單元102輸入的頻帶信息m_max,對內(nèi)置的緩存器進(jìn)行更新。
接著,說明增益量化單元705中的預(yù)測編碼的動作。
增益量化單元705內(nèi)置有緩存器,該緩存器用于存儲在先前幀中所獲得的量化增益值。增益量化單元705通過使用從預(yù)測系數(shù)決定單元704輸入的預(yù)測系數(shù)以及內(nèi)置的緩存器中所存儲的先前幀的量化增益值Ctj,預(yù)測當(dāng)前幀的增益值,進(jìn)行量化。具體而言,增益量化單元705對L個(gè)子帶的每個(gè)子帶,搜索由GQ個(gè)的增益碼向量構(gòu)成的內(nèi)置的增益碼本,在預(yù)測系數(shù)為組A時(shí),求使下述的式(26)的結(jié)果為最小的增益碼向量的索引,在預(yù)測系數(shù)為組B時(shí),求使下述的式(27)的結(jié)果為最小的增益碼向量的索引。
在式(26)及式(27)中,GCij表示構(gòu)成增益碼本的增益碼向量,i表示增益碼向量的索引,j表示增益碼向量的元素的索引。這里,Ctj表示時(shí)間上前t幀的增益的值,例如t=1時(shí),Ctj表示時(shí)間上前一幀的增益值而且,α是增益量化單元705中所存儲的四階的線性預(yù)測系數(shù)。另外,增益量化單元705將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量量化。另外,增益量化單元705在內(nèi)置的緩存器中對應(yīng)于先前幀的子帶的增益值不存在時(shí),增益量化單元705在上述的式(26)或式(27)中,用內(nèi)置的緩存器中的頻率上最接近的子帶的增益值來代替。
圖13是表示本發(fā)明實(shí)施方式4的語音解碼裝置800的主要結(jié)構(gòu)的方框圖。另外,語音解碼裝置800具有與圖3所示的語音解碼裝置200相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
語音解碼裝置800還具備預(yù)測系數(shù)決定單元803,這方面與語音解碼裝置200不同。另外,語音解碼裝置800的增益反量化單元804與語音解碼裝置200的增益反量化單元204在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
預(yù)測系數(shù)決定單元803內(nèi)置有存儲在先前幀中從分離單元201輸入的頻帶信息的緩存器,基于先前幀的頻帶信息,決定用于增益反量化單元804的量化的預(yù)測系數(shù),并將所決定的預(yù)測系數(shù)輸出到增益反量化單元804。
增益反量化單元804在進(jìn)行預(yù)測解碼時(shí),用從預(yù)測系數(shù)決定單元803輸入的預(yù)測系數(shù)來代替事先決定的預(yù)測系數(shù),這方面與語音解碼裝置200的增益反量化單元204不同。
預(yù)測系數(shù)決定單元803中的預(yù)測系數(shù)的決定方法與語音編碼裝置700的預(yù)測系數(shù)決定單元704中的預(yù)測系數(shù)的決定方法相同,所以省略對預(yù)測系數(shù)決定單元803的動作的詳細(xì)的說明。
接著,說明增益反量化單元804中的預(yù)測解碼的動作。
增益反量化單元804內(nèi)置有存儲先前幀中所獲得的增益值的緩存器。增益反量化單元804使用從預(yù)測系數(shù)決定單元803輸入的預(yù)測系數(shù)以及內(nèi)置的緩存器中所存儲的先前幀的增益值,預(yù)測當(dāng)前幀的增益值,進(jìn)行反量化。具體而言,增益反量化單元804內(nèi)置有與語音編碼裝置700的增益量化單元705相同的增益碼本,在從預(yù)測系數(shù)決定單元803輸入的預(yù)測系數(shù)為組A時(shí)根據(jù)下述的式(28)或在預(yù)測系數(shù)為組B時(shí)根據(jù)下述的式(29),進(jìn)行增益的反量化而獲得增益值Gain_q’。
在式(28)及式(29)中,C”tj表示時(shí)間上前t幀的增益的值,例如t=1時(shí),C”tj表示前一幀的增益值。而且,αai及αbi表示從預(yù)測系數(shù)決定單元803輸入的預(yù)測系數(shù)的組A及組B。增益反量化單元804將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量反量化。
這樣,根據(jù)本實(shí)施方式,在對各個(gè)幀的不同量化對象頻帶的頻域參數(shù)進(jìn)行量化時(shí),從多個(gè)預(yù)測系數(shù)的組中選擇下述的預(yù)測系數(shù)的組,進(jìn)行預(yù)測編碼,即,該預(yù)測系數(shù)的組為,先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間的共用的子帶數(shù)越大,使先前幀的增益值的權(quán)重越大的組。因此,能夠進(jìn)一步提高語音編碼的編碼精度。
另外,在本實(shí)施方式中,以下述情況為例進(jìn)行了說明,即事先準(zhǔn)備兩種預(yù)測系數(shù)組,根據(jù)先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶數(shù)目,切換用于預(yù)測編碼的預(yù)測系數(shù),但本發(fā)明并不限于此,也可以事先準(zhǔn)備三種以上的預(yù)測系數(shù)。
而且,在本實(shí)施方式中,說明了以下的情況,當(dāng)前幀中的量化對象的頻帶在先前幀中未被量化過時(shí),對此用在先前幀中最接近的頻帶的值來代替,但本發(fā)明并不限于此,也可以在當(dāng)前幀中的量化對象的頻帶的值在先前幀中未被量化過時(shí),使相對應(yīng)的先前幀的預(yù)測系數(shù)為“0”,將該幀的預(yù)測系數(shù)與當(dāng)前幀的預(yù)測系數(shù)相加,計(jì)算新的預(yù)測系數(shù)的組,使用該預(yù)測系數(shù)進(jìn)行預(yù)測編碼。由此,能夠更靈活地切換預(yù)測編碼的效果,可進(jìn)一步提高語音編碼的編碼精度。
(實(shí)施方式5) 圖14是表示本發(fā)明實(shí)施方式5的語音編碼裝置1000的主要結(jié)構(gòu)的方框圖。另外,語音編碼裝置1000具有與圖6所示的語音編碼裝置300相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
語音編碼裝置1000還具備頻帶擴(kuò)展編碼單元1007,這方面與語音編碼裝置300不同。另外,語音編碼裝置1000的第二層編碼單元1008和復(fù)用單元1009與語音編碼裝置300的第二層編碼單元308和復(fù)用單元309在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
頻帶擴(kuò)展編碼單元1007使用從第一頻域變換單元305輸入的第一層MDCT系數(shù)及從第二頻域變換單元307輸入的輸入MDCT系數(shù)進(jìn)行頻帶擴(kuò)展編碼,并將所獲得的頻帶擴(kuò)展編碼信息輸出到復(fù)用單元1009。
復(fù)用單元1009除了將第一層編碼信息及第二層編碼信息以外,還將頻帶擴(kuò)展編碼信息進(jìn)行復(fù)用,僅在這方面與復(fù)用單元309不同。
圖15是表示頻帶擴(kuò)展編碼單元1007的內(nèi)部的主要結(jié)構(gòu)的方框圖。
在圖15中,頻帶擴(kuò)展編碼單元1007包括高頻頻譜估計(jì)單元1071及校正比例因子編碼單元1072。
高頻頻譜估計(jì)單元1071利用從第二頻域變換單元307輸入的輸入MDCT系數(shù)的信號頻帶0~FL的低頻頻譜,估計(jì)信號頻帶FL~FH的高頻頻譜,獲得估計(jì)頻譜。估計(jì)頻譜的導(dǎo)出方法為,基于低頻頻譜,將該低頻頻譜進(jìn)行變形,從而求與高頻頻譜的相似度為最大的估計(jì)頻譜。高頻頻譜估計(jì)單元1071對有關(guān)該估計(jì)頻譜的信息(估計(jì)信息)進(jìn)行編碼,并將所獲得的編碼參數(shù)輸出,而且將估計(jì)頻譜自身提供給校正比例因子編碼單元1072。
在以下的說明中,將從高頻頻譜估計(jì)單元1071輸出的估計(jì)頻譜稱為第一頻譜,將從第一頻域變換單元305輸出的第一層MDCT系數(shù)(高頻頻譜)稱為第二頻譜。
這里,將在上述說明中出現(xiàn)的各個(gè)頻譜匯總而與信號頻帶一起表示時(shí),如下所示。
窄帶頻譜(低頻頻譜)…0~FL 寬帶頻譜…0~FH 第一頻譜(估計(jì)頻譜)…FL~FH 第二頻譜(高頻頻譜)…FL~FH 校正比例因子編碼單元1072對第一頻譜的比例因子進(jìn)行校正,以使第一頻譜的比例因子與第二頻譜的比例因子相近,并對有關(guān)該校正比例因子的信息進(jìn)行編碼后輸出。
從頻帶擴(kuò)展編碼單元1007輸出到復(fù)用單元1009的頻帶擴(kuò)展編碼信息包括從高頻頻譜估計(jì)單元1071輸出的估計(jì)信息的編碼參數(shù)及從校正比例因子編碼單元1072輸出的校正比例因子的編碼參數(shù)。
圖16是表示校正比例因子編碼單元1072的內(nèi)部的主要結(jié)構(gòu)的方框圖。
校正比例因子編碼單元1072包括比例因子計(jì)算單元1721和1722、校正比例因子碼本1723、乘法器1724、減法器1725、判定單元1726、加權(quán)誤差計(jì)算單元1727以及搜索單元1728,各單元進(jìn)行以下的動作。
比例因子計(jì)算單元1721將輸入的第二頻譜的信號頻帶FL~FH分割為多個(gè)子帶,求各個(gè)子帶所包含的頻譜的大小,并將其輸出到減法器1725。具體而言,分割為子帶時(shí),與臨界頻帶關(guān)聯(lián)對應(yīng)地進(jìn)行,并以巴克(Bark)尺度等間隔地進(jìn)行分割。而且,比例因子計(jì)算單元1721求各個(gè)子帶所包含的頻譜的平均振幅,將其作為比例因子SF2(k){0≦k<NB}。其中,NB表示子帶數(shù)目。另外,也可以用最大振幅值等來代替平均振幅。
比例因子計(jì)算單元1722將輸入的第一頻譜的信號頻帶FL~FH分割為多個(gè)子帶,計(jì)算各個(gè)子帶的第一比例因子SF1(k){0≦k<NB},并將其輸出到乘法器1724。與比例因子計(jì)算單元1721同樣地,也可以用最大振幅值等來代替平均振幅。
在以后的處理中,將多個(gè)子帶中的各個(gè)參數(shù)匯總為一個(gè)向量值。例如,將NB個(gè)比例因子表示為一個(gè)向量。然后,以對每個(gè)該向量進(jìn)行各種處理的情況,即進(jìn)行向量量化的情況為例進(jìn)行說明。
校正比例因子碼本1723存儲多個(gè)校正比例因子的候補(bǔ),并根據(jù)來自搜索單元1728的指示,將所存儲的校正比例因子的候補(bǔ)中的一個(gè)依次輸出到乘法器1724。校正比例因子碼本1723中所存儲的校正比例因子的多個(gè)候補(bǔ)用向量來表示。
乘法器1724將從比例因子計(jì)算單元1722輸出的第一比例因子與從校正比例因子碼本1723輸出的校正比例因子的候補(bǔ)相乘,并將相乘結(jié)果提供給減法器1725。
減法器1725從由比例因子計(jì)算單元1721輸出的第二比例因子中減去乘法器1724的輸出,即減去第一比例因子與校正比例因子候補(bǔ)的乘積,并將由此獲得的誤差信號提供給加權(quán)誤差計(jì)算單元1727及判定單元1726。
判定單元1726基于由減法器1725提供的誤差信號的符號,決定將提供給加權(quán)誤差計(jì)算單元1727的權(quán)重向量。具體而言,將由減法器1725提供的誤差信號d(k)用以下的式(30)來表示。
d(k)=SF2(k)-vi(k)·SF1(k)(0≤k<NB)...(30) 其中,vi(k)表示第i位的校正比例因子的候補(bǔ)。判定單元1726調(diào)查d(k)的符號,在其為正號時(shí)選擇Wpos,在其為負(fù)號時(shí)選擇Wneg作為權(quán)重(weight),將由其構(gòu)成的權(quán)重向量w(k)輸出到加權(quán)誤差計(jì)算單元1727。這些權(quán)重存在以下的式(31)的大小關(guān)系。
0<wpos<wneg ...(31) 例如,子帶數(shù)目NB=4,d(k)的符號為{+,-,-,+}時(shí),輸出到加權(quán)誤差計(jì)算單元1727的權(quán)重向量w(k)表示為w(k)={wpos’wneg’wneg’wpos}。
加權(quán)誤差計(jì)算單元1727首先計(jì)算由減法器1725提供的誤差信號的平方值,接著,將由判定單元1726提供的權(quán)重向量w(k)與誤差信號的平方值相乘,計(jì)算加權(quán)平方誤差E,并將計(jì)算結(jié)果提供給搜索單元1728。這里,加權(quán)平方誤差E如以下的式(32)所示。
搜索單元1728控制校正比例因子碼本1723,使其依次輸出所存儲的校正比例因子的候補(bǔ),通過閉環(huán)處理,求從加權(quán)誤差計(jì)算單元1727輸出的加權(quán)平方誤差E為最小的校正比例因子的候補(bǔ)。搜索單元1728將求出的校正比例因子的候補(bǔ)的索引iopt作為編碼參數(shù)輸出。
如上所述,根據(jù)誤差信號的符號設(shè)定用于計(jì)算加權(quán)平方誤差時(shí)的權(quán)重,而且該權(quán)重存在如式(30)所示的關(guān)系時(shí),能夠獲得下述的作用。也就是說,所謂誤差信號d(k)為正的情況是指下述的情況,即在解碼端生成的解碼值(對編碼端而言是,將校正比例因子候補(bǔ)與第一比例因子相乘獲得的值)小于作為目標(biāo)值的第二比例因子。而且,所謂誤差信號d(k)為負(fù)的情況是指下述的情況,即在解碼端生成的解碼值大于作為目標(biāo)值的第二比例因子。因此,通過進(jìn)行設(shè)定,以使誤差信號d(k)為正時(shí)的權(quán)重小于誤差信號d(k)為負(fù)時(shí)的權(quán)重,從而在平方誤差為相同程度的值時(shí),生成比第二比例因子小的解碼值的校正比例因子候補(bǔ)容易被選擇。
通過頻帶擴(kuò)展編碼單元1007的處理,能夠獲得下述的改善效果。例如,如本實(shí)施方式,在利用低頻頻譜來估計(jì)高頻頻譜時(shí),一般而言能夠?qū)崿F(xiàn)低比特率化。但是,實(shí)現(xiàn)低比特率化的另一方面,如上所述,不能說估計(jì)頻譜的精度即估計(jì)頻譜與高頻頻譜之間的近似性足夠得高。此時(shí),比例因子的解碼值大于目標(biāo)值,且量化后的比例因子作用于強(qiáng)調(diào)估計(jì)頻譜的方向時(shí),對人耳而言,容易將精度低下的估計(jì)頻譜感覺為質(zhì)量劣化。反之,比例因子的解碼值小于目標(biāo)值,且量化后的比例因子作用于將該估計(jì)頻譜衰減的方向時(shí),能夠獲得下述的效果,即估計(jì)頻譜的精度低下不明顯,改善解碼信號的音質(zhì)。另外,該傾向能夠在基于計(jì)算機(jī)的模擬中得到確認(rèn)。
圖17是表示第二層編碼單元1008的內(nèi)部的主要結(jié)構(gòu)的方框圖。另外,第二層編碼單元1008具有與圖7所示的第二層編碼單元308相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。第二層編碼單元1008的殘差MDCT系數(shù)計(jì)算單元1081與第二層編碼單元308的殘差MDCT系數(shù)計(jì)算單元381在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
殘差MDCT系數(shù)計(jì)算單元1081基于輸入的輸入MDCT系數(shù)與第一層擴(kuò)展MDCT系數(shù),在第二層編碼單元中計(jì)算作為量化對象的殘差MDCT。殘差MDCT系數(shù)計(jì)算單元1081對頻帶擴(kuò)展編碼單元1007未進(jìn)行擴(kuò)展的頻帶,將輸入MDCT系數(shù)與第一層擴(kuò)展MDCT系數(shù)之間的殘差作為殘差MDCT系數(shù),對頻帶擴(kuò)展編碼單元1007進(jìn)行了擴(kuò)展的頻帶,不是將殘差而是將輸入MDCT系數(shù)自身作為殘差MDCT系數(shù),這方面與實(shí)施方式2的殘差MDCT系數(shù)計(jì)算單元381不同。
圖18是表示本發(fā)明實(shí)施方式5的語音解碼裝置1010的主要結(jié)構(gòu)的方框圖。另外,語音解碼裝置1010具有與圖8所示的語音解碼裝置400相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
語音解碼裝置1010還具有頻帶擴(kuò)展解碼單元1012及時(shí)域變換單元1013,這方面與語音解碼裝置400不同。另外,語音解碼裝置1010的控制單元1011、第二層解碼單元1015、開關(guān)1017與語音解碼裝置400的控制單元401、第二層解碼單元405、開關(guān)407在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
控制單元1011對從語音編碼裝置1000傳輸?shù)谋忍亓鞯慕Y(jié)構(gòu)要素進(jìn)行分析,并根據(jù)該比特流的結(jié)構(gòu)要素,自適應(yīng)地將合適的編碼信息輸出到第一層解碼單元402、頻帶擴(kuò)展解碼單元1012以及第二層解碼單元1015,而且將控制信息輸出到開關(guān)1017。具體而言,控制單元1011在比特流由第一層編碼信息、頻帶擴(kuò)展編碼信息以及第二層編碼信息構(gòu)成時(shí),將第一層編碼信息輸出到第一層解碼單元402,將頻帶擴(kuò)展編碼信息輸出到頻帶擴(kuò)展解碼單元1012,將第二層編碼信息輸出到第二層解碼單元1015。而且,控制單元1011在比特流僅由第一層編碼信息及頻帶擴(kuò)展編碼信息構(gòu)成時(shí),將第一層編碼信息輸出到第一層解碼單元402,將頻帶擴(kuò)展編碼信息輸出到頻帶擴(kuò)展解碼單元1012。而且,控制單元1011在比特流僅由第一層編碼信息構(gòu)成時(shí),將第一層編碼信息輸出到第一層解碼單元402。而且,控制單元1011將對開關(guān)1017進(jìn)行控制的控制信息輸出到控制開關(guān)1017。
頻帶擴(kuò)展解碼單元1012使用從控制單元1011輸入的頻帶擴(kuò)展編碼信息及從頻域變換單元404輸入的第一層解碼MDCT系數(shù),進(jìn)行頻帶擴(kuò)展處理,獲得第一層擴(kuò)展MDCT系數(shù)。然后,頻帶擴(kuò)展解碼單元1012將所獲得的第一層擴(kuò)展MDCT系數(shù)輸出到時(shí)域變換單元1013及第二層解碼單元1015。在后面敘述頻帶擴(kuò)展解碼單元1012的內(nèi)部的主要結(jié)構(gòu)及具體動作。
時(shí)域變換單元1013對從頻帶擴(kuò)展解碼單元1012輸入的第一層擴(kuò)展MDCT系數(shù)進(jìn)行IMDCT,將作為時(shí)域分量獲得的第一層擴(kuò)展解碼信號輸出到開關(guān)1017。
第二層解碼單元1015使用從控制單元1011輸入的第二層編碼信息及從頻帶擴(kuò)展解碼單元1012輸入的第一層擴(kuò)展MDCT系數(shù)進(jìn)行增益的反量化及形狀的反量化,獲得第二層解碼MDCT系數(shù)。第二層解碼單元1015將所獲得的第二層解碼MDCT系數(shù)與第一層解碼MDCT系數(shù)相加,并將所獲得的相加結(jié)果作為相加MDCT系數(shù)輸出到時(shí)域變換單元406。在后面敘述第二層解碼單元1015的內(nèi)部的主要結(jié)構(gòu)及具體動作。
開關(guān)1017基于從控制單元1011輸入的控制信息,在輸入到語音解碼裝置1010的比特流由第一層編碼信息、頻帶擴(kuò)展編碼信息以及第二層編碼信息構(gòu)成時(shí),輸出從時(shí)域變換單元406輸入的第二層解碼信號作為輸出信號。而且,開關(guān)1017在比特流由第一層編碼信息以及頻帶擴(kuò)展編碼信息構(gòu)成時(shí),輸出從時(shí)域變換單元1013輸入的第一層擴(kuò)展解碼信號作為輸出信號。而且,開關(guān)1017在比特流僅由第一層編碼信息構(gòu)成時(shí),輸出從第一層解碼單元402輸入的第一層解碼信號作為輸出信號。
圖19是表示頻帶擴(kuò)展解碼單元1012的內(nèi)部的主要結(jié)構(gòu)的方框圖。頻帶擴(kuò)展解碼單元1012由高頻頻譜解碼單元1121、校正比例因子解碼單元1122、乘法器1123以及連接單元1124構(gòu)成。
高頻頻譜解碼單元1121使用從控制單元1011輸入的頻帶擴(kuò)展編碼信息所包含的估計(jì)信息的編碼參數(shù)和第一頻譜,對信號頻帶FL~FH的估計(jì)頻譜(細(xì)微頻譜)進(jìn)行解碼。所獲得的估計(jì)頻譜被提供給乘法器1123。
校正比例因子解碼單元1122使用從控制單元1011輸入的頻帶擴(kuò)展編碼信息所包含的校正比例因子的編碼參數(shù),對校正比例因子進(jìn)行解碼。具體而言,參照內(nèi)置的校正比例因子碼本(未圖示),將對應(yīng)的校正比例因子輸出到乘法器1123。
乘法器1123將從校正比例因子解碼單元1122輸出的校正比例因子與從高頻頻譜解碼單元1121輸出的估計(jì)頻譜相乘,并將相乘結(jié)果輸出到連接單元1124。
連接單元1124將第一頻譜與從乘法器1123輸出的估計(jì)頻譜在頻率軸上連接,生成信號頻帶0~FH的寬帶的解碼頻譜,并將其作為第一層擴(kuò)展MDCT系數(shù)輸出到時(shí)域變換單元1013。
通過頻帶擴(kuò)展解碼單元1012,在高層的頻域的編碼中,將輸入信號變換到頻域的系數(shù)而對比例因子進(jìn)行量化時(shí),使用使比例因子變小的量化候補(bǔ)容易被選擇的加權(quán)失真尺度,進(jìn)行比例因子的量化。也就是說,量化后的比例因子小于量化前的比例因子的比例因子容易被選擇。因此,即使在分配給比例因子的量化的比特?cái)?shù)不充足時(shí),也能夠抑制聽覺上的主觀質(zhì)量的劣化。
圖20是表示第二層解碼單元1015的內(nèi)部的主要結(jié)構(gòu)的方框圖。另外,第二層解碼單元1015具有與圖9所示的第二層解碼單元405相同的基本結(jié)構(gòu),對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
第二層解碼單元1015的相加MDCT系數(shù)計(jì)算單元1151與第二層解碼單元405的相加MDCT系數(shù)計(jì)算單元452在一部分處理上存在不同,為了表示該不同而對其附加不同的標(biāo)號。
相加MDCT系數(shù)計(jì)算單元1151從頻帶擴(kuò)展解碼單元1012輸入第一層擴(kuò)展MDCT系數(shù),并從增益反量化單元204輸入第二層解碼MDCT系數(shù)。相加MDCT系數(shù)計(jì)算單元1151將第一層擴(kuò)展MDCT系數(shù)與第二層解碼MDCT系數(shù)相加,計(jì)算相加MDCT系數(shù)。但是,相加MDCT系數(shù)計(jì)算單元1151對第一層擴(kuò)展MDCT系數(shù)中的、進(jìn)行了頻帶擴(kuò)展的頻帶,加上第一層擴(kuò)展MDCT系數(shù)的值,該第一層擴(kuò)展MDCT系數(shù)的值設(shè)為0。也就是說,對進(jìn)行了頻帶擴(kuò)展的頻帶,將第二層解碼MDCT系數(shù)的值作為相加MDCT系數(shù)的值。
這樣,根據(jù)本實(shí)施方式,在各個(gè)幀中以不同的頻帶的頻率分量為量化對象時(shí),適用利用了頻帶擴(kuò)展技術(shù)的可擴(kuò)展編碼,而且自適應(yīng)地進(jìn)行非時(shí)間性的參數(shù)的預(yù)測編碼。因此,能夠降低語音編碼的編碼信息量,而且進(jìn)一步降低語音/音頻信號的編碼誤差及解碼信號的音質(zhì)劣化。
而且,對通過頻帶擴(kuò)展編碼方法進(jìn)行了擴(kuò)展的頻帶的分量不計(jì)算殘差,所以不會在高層增大量化對象分量的能量,能夠提高量化效率。
另外,在本實(shí)施方式中,以下述情況為例進(jìn)行了說明,即在編碼裝置中采用了,利用由第一層解碼單元解碼出的低頻分量與輸入信號的高頻分量之間的相關(guān)來計(jì)算頻帶擴(kuò)展編碼信息的方法,但本發(fā)明并不限于此,在采用下述方法的結(jié)構(gòu)中也能夠同樣地適用,即不計(jì)算頻帶擴(kuò)展編碼信息而如AMR-WB(Adaptive MultiRate-WideBand自適應(yīng)多速率寬帶編碼)那樣以噪聲分量模擬地生成高頻段。而且,在本實(shí)施方式中已說明的頻帶擴(kuò)展編碼方法或不利用在AMR-WB中都利用的高頻分量生成方法的可擴(kuò)展編碼/解碼方法中,也能夠同樣地適用本發(fā)明的頻帶選擇方法。
(實(shí)施方式6) 圖21是表示本發(fā)明實(shí)施方式6的語音編碼裝置1100的主要結(jié)構(gòu)的方框圖。
在該圖中,語音編碼裝置1100包括下采樣單元301、第一層編碼單元302、第一層解碼單元303、上采樣單元304、第一頻域變換單元305、延遲單元306、第二頻域變換單元307、第二層編碼單元1108、以及復(fù)用單元309,并且該語音編碼裝置采用由二層構(gòu)成的可擴(kuò)展的結(jié)構(gòu)。另外,在第一層中,適用CELP方式的語音編碼方法,在第二層編碼中,適用本發(fā)明實(shí)施方式1中已說明的語音編碼方法。
另外,在圖21所示的語音編碼裝置1100中除第二層編碼單元1108以外的結(jié)構(gòu)要素與圖6所示的語音編碼裝置300的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
圖22是表示第二層編碼單元1108的內(nèi)部的主要結(jié)構(gòu)的方框圖。第二層編碼單元1108主要包括殘差MDCT系數(shù)計(jì)算單元381、頻帶選擇單元1802、形狀量化單元103、有無預(yù)測編碼判定單元104、增益量化單元1805以及復(fù)用單元106。另外,在第二層編碼單元1108中除頻帶選擇單元1802和增益量化單元1805以外的結(jié)構(gòu)要素與圖7所示第二層編碼單元308的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
頻帶選擇單元1802首先將殘差MDCT系數(shù)Xk分割為多個(gè)子帶。這里,以將其均等地分割為J(J為自然數(shù))個(gè)子帶的情況為例進(jìn)行說明。然后,頻帶選擇單元1802從J個(gè)子帶中選擇L(L為自然數(shù))個(gè)子帶,從而獲得M(M為自然數(shù))種的域。
圖23是例示頻帶選擇單元1802中所獲得的域的結(jié)構(gòu)的圖。
在該圖中,子帶的數(shù)目為17個(gè)(J=17),域的種類為8種(M=8),各個(gè)域由兩個(gè)子帶群(構(gòu)成該兩個(gè)子帶群的子帶數(shù)目分別為三個(gè)和二個(gè))構(gòu)成。這里,兩個(gè)子帶群中的、位于高頻側(cè)的由兩個(gè)子帶構(gòu)成的子帶群,在所有的幀中是固定的,其子帶的索引例如為15、16。例如,域4由子帶6~8、15、16構(gòu)成。
接著,頻帶選擇單元1802根據(jù)下述的式(33),計(jì)算M種的各個(gè)域的平均能量E(m)。
在該式中,j’表示J個(gè)的各個(gè)子帶的索引,m表示M種的各個(gè)域的索引。另外,Region(m)意味著構(gòu)成域m的L個(gè)子帶的索引的集合,B(j’)表示構(gòu)成子帶j’的多個(gè)MDCT系數(shù)的索引中的最小值。W(j’)表示子帶j’的帶寬,在以下的說明中,以J個(gè)子帶的各個(gè)子帶的帶寬都相等的情況即W(j’)為常數(shù)的情況為例進(jìn)行說明。
接著,頻帶選擇單元1802在選擇平均能量E(m)為最大的域例如域m_max時(shí),選擇j’∈Region(m_max)的子帶所構(gòu)成的頻帶作為量化對象頻帶,并將表示該域的索引m_max作為頻帶信息輸出到形狀量化單元103、有無預(yù)測編碼判定單元104以及復(fù)用單元106。而且,頻帶選擇單元1802將殘差MDCT系數(shù)Xk輸出到形狀量化單元103。
增益量化單元1805內(nèi)置有存儲先前幀中所獲得的量化增益值的緩存器。在從有無預(yù)測編碼判定單元104輸入的判定結(jié)果表示進(jìn)行了預(yù)測編碼的判定結(jié)果時(shí),增益量化單元1805通過使用內(nèi)置的緩存器中所存儲的先前幀的量化增益值Ctj,預(yù)測當(dāng)前幀的增益值,進(jìn)行量化。具體而言,增益量化單元1805對L個(gè)子帶的每個(gè)子帶,搜索由GQ個(gè)的增益碼向量構(gòu)成的內(nèi)置的增益碼本來求使下述的式(34)的結(jié)果為最小的增益碼向量的索引。
在該式中,GCik表示構(gòu)成增益碼本的增益碼向量,i表示增益碼向量的索引,k表示增益碼向量的元素的索引。例如,在構(gòu)成域的子帶數(shù)目為5時(shí)(L=5時(shí)),k取0~4的值。而且,這里,按照子帶的索引從小到大的順序,連接所選擇的域的子帶的增益,將連續(xù)的增益作為一個(gè)L維增益碼向量來處理,進(jìn)行向量量化。因此,使用圖23進(jìn)行說明時(shí),在域4的情況,連接子帶索引6、7、8、15、16的增益值,作為5維的增益碼向量來進(jìn)行處理。而且,這里,Ctj’表示時(shí)間上前t幀的增益的值,例如t=1時(shí),Ctj’表示時(shí)間上前一幀的增益值而且,α是增益量化單元1805中所存儲的四階的線性預(yù)測系數(shù)。
增益量化單元1805將使上述的式(34)的結(jié)果為最小的增益碼向量的索引G_min作為增益編碼信息輸出到復(fù)用單元106。另外,內(nèi)置的緩存器中對應(yīng)于先前幀的子帶的增益值不存在時(shí),增益量化單元1805在上述的式(34)中,用內(nèi)置的緩存器中的頻率上最接近的子帶的增益值來代替。
另一方面,在從有無預(yù)測編碼判定單元104輸入的判定結(jié)果表示不進(jìn)行預(yù)測編碼的判定結(jié)果時(shí),增益量化單元1805根據(jù)下述的式(35),對從形狀量化單元103輸入的理想增益值Gain_i(j’)進(jìn)行直接量化。這里,增益量化單元1805也是將理想增益值作為L維向量來處理,進(jìn)行向量量化。
這里,將使上述的式(35)為最小的碼本的索引記為G_min。
增益量化單元1805將G_min作為增益編碼信息輸出到復(fù)用單元106。而且,增益量化單元1805使用在當(dāng)前幀中所獲得的增益編碼信息G_min及量化增益值Ctj,根據(jù)下述的式(36),對內(nèi)置的緩存器進(jìn)行更新。也就是說,在式(36)中,使增益碼向量GCG_minj的元素索引j以及滿足j’∈Region(m_max)的j’分別以從小到大的順序關(guān)聯(lián)對應(yīng),對C1j’的值進(jìn)行更新。
圖24是表示本實(shí)施方式的語音解碼裝置1200的主要結(jié)構(gòu)的方框圖。
在該圖中,語音解碼裝置1200包括控制單元401、第一層解碼單元402、上采樣單元403、頻域變換單元404、第二層解碼單元1205、時(shí)域變換單元406以及開關(guān)407。
另外,在圖24所示的語音解碼裝置1200中除第二層解碼單元1205以外的結(jié)構(gòu)要素與圖8所示的語音解碼裝置400的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
圖25是表示第二層解碼單元1205的內(nèi)部的主要結(jié)構(gòu)的方框圖。第二層解碼單元1205主要包括分離單元451、形狀反量化單元202、有無預(yù)測解碼判定單元203、增益反量化單元2504以及相加MDCT系數(shù)計(jì)算單元452。另外,在第二層解碼單元1205中除增益反量化單元2504以外的結(jié)構(gòu)要素與圖9所示第二層解碼單元405的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
增益反量化單元2504內(nèi)置有存儲先前幀中所獲得的增益值的緩存器。在從有無預(yù)測解碼判定單元203輸入的判定結(jié)果表示進(jìn)行了預(yù)測解碼的判定結(jié)果時(shí),增益反量化單元2504通過使用內(nèi)置的緩存器中所存儲的先前幀的增益值,預(yù)測當(dāng)前幀的增益值,進(jìn)行反量化。具體而言,增益反量化單元2504內(nèi)置有與語音編碼裝置100的增益量化單元105相同的增益碼本(GCG_mink)(k表示元素索引),根據(jù)下述的式(37),進(jìn)行增益的反量化而獲得增益值Gain_q’。其中,C”tj’表示時(shí)間上前t幀的增益的值,例如t=1時(shí),C”tj’表示前一幀的增益值。而且,α是增益反量化單元2504中所存儲的四階的線性預(yù)測系數(shù)。增益反量化單元2504將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量反量化。也就是說,在式(37)中,使增益碼向量GCG_mink的元素索引k及滿足j’∈Region(m_max)的j’分別以從小到大的順序關(guān)聯(lián)對應(yīng),計(jì)算Gain_q’(j’)的值。
另外,在內(nèi)置緩存器中對應(yīng)于先前幀的子帶的增益值不存在時(shí),增益反量化單元2504在上述的式(37)中,用內(nèi)置的緩存器中的頻率上最接近的子帶的增益值來代替。
另一方面,在有無預(yù)測解碼判定單元203輸入的判定結(jié)果表示不進(jìn)行預(yù)測解碼的判定結(jié)果時(shí),增益反量化單元2504使用上述的增益碼本,根據(jù)下述的式(38),對增益值進(jìn)行反量化。這里,也是將增益值作為L維向量來處理,進(jìn)行向量反量化。也就是說,在不進(jìn)行預(yù)測解碼時(shí),增益反量化單元2504使對應(yīng)于增益編碼信息G_min的增益碼向量GCkG_min直接作為增益值。另外,在式(38)中,與式(37)同樣地,使k與j’分別以從小到大的順序關(guān)聯(lián)對應(yīng)。
接著,增益反量化單元2504使用對當(dāng)前幀進(jìn)行反量化獲得的增益值以及從形狀反量化單元202輸入的形狀的值,根據(jù)下述的式(39),計(jì)算解碼MDCT系數(shù),根據(jù)下述的式(39),對內(nèi)置的緩存器進(jìn)行更新。這里,在式(40)中,使反量化后的增益的值Gain_q’(j)的j以及滿足j’∈Region(m_max)的j’分別以從小到大的順序關(guān)聯(lián)對應(yīng),對C”1j’的值進(jìn)行更新。而且,這里,將計(jì)算出的解碼MDCT系數(shù)記為X”k。而且,在MDCT系數(shù)的反量化中,k存在于B(j’)~B(j’+1)-1內(nèi)時(shí),增益值取Gain_q’(j’)的值。
增益反量化單元2504將根據(jù)上述的式(39)計(jì)算出的解碼MDCT系數(shù)X”k輸出到相加MDCT系數(shù)計(jì)算單元452。
這樣,根據(jù)本實(shí)施方式,與從全頻帶中選擇由相鄰的子帶構(gòu)成的1域作為量化對象頻帶相比,事先在整個(gè)大范圍內(nèi)設(shè)定希望改善音質(zhì)的多個(gè)頻帶,選擇在整個(gè)大范圍內(nèi)不連續(xù)的多個(gè)頻帶作為量化對象頻帶。因此,能夠同時(shí)地改善低頻部分和高頻部分兩個(gè)部分的質(zhì)量。
在本實(shí)施方式中,如圖23所示,總是在高頻側(cè)將量化對象頻帶所包含的子帶固定的理由在于,對可擴(kuò)展碼本的第一層中以及高頻部分而言,編碼失真較大。因此,在第二層中,除了選擇聽覺上重要的低中頻部分作為量化對象以外,還固定地選擇未能通過第一層高精度地進(jìn)行編碼的高頻部分作為量化對象,從而提高音質(zhì)。
另外,在本實(shí)施方式中,以下述情況為例進(jìn)行了說明,即通過在所有幀中使高頻段的同一子帶(具體而言為子帶索引15、16)包含在域中,將高頻部分的作為量化對象的頻帶固定,但本發(fā)明并不限于此,對高頻段的子帶,也可以與低頻段的子帶同樣地,從多個(gè)量化對象頻帶的候補(bǔ)中選擇作為量化對象的頻帶。此時(shí),也可以在越是高頻的子帶乘以越大的權(quán)重之后進(jìn)行選擇。而且,能夠根據(jù)輸入信號的采樣頻率、編碼比特率、第一層解碼信號的頻譜特性或輸入信號與第一層解碼信號的差分信號的頻譜特性等,自適應(yīng)地變更作為候補(bǔ)的頻帶。也可以考慮到下述方法,例如,將輸入信號與第一層解碼信號的差分信號的頻譜(殘差MDCT系數(shù))的能量分布較高的部分優(yōu)先地作為量化對象頻帶的候補(bǔ)。
而且,在本實(shí)施方式中,以下述情況為例進(jìn)行了說明,即,使構(gòu)成域的高頻側(cè)的子帶群固定,根據(jù)當(dāng)前幀中所選擇的量化對象頻帶與先前幀中所選擇的量化對象頻帶之間共用的子帶的數(shù)目,判定是否在增益量化單元適用預(yù)測編碼,但本發(fā)明并不限于此,也可以總是對構(gòu)成域的高頻側(cè)的子帶群的增益適用預(yù)測編碼,僅對低頻側(cè)的子帶群判定是否進(jìn)行預(yù)測編碼。此時(shí),僅對低頻側(cè)的子帶群,考慮當(dāng)前幀中所選擇的量化對象頻帶與先前幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目。也就是說,此時(shí),量化向量分為進(jìn)行預(yù)測編碼的部分和不進(jìn)行預(yù)測編碼的部分而被量化。這樣,由于對構(gòu)成域的高頻側(cè)的固定的子帶群總是進(jìn)行預(yù)測編碼而不判定是否進(jìn)行預(yù)測編碼,所以能夠更高效率地對增益進(jìn)行量化。
而且,在本實(shí)施方式中,以下述情況為例進(jìn)行了說明,即根據(jù)當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上前一幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目,對增益量化單元中的預(yù)測編碼的適用/不適用進(jìn)行切換,但本發(fā)明并不限于此,也可以利用當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上兩個(gè)幀以上的先前幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目。此時(shí),即使在當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上前一幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目為規(guī)定值以下時(shí),也有可能根據(jù)當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上兩個(gè)幀以上的先前幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目,在增益量化單元適用預(yù)測編碼。
而且,在本實(shí)施方式中,以域由低頻側(cè)的子帶群和高頻側(cè)的子帶群構(gòu)成的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以例如在中頻部分也設(shè)定子帶群,從而由三個(gè)以上的子帶群構(gòu)成域。而且,也可以根據(jù)輸入信號的采樣頻率、編碼時(shí)的比特率、第一層解碼信號的頻譜特性或輸入信號與第一層解碼信號的差分信號的頻譜特性等,自適應(yīng)地變更用于構(gòu)成域的子帶群的數(shù)目。
而且,在本實(shí)施方式中,以構(gòu)成域的高頻側(cè)的子帶群在所有幀中是固定的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以為構(gòu)成域的低頻側(cè)的子帶群在所有幀中是固定的。而且,也可以為構(gòu)成域的低頻側(cè)及高頻側(cè)雙方的子帶群在所有幀中是固定的,或者對每個(gè)幀搜索低頻側(cè)及高頻側(cè)雙方的子帶群并進(jìn)行選擇。而且,也可以對構(gòu)成域的子帶群中的、三個(gè)以上的子帶群適用上述的各種方法。
而且,在本實(shí)施方式中,以構(gòu)成域的子帶中的、構(gòu)成高頻側(cè)的子帶群的子帶的數(shù)目小于構(gòu)成低頻側(cè)的子帶群的子帶的數(shù)目的情況(高頻側(cè)的子帶群的子帶數(shù)目為2個(gè),低頻側(cè)子帶群的子帶數(shù)目為3個(gè))為例進(jìn)行了說明,但本發(fā)明并不限于此,構(gòu)成高頻側(cè)的子帶群的子帶數(shù)目也可以等于或大于構(gòu)成低頻側(cè)的子帶群的子帶的數(shù)目。而且,也可以根據(jù)輸入信號的采樣頻率、編碼時(shí)的比特率、第一層解碼信號的頻譜特性、輸入信號與第一層解碼信號的差分信號的頻譜特性等,自適應(yīng)地變更用于構(gòu)成各個(gè)子帶群的子帶的數(shù)目。
而且,在本實(shí)施方式中,以在第一層編碼單元302中進(jìn)行CELP編碼方式的編碼的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以進(jìn)行CELP編碼方式以外的編碼(例如變換編碼等)。
(實(shí)施方式7) 圖26是表示本發(fā)明實(shí)施方式7的語音編碼裝置1300的主要結(jié)構(gòu)的方框圖。
在該圖中,語音編碼裝置1300包括下采樣單元301、第一層編碼單元302、第一層解碼單元303、上采樣單元304、第一頻域變換單元305、延遲單元306、第二頻域變換單元307、第二層編碼單元1308、以及復(fù)用單元309,并且該語音編碼裝置采用由二層構(gòu)成的可擴(kuò)展的結(jié)構(gòu)。另外,在第一層中,適用CELP方式的語音編碼方法,在第二層編碼中,適用本發(fā)明實(shí)施方式1中已說明的語音編碼方法。
另外,在圖26所示的語音編碼裝置1300中除第二層編碼單元1308以外的結(jié)構(gòu)要素,都與圖6所示的語音編碼裝置300的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
圖27是表示第二層編碼單元1308的內(nèi)部的主要結(jié)構(gòu)的方框圖。第二層編碼單元1308主要包括殘差MDCT系數(shù)計(jì)算單元381、頻帶選擇單元102、形狀量化單元103、有無預(yù)測編碼判定單元3804、增益量化單元3805以及復(fù)用單元106。另外,在第二層編碼單元1308中除有無預(yù)測編碼判定單元3804和增益量化單元3805以外的結(jié)構(gòu)要素,都與圖7所示第二層編碼單元308的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
有無預(yù)測編碼判定單元3804內(nèi)置有存儲在先前幀中從頻帶選擇單元102輸入的頻帶信息m_max的緩存器。這里,以內(nèi)置有存儲先前三幀的頻帶信息m_max的緩存器的情況為例進(jìn)行說明。有無預(yù)測編碼判定單元3804首先使用先前幀中從頻帶選擇單元102輸入的頻帶信息m_max以及當(dāng)前幀中從頻帶選擇單元102輸入的頻帶信息m_max,檢測先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶。有無預(yù)測編碼判定單元3804判定為對從頻帶選擇單元102輸入的頻帶信息m_max所表示的L個(gè)子帶中的、時(shí)間上前一幀中作為量化對象選擇的子帶適用預(yù)測編碼,并設(shè)定Pred_Flag(j)=ON。另一方面,有無預(yù)測編碼判定單元3804判定為不對從頻帶選擇單元102輸入的頻帶信息m_max所表示的L個(gè)子帶中的、時(shí)間上前一幀中未被選擇作為量化對象的子帶適用預(yù)測編碼,并設(shè)定Pred_Flag(j)=OFF。這里,所謂Pred_Flag是表示對各個(gè)子帶適用/不適用預(yù)測編碼的判定結(jié)果的標(biāo)記,在其值為ON時(shí),意味著對子帶的增益值適用預(yù)測編碼,在其值為OFF時(shí),意味著對子帶的增益值不適用預(yù)測編碼。有無預(yù)測編碼判定單元3804將對各個(gè)子帶的判定結(jié)果輸出到增益量化單元3805。接著,有無預(yù)測編碼判定單元3804使用當(dāng)前幀中從頻帶選擇單元102輸入的頻帶信息m_max,對存儲頻帶信息的內(nèi)置的緩存器進(jìn)行更新。
增益量化單元3805內(nèi)置有存儲先前幀中所獲得的量化增益值的緩存器。增益量化單元3805根據(jù)從有無預(yù)測編碼判定單元3804輸入的判定結(jié)果,對當(dāng)前幀的增益值的量化中的有無適用預(yù)測編碼進(jìn)行切換。例如,在進(jìn)行預(yù)測編碼時(shí),增益量化單元3805對L個(gè)子帶的每個(gè)子帶,搜索由GQ個(gè)增益碼向量構(gòu)成的內(nèi)置的增益碼本,并進(jìn)行與從有無預(yù)測編碼判定單元3804輸入的判定結(jié)果相對應(yīng)的距離計(jì)算,求下述的式(41)的結(jié)果為最小的增益碼向量的索引。另外,在式(41)中,對滿足j∈Region(m_max)的所有的j,根據(jù)Pred_Flag(j)進(jìn)行某一方的距離計(jì)算,求使該誤差的合計(jì)值為最小的增益碼向量的索引。
...(41) 在該式中,GCik表示構(gòu)成增益碼本的增益碼向量,i表示增益碼向量的索引,k表示增益碼向量的元素的索引。例如,在構(gòu)成域的子帶數(shù)目為5時(shí)(L=5時(shí)),k取0~4的值。這里,Ctj表示時(shí)間上前t幀的增益的值,例如t=1時(shí),Ctj表示時(shí)間上前一幀的增益值而且,α是增益量化單元3805中所存儲的四階的線性預(yù)測系數(shù)。另外,增益量化單元3805將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量量化。
增益量化單元3805將上述的式(41)的結(jié)果為最小的增益碼向量的索引G_min作為增益編碼信息輸出到復(fù)用單元106。
增益量化單元3805將G_min作為增益編碼信息輸出到復(fù)用單元106。而且,增益量化單元3805使用當(dāng)前幀中所獲得的增益編碼信息G_min及量化增益值Ctj,根據(jù)下述的式(42),對內(nèi)置的緩存器進(jìn)行更新。另外,在式(42)中,使增益碼向量GCG_minj的元素索引j以及滿足j’∈Region(m_max)的j’分別以從小到大的順序關(guān)聯(lián)對應(yīng),對C1j’的值進(jìn)行更新。
圖28是表示本實(shí)施方式的語音解碼裝置1400的主要結(jié)構(gòu)的方框圖。
在該圖中,語音解碼裝置1400包括控制單元401、第一層解碼單元402、上采樣單元403、頻域變換單元404、第二層解碼單元1405、時(shí)域變換單元406以及開關(guān)407。
另外,在圖28所示的語音解碼裝置1400中除第二層解碼單元1405以外的結(jié)構(gòu)要素,都與圖8所示的語音解碼裝置400的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
圖29是表示第二層解碼單元1405的內(nèi)部的主要結(jié)構(gòu)的方框圖。第二層解碼單元1405主要包括分離單元451、形狀反量化單元202、有無預(yù)測解碼判定單元4503、增益反量化單元4504以及相加MDCT系數(shù)計(jì)算單元452。另外,圖29所示的第二層解碼單元1405中的除有無預(yù)測解碼判定單元4503和增益反量化4504以外的結(jié)構(gòu)要素,都與圖9所示第二層解碼單元405的結(jié)構(gòu)要素相同,對相同的結(jié)構(gòu)要素附加相同的標(biāo)號,并省略其說明。
有無預(yù)測解碼判定單元4503內(nèi)置有存儲在先前幀中從分離單元451輸入的頻帶信息m_max的緩存器。這里,以內(nèi)置有存儲先前三幀的頻帶信息m_max的緩存器的情況為例進(jìn)行說明。有無預(yù)測解碼判定單元4503首先使用先前幀中從分離單元451輸入的頻帶信息m_max以及當(dāng)前幀中從分離單元451輸入的頻帶信息m_max,檢測先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶。有無預(yù)測解碼判定單元4503判定為對從分離單元451輸入的頻帶信息m_max所表示的L個(gè)子帶中的、時(shí)間上前一幀中作為量化對象選擇出的子帶適用預(yù)測解碼,并設(shè)定Pred_Flag(j)=ON。另一方面,有無預(yù)測解碼判定單元4503判定為對從分離單元451輸入的頻帶信息m_max所表示的L個(gè)子帶中的、時(shí)間上前一幀中未被選擇作為量化對象的子帶不適用預(yù)測解碼,并設(shè)定Pred_Flag(j)=OFF。這里,所謂Pred_Flag是表示對各個(gè)子帶適用/不適用預(yù)測解碼的判定結(jié)果的標(biāo)記,在其值為ON時(shí),意味著對子帶的增益值適用預(yù)測解碼,在其值為OFF時(shí),意味著對子帶的增益值不適用預(yù)測解碼。接著,有無預(yù)測解碼判定單元4503將對各個(gè)子帶的判定結(jié)果輸出到增益反量化單元4504。接著,有無預(yù)測解碼判定單元4503使用當(dāng)前幀中從分離單元451輸入的頻帶信息m_max,對存儲頻帶信息的內(nèi)置的緩存器進(jìn)行更新。
增益反量化單元4504內(nèi)置有存儲先前幀中所獲得的增益值的緩存器,根據(jù)從有無預(yù)測解碼判定單元4503輸入的判定結(jié)果,對當(dāng)前幀的增益值的解碼中的有無適用預(yù)測解碼進(jìn)行切換。增益反量化單元4504內(nèi)置有與語音編碼裝置100的增益量化單元105相同的增益碼本,例如,在進(jìn)行預(yù)測解碼時(shí),根據(jù)下述的式(43),進(jìn)行增益的反量化而獲得增益值Gain_q’。這里,C”tj表示時(shí)間上前t幀的增益的值,例如t=1時(shí),C”tj表示前一幀的增益值。而且,α是增益反量化單元4504中所存儲的四階的線性預(yù)測系數(shù)。增益反量化單元4504將1域內(nèi)的L個(gè)子帶作為L維向量來處理,進(jìn)行向量反量化。另外,在式(43)中,使增益碼向量GCG_mink的元素索引k以及滿足j’∈Region(m_max)的j’分別以從小到大的順序關(guān)聯(lián)對應(yīng),計(jì)算Gain_q’(j’)的值。
接著,增益反量化單元4504使用對當(dāng)前幀進(jìn)行反量化獲得的增益值以及從形狀反量化單元202輸入的形狀的值,根據(jù)下述的式(44),計(jì)算解碼MDCT系數(shù),根據(jù)下述的式(45),對內(nèi)置的緩存器進(jìn)行更新。這里,在式(45)中,使反量化后的增益的值Gain_q’(j)的j以及滿足j’∈Region(m_max)的j’分別以從小到大的順序關(guān)聯(lián)對應(yīng),對C”1j’的值進(jìn)行更新。而且,這里,將計(jì)算出的解碼MDCT系數(shù)記為X”k。而且,在MDCT系數(shù)的反量化中,k存在于B(j’)~B(j’+1)-1內(nèi)時(shí),增益值取Gain_q’(j’)的值。
增益反量化單元4504將根據(jù)上述的式(44)計(jì)算出的解碼MDCT系數(shù)X”k輸出到相加MDCT系數(shù)計(jì)算單元452。
這樣,根據(jù)本實(shí)施方式,在進(jìn)行各個(gè)幀中所選擇的量化對象頻帶的增益的量化時(shí),檢測量化對象頻帶所包含的各個(gè)子帶是否在時(shí)間上先前幀中進(jìn)行了量化。然后,對在先前幀中進(jìn)行過量化的子帶,適用預(yù)測編碼,對在先前幀中未進(jìn)行過量化的子帶,不適用預(yù)測編碼,進(jìn)行向量量化。由此,與對整個(gè)向量切換預(yù)測編碼的適用/不適用的方法相比,能夠更高效率地對頻域參數(shù)進(jìn)行編碼。
而且,在本實(shí)施方式中,對下述方法進(jìn)行了說明,即根據(jù)當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上前一幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目,對增益量化單元中的預(yù)測編碼的適用/不適用進(jìn)行切換,但本發(fā)明并不限于此,也可以利用在當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上兩個(gè)幀以上的先前幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目。此時(shí),例如,即使在當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上前一幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目為規(guī)定值以下時(shí),也有可能根據(jù)當(dāng)前幀中所選擇的量化對象頻帶與時(shí)間上兩個(gè)幀以上的先前幀中所選擇的量化對象頻帶之間的共用的子帶的數(shù)目,在增益量化單元中適用預(yù)測編碼。
而且,本實(shí)施方式中已說明的量化方法也能夠與實(shí)施方式6中已說明的量化對象頻帶的選擇方法組合。例如,對下述情況進(jìn)行說明,即作為量化對象頻帶的域由低頻側(cè)的子帶群和高頻側(cè)的子帶群構(gòu)成,且高頻側(cè)的子帶群在所有幀中是固定的,對使低頻側(cè)的子帶群的增益與高頻側(cè)的子帶群的增益連續(xù)的向量進(jìn)行量化。此時(shí),對量化對象頻帶的增益的向量中的、表示高頻側(cè)的子帶群的增益的元素總是適用預(yù)測編碼,而對表示低頻側(cè)的子帶群的增益的元素不適用預(yù)測編碼,進(jìn)行向量量化。由此,與對整個(gè)向量切換預(yù)測編碼的適用/不適用的情況相比,能夠更高效率地對增益向量進(jìn)行量化。而且,此時(shí),下述方法也是高效率的,即在低頻側(cè)的子帶群中,對在先前幀中進(jìn)行了量化的子帶適用預(yù)測編碼,對在先前幀中未進(jìn)行量化的子帶不適用預(yù)測編碼,進(jìn)行向量量化。而且,對表示低頻側(cè)的子帶群的增益的元素,如在實(shí)施方式1中已說明得那樣,利用構(gòu)成時(shí)間上先前幀中所選擇的量化對象頻帶的子帶,切換預(yù)測編碼的適用/不適用而進(jìn)行量化。由此,能夠進(jìn)一步高效率地對增益向量進(jìn)行量化。另外,本發(fā)明對將上述的結(jié)構(gòu)組合獲得的結(jié)構(gòu)也能夠適用。
以上,對本發(fā)明實(shí)施方式進(jìn)行了說明。
另外,在本發(fā)明的各個(gè)實(shí)施方式中,作為選擇量化對象頻帶的方法,以在全頻帶中選擇能量為最大的域的情況為例進(jìn)行了說明,但本發(fā)明并不限于此,也可以事先預(yù)備性地選擇某頻帶,在預(yù)備性地選擇出的頻帶中最終選擇量化對象頻帶。此時(shí),根據(jù)輸入信號的采樣速率或編碼比特率,決定預(yù)備性地選擇的頻帶即可。例如,有下述方法等,在采樣速率較低時(shí),預(yù)備性地選擇低頻部分。
而且,在上述各個(gè)實(shí)施方式中,利用MDCT作為變換編碼方法,所以在上述各個(gè)實(shí)施方式中使用的“MDCT系數(shù)”,其實(shí)質(zhì)上意味著頻譜。因此,也可以將“MDCT系數(shù)”的表述更換為“頻譜”。
而且,在上述各個(gè)實(shí)施方式中示出了語音解碼裝置200、200a、400、600、800、1010、1200、1400分別輸入由語音編碼裝置100、100a、300、500、700、1000、1100、1300傳輸?shù)木幋a數(shù)據(jù)來進(jìn)行處理的例子,但也可以輸入由其他結(jié)構(gòu)的編碼裝置輸出的編碼數(shù)據(jù)來進(jìn)行處理,該其他結(jié)構(gòu)的編碼裝置能夠生成具有相同結(jié)構(gòu)的編碼數(shù)據(jù)。
而且,本發(fā)明的編碼裝置、解碼裝置以及其方法,并不限于上述各個(gè)實(shí)施方式,可以進(jìn)行各種變更后實(shí)施。例如,也可以適當(dāng)?shù)亟M合各個(gè)實(shí)施方式而實(shí)施。
本發(fā)明的編碼裝置以及解碼裝置,可以搭載在移動通信系統(tǒng)的通信終端裝置以及基站裝置上,由此能夠提供具有與上述同樣的作用效果的通信終端裝置、基站裝置以及移動通信系統(tǒng)。
另外,雖然這里以用硬件構(gòu)成本發(fā)明的情況為例進(jìn)行了說明,但是本發(fā)明也可以用軟件實(shí)現(xiàn)。例如,通過編程語言來記述本發(fā)明的編碼方法/解碼方法的算法,并在存儲器中存儲該程序,通過信息處理裝置來實(shí)行,從而能夠?qū)崿F(xiàn)與本發(fā)明的編碼裝置/解碼裝置相同的功能。
另外,用于上述實(shí)施方式的說明中使用的各功能塊通常被作為集成電路的LSI來實(shí)現(xiàn)。這些功能塊既可以被單獨(dú)地集成為一個(gè)芯片,也可以包含一部分或全部地被集成為一個(gè)芯片。
雖然這里稱為LSI,但根據(jù)集成程度,可以被稱為IC、系統(tǒng)LSI、超大LSI(Super LSI)、或特大LSI(Ultra LSI)。
另外,實(shí)現(xiàn)集成電路化的方法不僅限于LSI,也可使用專用電路或通用處理器來實(shí)現(xiàn)。也可以使用可在LSI制造后編程的FPGA(Field ProgrammableGate Array現(xiàn)場可編程門陣列),或者可重構(gòu)LSI內(nèi)部的電路單元的連接和設(shè)定的可重構(gòu)處理器(Reconfigurable Processor)。
再者,隨著半導(dǎo)體的技術(shù)進(jìn)步或隨之派生的其它技術(shù)的出現(xiàn),如果出現(xiàn)能夠替代LSI的集成電路化的新技術(shù),當(dāng)然可利用該新技術(shù)進(jìn)行功能塊的集成化。還存在著適用生物技術(shù)等的可能性。
在2006年12月13日申請的特愿第2006-336270號的日本專利申請、在2007年3月2日申請的特愿第2007-053499號的日本專利申請、在2007年5月17日申請的特愿第2007-132078號的日本專利申請以及在2007年7月13日申請的特愿第2007-185078號的日本專利申請中所包含的說明書、說明書附圖和說明書摘要的公開內(nèi)容,全部都引用于本發(fā)明。
工業(yè)實(shí)用性 本發(fā)明的編碼裝置等能夠適用于移動通信系統(tǒng)中的通信終端裝置和基站裝置等用途。
權(quán)利要求
1、編碼裝置,包括
變換單元,將輸入信號變換到頻域,獲得頻域參數(shù);
選擇單元,從分割了所述頻域獲得的多個(gè)子帶中選擇量化對象頻帶,生成表示了所述量化對象頻帶的頻帶信息;
形狀量化單元,對所述量化對象頻帶中的所述頻域參數(shù)的形狀進(jìn)行量化,獲得形狀編碼信息;以及
增益量化單元,對所述量化對象頻帶中的所述頻域參數(shù)的增益進(jìn)行編碼而獲得增益編碼信息。
2、如權(quán)利要求1所述的編碼裝置,
還包括判定單元,基于所述量化對象頻帶與先前所選擇的量化對象頻帶之間的共用的子帶的數(shù)目,判定是否進(jìn)行預(yù)測編碼,
所述增益量化單元根據(jù)所述判定單元的判定結(jié)果,對所述頻域參數(shù)的增益進(jìn)行編碼。
3、如權(quán)利要求2所述的編碼裝置,
還包括判定單元,在所述量化對象頻帶與先前所選擇的量化對象頻帶之間共用的子帶的數(shù)目為規(guī)定值以上時(shí),判定為進(jìn)行預(yù)測編碼,在所述共用的子帶的數(shù)目小于所述規(guī)定值時(shí),判定為不進(jìn)行預(yù)測編碼,
所述增益量化單元在所述判定單元判定為進(jìn)行預(yù)測編碼時(shí),使用先前的增益編碼信息對所述量化對象頻帶中的頻域參數(shù)的增益進(jìn)行預(yù)測編碼而獲得增益編碼信息,在所述判定單元判定為不進(jìn)行預(yù)測編碼時(shí),對所述量化對象頻帶中的頻域參數(shù)的增益進(jìn)行直接量化而獲得增益編碼信息。
4、如權(quán)利要求1所述的編碼裝置,
所述增益量化單元對所述頻域參數(shù)的增益進(jìn)行向量量化而獲得所述增益編碼信息。
5、如權(quán)利要求1所述的編碼裝置,
所述增益量化單元使用先前幀中的頻域參數(shù)的增益進(jìn)行所述增益的預(yù)測量化,從而獲得所述增益編碼信息。
6、如權(quán)利要求1所述的編碼裝置,
所述選擇單元在由多個(gè)子帶構(gòu)成的域中,選擇能量最大的域作為量化對象頻帶。
7、如權(quán)利要求1所述的編碼裝置,
所述選擇單元在存在與先前所選擇的量化對象頻帶之間共用的子帶的數(shù)目為規(guī)定值以上且其能量為規(guī)定值以上的候補(bǔ)頻帶時(shí),選擇所述候補(bǔ)頻帶中能量最大的頻帶作為所述量化對象頻帶,在不存在所述候補(bǔ)頻帶時(shí),選擇所述頻域的全頻帶中能量最大的頻帶作為所述量化對象頻帶。
8、如權(quán)利要求1所述的編碼裝置,
所述選擇單元在能量為規(guī)定值以上的頻帶中,選擇與先前所選擇的量化對象頻帶最接近的頻帶作為所述量化對象頻帶。
9、如權(quán)利要求1所述的編碼裝置,
所述選擇單元在越是低頻側(cè)的子帶乘以越大的權(quán)重后,選擇所述量化對象頻帶。
10、如權(quán)利要求1所述的編碼裝置,
所述選擇單元選擇低頻側(cè)的固定的子帶作為所述量化對象頻帶。
11、如權(quán)利要求1所述的編碼裝置,
所述選擇單元在先前被選擇的頻度越高的子帶乘以越大的權(quán)重后,選擇所述量化對象頻帶。
12、如權(quán)利要求2所述的編碼裝置,
還包括插補(bǔ)單元,使用先前的增益編碼信息,對所述頻帶信息所表示的子帶中先前未被量化過的子帶的頻域參數(shù)的增益進(jìn)行插補(bǔ),獲得插補(bǔ)值,
所述增益量化單元在進(jìn)行所述預(yù)測編碼時(shí),還使用所述插補(bǔ)值。
13、如權(quán)利要求2所述的編碼裝置,
還包括決定單元,決定預(yù)測系數(shù),先前幀的量化對象頻帶與當(dāng)前幀的量化對象頻帶之間共用的子帶越多,使先前幀的增益的值的權(quán)重越大,
所述增益量化單元在進(jìn)行所述預(yù)測編碼時(shí),使用所述預(yù)測系數(shù)。
14、如權(quán)利要求1所述的編碼裝置,
所述選擇單元固定地選擇規(guī)定的子帶作為所述量化對象頻帶的一部分。
15、如權(quán)利要求1所述的編碼裝置,
所述選擇單元在所述量化對象頻帶的一部分中越是高頻側(cè)的子帶乘以越大的權(quán)重后,選擇所述量化對象頻帶。
16、如權(quán)利要求2所述的編碼裝置,
所述增益量化單元對所述量化對象頻帶的一部分的頻域參數(shù)的增益進(jìn)行預(yù)測編碼,對剩余部分的頻域參數(shù)的增益進(jìn)行直接量化。
17、如權(quán)利要求1所述的編碼裝置,
所述增益量化單元對非連續(xù)的多個(gè)子帶的所述增益進(jìn)行向量量化。
18、解碼裝置,包括
接收單元,接收表示了從分割了輸入信號的頻域獲得的多個(gè)子帶中所選擇的量化對象頻帶的信息;
形狀反量化單元,對所述量化對象頻帶中的頻域參數(shù)的形狀被量化后獲得的形狀編碼信息進(jìn)行解碼而生成解碼形狀;
增益反量化單元,對所述量化對象頻帶中的頻域參數(shù)的增益被編碼后獲得的增益編碼信息進(jìn)行解碼而生成解碼增益,使用所述解碼形狀和所述解碼增益對頻域參數(shù)進(jìn)行解碼而生成解碼頻域參數(shù);以及
時(shí)域變換單元,將所述解碼頻域參數(shù)變換到時(shí)域而獲得時(shí)域解碼信號。
19、如權(quán)利要求18所述的解碼裝置,
還包括判定單元,基于所述量化對象頻帶與先前所選擇的量化對象頻帶之間的共用的子帶的數(shù)目,判定是否進(jìn)行預(yù)測解碼,
所述增益反量化單元根據(jù)所述判定單元的判定結(jié)果,對所述增益編碼信息進(jìn)行解碼而生成解碼增益。
20、如權(quán)利要求19所述的解碼裝置,
還包括判定單元,在所述量化對象頻帶與先前所選擇的量化對象頻帶之間共用的子帶的數(shù)目為規(guī)定值以上時(shí),判定為進(jìn)行預(yù)測解碼,在所述共用的子帶的數(shù)目小于所述規(guī)定值時(shí),判定為不進(jìn)行預(yù)測解碼,
所述增益反量化單元在所述判定單元判定為進(jìn)行預(yù)測解碼時(shí),使用先前的增益解碼中所獲得的增益進(jìn)行所述量化對象頻帶中的頻域參數(shù)的增益的預(yù)測解碼,在所述判定單元判定為不進(jìn)行預(yù)測解碼時(shí),對所述量化對象頻帶中的頻域參數(shù)的增益被量化后獲得的增益編碼信息進(jìn)行直接反量化。
21、編碼方法,包括以下步驟
將輸入信號變換到頻域,獲得頻域參數(shù);
從分割了所述頻域獲得的多個(gè)子帶中選擇量化對象頻帶,生成表示了所述量化對象頻帶的頻帶信息;
對所述量化對象頻帶中的所述頻域參數(shù)的形狀進(jìn)行量化,獲得形狀編碼信息;以及
對所述量化對象頻帶中的所述頻域參數(shù)的增益進(jìn)行編碼而獲得增益編碼信息。
22、解碼方法,包括以下步驟
接收表示了從分割了輸入信號的頻域獲得的多個(gè)子帶中所選擇的量化對象頻帶的信息;
對所述量化對象頻帶中的頻域參數(shù)的形狀被量化后獲得的形狀編碼信息進(jìn)行解碼而生成解碼形狀;
對所述量化對象頻帶中的頻域參數(shù)的增益被量化后獲得的增益編碼信息進(jìn)行解碼而生成解碼增益,使用所述解碼形狀和所述解碼增益對頻域參數(shù)進(jìn)行解碼而生成解碼頻域參數(shù);以及
將所述解碼頻域參數(shù)變換到時(shí)域而獲得時(shí)域解碼信號。
全文摘要
公開了能夠降低編碼信息量,并且降低語音信號的編碼誤差及解碼信號的音質(zhì)劣化的編碼裝置等。在該裝置中,頻域變換單元(101)將所輸入的語音信號變換到頻域,頻帶選擇單元(102)從分割了頻域所獲得的多個(gè)子帶中選擇量化對象頻帶,形狀量化單元(103)對量化對象頻帶的頻域參數(shù)的形狀進(jìn)行量化,根據(jù)有無預(yù)測編碼判定單元(104)的判定結(jié)果,在量化對象頻帶與先前所選擇的量化對象頻帶之間共用的子帶的數(shù)目為規(guī)定值以上時(shí),在增益量化單元(105)中對量化對象頻帶的頻域參數(shù)的增益進(jìn)行預(yù)測編碼,在共用的子帶的數(shù)目小于規(guī)定值時(shí),在增益量化單元(105)中對量化對象頻帶的頻域參數(shù)的增益進(jìn)行直接量化。
文檔編號G10L19/08GK101548316SQ20078004505
公開日2009年9月30日 申請日期2007年12月12日 優(yōu)先權(quán)日2006年12月13日
發(fā)明者山梨智史, 押切正浩 申請人:松下電器產(chǎn)業(yè)株式會社