專利名稱:聲音信號(hào)編解碼方法、編解碼裝置和聲音信號(hào)處理系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及聲音信號(hào)編碼方法、聲音信號(hào)解碼方法、編碼裝置、解碼裝置、聲音信號(hào)處理系統(tǒng)、聲音信號(hào)編碼程序以及聲音信號(hào)解碼程序。
背景技術(shù):
為了降低語音/音樂信號(hào)(聲音信號(hào))的通信、放送、蓄積所需要的成本,將語音/音樂信號(hào)壓縮為低比特率的編碼技術(shù)是很重要的。為了高效地對(duì)語音信號(hào)和音樂信號(hào)雙方進(jìn)行編碼,切換利用適于語音信號(hào)的編碼方式和適于音樂信號(hào)的編碼方式的復(fù)合型編碼方式是有效的。在使用復(fù)合型編碼方式的情況下,通過在語音序列的中途進(jìn)行編碼方式的切換,即使在輸入信號(hào)的性質(zhì)隨時(shí)間而變化的情況下,也能夠高效地進(jìn)行編碼。復(fù)合型編碼方式通常包含適于語音信號(hào)編碼的CELP方式(CELP :Code ExcitedLinear Prediction Coding、代碼激勵(lì)線性預(yù)測(cè)編碼)的編碼作為構(gòu)成要素。一般地,CELP方式的編碼器在內(nèi)部保持與過去的殘差信號(hào)有關(guān)的信息作為自適應(yīng)碼本,以便對(duì)通過對(duì)輸入信號(hào)應(yīng)用線性預(yù)測(cè)逆濾波器而得到的殘差信號(hào)進(jìn)行編碼。由于在編碼中利用該自適應(yīng)碼本,所以實(shí)現(xiàn)了高編碼效率。對(duì)語音信號(hào)和音樂信號(hào)進(jìn)行編碼的技術(shù)例如記載在專利文獻(xiàn)I等中。在專利文獻(xiàn)I中記載了對(duì)語音信號(hào)和音樂信號(hào)雙方進(jìn)行編碼的編碼算法等。專利文獻(xiàn)I的技術(shù)使用語音信號(hào)和音樂信號(hào)雙方共同的線性預(yù)測(cè)(LP)合成濾波器。LP合成濾波器根據(jù)語音信號(hào)或音樂信號(hào)的編碼,分別對(duì)語音激勵(lì)振蕩器和轉(zhuǎn)換激勵(lì)振蕩器進(jìn)行切換。在語音信號(hào)的編碼中使用現(xiàn)有的CELP技術(shù),在音樂信號(hào)的編碼中應(yīng)用新的非對(duì)稱重復(fù)相加轉(zhuǎn)換技術(shù)。在進(jìn)行共同的LP合成濾波時(shí),對(duì)重復(fù)相加操作區(qū)域的信號(hào)進(jìn)行LP系數(shù)的插值。在語音序列的中途從CELP方式以外的其他編碼方式切換為基于CELP方式的編碼方式的情況下,由于在編碼器中不保持與切換前的語音對(duì)應(yīng)的殘差信號(hào)的信息作為自適應(yīng)碼本,所以在編碼方式剛剛切換之后的幀中,編碼效率低下,由此,可能產(chǎn)生導(dǎo)致語音品質(zhì)劣化的問題。作為利用基于CELP方式以外的其他編碼方式的編碼結(jié)果對(duì)CELP方式中的編碼器的內(nèi)部狀態(tài)進(jìn)行初始化的方法的相關(guān)現(xiàn)有技術(shù),公知有作為在3rd GenerationPartnership Project(3GPP)中被標(biāo)準(zhǔn)化的語音編碼方式的Adaptive MultiRate Widebandplus (AMR-WB+、非專利文獻(xiàn)I)。AMR-WB+的編碼器求出對(duì)輸入信號(hào)進(jìn)行線性預(yù)測(cè)逆濾波器處理而得到的殘差信號(hào),然后,通過切換利用CELP方式和Transform Coded Excitation(TCX)方式這兩個(gè)編碼方式,來進(jìn)行殘差信號(hào)的編碼。AMR-WB+的編碼器在從TCX方式切換為CELP方式的情況下,使用TCX方式中的激勵(lì)信號(hào)對(duì)CELP方式中的自適應(yīng)碼本進(jìn)行更新。
現(xiàn)有技術(shù)文獻(xiàn)專利文獻(xiàn)專利文獻(xiàn)I :日本特開2003-44097號(hào)公報(bào)非專利文獻(xiàn)I 3GPP TS 26. 290 “Audio codec processing functions; ExtendedAdaptive Multi-Rate-ffideband (AMR-WB+) codec; Transcoding functions,, [online] [retrieved on5March2009]Retrieved fromthe Internet <URL http //www. 3gpp. org/ftp/Specs/html-info/26290. htm>.
發(fā)明內(nèi)容
發(fā)明要解決的課題但是,在使用切換利用基于CELP方式的編碼方式和不使用線性預(yù)測(cè)編碼的編碼方式的復(fù)合型編碼方式的情況下,在基于不使用線性預(yù)測(cè)編碼的編碼方式的編碼過程中,難以得到激勵(lì)信號(hào)。因此,在從不使用線性預(yù)測(cè)編碼的編碼方式切換為基于CELP方式的編碼方式的情況下,難以通過與切換前的語音對(duì)應(yīng)的激勵(lì)信號(hào)對(duì)CELP方式中的自適應(yīng)碼本進(jìn)行初始化。本發(fā)明的目的在于,在從不使用線性預(yù)測(cè)的編碼方式切換為基于線性預(yù)測(cè)編碼的編碼方式的情況下,將基于線性預(yù)測(cè)編碼的編碼方式的編碼單元或解碼單元的內(nèi)部狀態(tài)的初始值設(shè)定為適當(dāng)?shù)闹?,改善剛剛切換之后的幀中的語音品質(zhì)。用于解決課題的手段本發(fā)明的聲音信號(hào)編碼方法使用基于線性預(yù)測(cè)編碼方式的第I編碼單元和基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2編碼單元,對(duì)由多個(gè)幀構(gòu)成的聲音信號(hào)進(jìn)行編碼,其特征在于,該聲音信號(hào)編碼方法具有如下步驟切換步驟,在通過所述第2編碼單元對(duì)所述聲音信號(hào)的第I幀進(jìn)行了編碼后,將對(duì)緊挨著該第I幀之后的第2幀進(jìn)行編碼的編碼單元從所述第2編碼單元切換為所述第I編碼單元;以及初始化步驟,在所述切換步驟之后,通過規(guī)定方法對(duì)所述第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化。根據(jù)本發(fā)明的聲音信號(hào)編碼方法,即使在利用與線性預(yù)測(cè)編碼方式不同的編碼方式對(duì)通過該線性預(yù)測(cè)編碼方式進(jìn)行編碼的第2幀前面的第I幀進(jìn)行了編碼的情況下,通過對(duì)基于線性預(yù)測(cè)編碼方式的第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行第2幀的編碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的編碼處理。進(jìn)而,在本發(fā)明中,優(yōu)選所述第I編碼單元的所述內(nèi)部狀態(tài)是自適應(yīng)碼本的內(nèi)容或用于求出零輸入響應(yīng)的線性預(yù)測(cè)合成濾波器的延遲要素所保持的值,優(yōu)選在所述初始化步驟中,使用所述第I幀對(duì)所述第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,優(yōu)選在所述初始化步驟中,使用殘差信號(hào)進(jìn)行所述第I編碼單元的初始化,所述殘差信號(hào)是針對(duì)所述第2編碼單元編碼前的所述第I幀、或者在所述第2編碼單元編碼后進(jìn)行解碼而得到的所述第I幀中的任意一方應(yīng)用所述線性預(yù)測(cè)逆濾波器而得到的,優(yōu)選在所述初始化步驟中,使用所述第I編碼單元對(duì)位于所述第I幀前面的第3幀進(jìn)行了編碼時(shí)的線性預(yù)測(cè)系數(shù),針對(duì)所述第2編碼單元編碼前的所述第I幀、或者在所述第2編碼單元編碼后進(jìn)行解碼而得到的所述第I幀中的任意一方應(yīng)用所述線性預(yù)測(cè)逆濾波器。或者,優(yōu)選在所述初始化步驟中,在所述第2幀的碼中包含所述第I幀的線性預(yù)測(cè)系數(shù)的情況下,使用該第2幀的碼中包含的線性預(yù)測(cè)、系數(shù),針對(duì)所述第2編碼單元編碼前的所述第I幀、或者在所述第2編碼單元編碼后進(jìn)行解碼而得到的所述第I幀中的任意一方應(yīng)用所述線性預(yù)測(cè)逆濾波器。而且,在本發(fā)明中,也可以在所述初始化步驟中,使用所述第I編碼單元對(duì)位于所述第I幀前面的幀進(jìn)行了編碼時(shí)的所述第I編碼單元的內(nèi)部狀態(tài),對(duì)該第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化。并且,作為用于求出零輸入響應(yīng)的線性預(yù)測(cè)合成濾波器中的線性預(yù)測(cè)系數(shù),優(yōu)選使用所述第I編碼單元對(duì)位于所述第I幀前面的第3幀進(jìn)行了編碼時(shí)的線性預(yù)測(cè)系數(shù)、或者在所述第2幀的碼中包含所述第I幀中的線性預(yù)測(cè)系數(shù)的情況下在該第2幀的編碼時(shí)計(jì)算出的所述第I幀中的線性預(yù)測(cè)系數(shù)、或者對(duì)它們應(yīng)用了聽覺加權(quán)濾波器而得到的線性預(yù)測(cè)系數(shù)。
本發(fā)明的聲音信號(hào)解碼方法使用基于線性預(yù)測(cè)編碼方式的第I解碼單元和基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2解碼單元,對(duì)由多個(gè)幀構(gòu)成的編碼聲音信號(hào)進(jìn)行解碼,其特征在于,該聲音信號(hào)解碼方法具有如下步驟切換步驟,在通過所述第2解碼單元對(duì)所述編碼聲音信號(hào)的第I幀進(jìn)行了解碼后,將對(duì)緊挨著該第I幀之后的第2幀進(jìn)行解碼的解碼單元從所述第2解碼單元切換為所述第I解碼單元;以及初始化步驟,在所述切換步驟之后,通過規(guī)定方法對(duì)所述第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化。根據(jù)本發(fā)明的聲音信號(hào)解碼方法,在通過與線性預(yù)測(cè)編碼方式不同的編碼方式對(duì)使用該線性預(yù)測(cè)編碼方式進(jìn)行解碼的第2幀前面的第I幀進(jìn)行了解碼的情況下,通過對(duì)基于線性預(yù)測(cè)編碼方式的第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行第2幀的解碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的解碼處理。進(jìn)而,在本發(fā)明中,優(yōu)選所述第I解碼單元的所述內(nèi)部狀態(tài)是自適應(yīng)碼本的內(nèi)容或線性預(yù)測(cè)合成濾波器的延遲要素所保持的值,優(yōu)選在所述初始化步驟中,使用所述第I幀對(duì)所述第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,優(yōu)選在所述初始化步驟中,使用殘差信號(hào)進(jìn)行所述第I解碼單元的初始化,所述殘差信號(hào)是針對(duì)所述第2解碼單元解碼后的所述第I幀應(yīng)用所述線性預(yù)測(cè)逆濾波器而得到的,優(yōu)選在所述初始化步驟中,使用由所述第I解碼單元對(duì)位于所述第I幀前面的第3幀進(jìn)行了解碼時(shí)的線性預(yù)測(cè)系數(shù),針對(duì)所述第2解碼單元解碼后的所述第I幀應(yīng)用所述線性預(yù)測(cè)逆濾波器?;蛘?,優(yōu)選在所述初始化步驟中,在所述第2幀的碼中包含所述第I幀的線性預(yù)測(cè)系數(shù)的情況下,使用該第2幀的碼中包含的線性預(yù)測(cè)系數(shù),針對(duì)所述第2解碼單元解碼后的所述第I幀應(yīng)用所述線性預(yù)測(cè)逆濾波器。而且,在本發(fā)明中,也可以在所述初始化步驟中,使用所述第I解碼單元對(duì)位于所述第I幀前面的幀進(jìn)行了解碼時(shí)的所述第I解碼單元的內(nèi)部狀態(tài),對(duì)該第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化。本發(fā)明的編碼裝置具有基于線性預(yù)測(cè)編碼方式的第I編碼單元和基于與所述線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2編碼單元,使用所述第I編碼單元和所述第2編碼單元對(duì)聲音信號(hào)進(jìn)行編碼,其特征在于,該編碼裝置具有第I編碼判定單元,其判定利用所述第I編碼單元或所述第2編碼單元中的哪一個(gè)對(duì)所述聲音信號(hào)中包含的作為編碼對(duì)象的編碼對(duì)象幀進(jìn)行編碼;第2編碼判定單元,其在由所述第I編碼判定單元判定為通過所述第I編碼單元對(duì)所述編碼對(duì)象幀進(jìn)行編碼的情況下,判定是通過所述第I編碼單元對(duì)緊挨著所述編碼對(duì)象幀之前的編碼之前幀進(jìn)行編碼,還是通過所述第2編碼單元對(duì)所述編碼之前幀進(jìn)行編碼;編碼內(nèi)部狀態(tài)計(jì)算單元,其在由所述第2編碼判定單元判定為通過所述第2編碼單元對(duì)所述編碼之前幀進(jìn)行編碼的情況下,對(duì)所述編碼之前幀的編碼結(jié)果進(jìn)行解碼,使用該解碼結(jié)果計(jì)算所述第I編碼單元的內(nèi)部狀態(tài);以及編碼初始化單元,其使用由所述編碼內(nèi)部狀態(tài)計(jì)算單元計(jì)算出的所述內(nèi)部狀態(tài),對(duì)所述第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,在所述編碼初始化單元對(duì)所述內(nèi)部狀態(tài)進(jìn)行了初始化后,所述第I編碼單元對(duì)所述編碼對(duì)象幀進(jìn)行編碼。根據(jù)本發(fā)明的編碼裝置,在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2編碼單元對(duì)通過基于該線性預(yù)測(cè)編碼方式的第I編碼單元進(jìn)行編碼的編碼對(duì)象幀前面的編碼之前幀進(jìn)行了編碼的情況下,通過對(duì)第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行編碼對(duì)象幀的編碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的編碼處理。本發(fā)明的解碼裝置具有基于線性預(yù)測(cè)編碼方式的第I解碼單元和基于與所述線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2解碼單元,使用所述第I解碼單元和所述第2解碼單元對(duì)編碼聲音信號(hào)進(jìn)行解碼,其特征在于,該解碼裝置具有 第I解碼判定單元,其 判定利用所述第I解碼單元或所述第2解碼單元中的哪一個(gè)對(duì)所述編碼聲音信號(hào)中包含的作為解碼對(duì)象的解碼對(duì)象幀進(jìn)行解碼;第2解碼判定單元,其在由所述第I解碼判定單元判定為通過所述第I解碼單元對(duì)所述解碼對(duì)象幀進(jìn)行解碼的情況下,判定是通過所述第I解碼單元對(duì)緊挨著所述解碼對(duì)象幀之前的解碼之前幀進(jìn)行了解碼,還是通過所述第2解碼單元對(duì)所述解碼之前幀進(jìn)行了解碼;解碼內(nèi)部狀態(tài)計(jì)算單元,其在由所述第2解碼判定單元判定為通過所述第2解碼單元對(duì)所述解碼之前幀進(jìn)行了解碼的情況下,使用所述解碼之前幀的解碼結(jié)果計(jì)算所述第I解碼單元的內(nèi)部狀態(tài);以及解碼初始化單元,其使用由所述解碼內(nèi)部狀態(tài)計(jì)算單元計(jì)算出的所述內(nèi)部狀態(tài),對(duì)所述第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,在所述解碼初始化單元對(duì)所述內(nèi)部狀態(tài)進(jìn)行了初始化后,所述第I解碼單元對(duì)所述解碼對(duì)象幀進(jìn)行解碼。根據(jù)本發(fā)明的解碼裝置,即使在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2解碼單元對(duì)使用基于該線性預(yù)測(cè)編碼方式的第I解碼單元進(jìn)行解碼的解碼對(duì)象幀前面的解碼之前幀進(jìn)行解碼的情況下,通過對(duì)第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行解碼對(duì)象幀的解碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的解碼處理。本發(fā)明的聲音信號(hào)處理系統(tǒng)的特征在于,該聲音信號(hào)處理系統(tǒng)具有所述編碼裝置和所述解碼裝置,所述解碼裝置對(duì)由所述編碼裝置進(jìn)行了編碼的編碼聲音信號(hào)進(jìn)行解碼。根據(jù)本發(fā)明的聲音信號(hào)處理系統(tǒng),即使在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2編碼單元對(duì)通過基于該線性預(yù)測(cè)編碼方式的第I編碼單元進(jìn)行編碼的編碼對(duì)象幀前面的編碼之前幀進(jìn)行了編碼的情況下,通過對(duì)第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行編碼對(duì)象幀的編碼。即使在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2解碼單元對(duì)使用基于該線性預(yù)測(cè)編碼方式的第I解碼單元進(jìn)行解碼的解碼對(duì)象幀前面的解碼之前幀進(jìn)行了解碼的情況下,通過對(duì)第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行解碼對(duì)象幀的解碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的編碼處理和解碼處理。本發(fā)明的聲音信號(hào)編碼程序的特征在于,為了使用基于線性預(yù)測(cè)編碼方式的第I編碼單元和基于與所述線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2編碼單元對(duì)聲音信號(hào)進(jìn)行編碼,該聲音信號(hào)編碼程序使計(jì)算機(jī)裝置發(fā)揮以下單元的功能第I編碼判定單元,其判定利用所述第I編碼單元或所述第2編碼單元中的哪一個(gè)對(duì)所述聲音信號(hào)中包含的作為編碼對(duì)象的編碼對(duì)象幀進(jìn)行編碼;第2編碼判定單元,其在由所述第I編碼判定單元判定為通過所述第I編碼單元對(duì)所述編碼對(duì)象幀進(jìn)行編碼的情況下,判定是通過所述第I編碼單元對(duì)緊挨著所述編碼對(duì)象幀之前的編碼之前幀進(jìn)行編碼,還是通過所述第2編碼單元對(duì)所述編碼之前幀進(jìn)行編碼;編碼內(nèi)部狀態(tài)計(jì)算單元,其在由所述第2編碼判定單元判定為通過所述第2編碼單元對(duì)所述編碼之前幀進(jìn)行編碼的情況下,對(duì)所述編碼之前幀的編碼結(jié)果進(jìn)行解碼,使用該解碼結(jié)果計(jì)算所述第I編碼單元的內(nèi)部狀態(tài);編碼初始化單元,其使用由所述編碼內(nèi)部狀態(tài)計(jì)算單元計(jì)算出的所述內(nèi)部狀態(tài),對(duì)所述第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化;以及編碼單元,其在通過所述編碼初始化單元進(jìn)行了所述內(nèi)部狀態(tài)的初始化之后,由所述第I編碼單元對(duì)所述編碼對(duì)象幀進(jìn)行編碼。根據(jù)本發(fā)明的聲音信號(hào)編碼程序,即使在通過基于與線性預(yù)測(cè)編碼方式不同的編 碼方式的第2編碼單元對(duì)通過基于該線性預(yù)測(cè)編碼方式的第I編碼單元進(jìn)行編碼的編碼對(duì)象幀前面的編碼之前幀進(jìn)行了編碼的情況下,通過對(duì)第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行編碼對(duì)象幀的編碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的編碼處理。本發(fā)明的聲音信號(hào)解碼程序的特征在于,為了使用基于線性預(yù)測(cè)編碼方式的第I解碼單元和基于與所述線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2解碼單元對(duì)編碼聲音信號(hào)進(jìn)行解碼,該聲音信號(hào)解碼程序使計(jì)算機(jī)裝置發(fā)揮以下單元的功能第I解碼判定單元,其判定利用所述第I解碼單元或所述第2解碼單元中的哪一個(gè)對(duì)所述編碼聲音信號(hào)中包含的作為解碼對(duì)象的解碼對(duì)象幀進(jìn)行解碼;第2解碼判定單元,其在由所述第I解碼判定單元判定為通過所述第I解碼單元對(duì)所述解碼對(duì)象幀進(jìn)行解碼的情況下,判定是通過所述第I解碼單元對(duì)緊挨著所述解碼對(duì)象幀之前的解碼之前幀進(jìn)行解碼,還是通過所述第2解碼單元對(duì)所述解碼之前幀進(jìn)行解碼;解碼內(nèi)部狀態(tài)計(jì)算單元,其在由所述第2解碼判定單元判定為通過所述第2解碼單元對(duì)所述解碼之前幀進(jìn)行了解碼的情況下,使用所述解碼之前幀的解碼結(jié)果計(jì)算所述第I解碼單元的內(nèi)部狀態(tài);解碼初始化單元,其使用由所述解碼內(nèi)部狀態(tài)計(jì)算單元計(jì)算出的所述內(nèi)部狀態(tài),對(duì)所述第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化;以及解碼單元,其在通過所述解碼初始化單元進(jìn)行了所述內(nèi)部狀態(tài)的初始化之后,由所述第I解碼單元對(duì)所述解碼對(duì)象幀進(jìn)行解碼。根據(jù)本發(fā)明的聲音信號(hào)解碼程序,即使在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2解碼單元對(duì)使用基于該線性預(yù)測(cè)編碼方式的第I解碼單元進(jìn)行了解碼的解碼對(duì)象幀前面的解碼之前幀進(jìn)行了解碼的情況下,通過對(duì)第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行解碼對(duì)象幀的解碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的解碼處理。發(fā)明效果根據(jù)本發(fā)明,在從不使用線性預(yù)測(cè)的編碼方式切換為基于線性預(yù)測(cè)編碼的編碼方式的情況下,將基于線性預(yù)測(cè)編碼的編碼方式的編碼單元或解碼單元的內(nèi)部狀態(tài)的初始值設(shè)定為適當(dāng)?shù)闹?,能夠改善剛剛切換之后的幀中的語音品質(zhì)。
圖I是示出實(shí)施方式的編碼裝置和解碼裝置的結(jié)構(gòu)的圖。圖2是示出實(shí)施方式的編碼裝置的結(jié)構(gòu)的圖。圖3是用于說明實(shí)施方式的編碼裝置的動(dòng)作的流程圖。圖4是示出實(shí)施方式的解碼裝置的結(jié)構(gòu)的圖。圖5是用于說明實(shí)施方式的解碼裝置的動(dòng)作的流程圖。
具體實(shí)施方式
下面,參照附圖詳細(xì)說明本發(fā)明的優(yōu)選實(shí)施方式。另外,在附圖的說明中,在可能的情況下,對(duì)同一要素標(biāo)注同一符號(hào)并省略重復(fù)的說明。實(shí)施方式的聲音信號(hào)處理系統(tǒng)具有對(duì)輸入的聲音信號(hào)進(jìn)行編碼的編碼裝置10以及對(duì)編碼裝置10所編碼的編碼聲音信號(hào)進(jìn)行解碼的解碼裝置20。圖I和圖2是示出實(shí)施方式的編碼裝置10的結(jié)構(gòu)的圖。編碼裝置10對(duì)所輸入的語音/音樂信號(hào)(聲音信號(hào))進(jìn)行編碼并輸出。語音/音樂信號(hào)是被預(yù)先分割成具有有限長(zhǎng)度的幀之后輸入到編碼裝置10中的信號(hào)。在語音/音樂信號(hào)是語音信號(hào)的情況下,編碼裝置10根據(jù)第I編碼方式進(jìn)行編碼,在語音/音樂信號(hào)是音樂信號(hào)的情況下,編碼裝置10根據(jù)第2編碼方式進(jìn)行編碼。第I編碼方式是基于具有自適應(yīng)碼本的線性預(yù)測(cè)編碼的ACELP等CELP方式。第2編碼方式與第I編碼方式不同,是不利用線性預(yù)測(cè)的編碼方式。第2編碼方式例如假設(shè)為AAC等轉(zhuǎn)換編碼。編碼裝置10在物理上具有包含CPU 10a,ROM 10b,RAM 10c、存儲(chǔ)裝置IOd和通信裝置IOe等的計(jì)算機(jī)裝置,這些CPU IOa 通信裝置IOe與總線IOf連接。CPUlOa通過將存儲(chǔ)在ROM IOb等內(nèi)置存儲(chǔ)器中的規(guī)定計(jì)算機(jī)程序(例如用于執(zhí)行圖3所示的流程圖的處理的聲音信號(hào)編碼程序)加載到RAM IOc中執(zhí)行,對(duì)編碼裝置10進(jìn)行統(tǒng)一控制。存儲(chǔ)裝置IOd是寫入/讀出自如的存儲(chǔ)器,存儲(chǔ)各種計(jì)算機(jī)程序、執(zhí)行計(jì)算機(jī)程序所需要的各種數(shù)據(jù)等(例如在第I編碼方式的編碼中使用的自適應(yīng)碼本和線性預(yù)測(cè)系數(shù)、其他的基于第I編碼方式和第2編碼方式的編碼所需要的各種參數(shù)、規(guī)定數(shù)的編碼前后的幀等)。存儲(chǔ)裝置IOd至少存儲(chǔ)最后(之前)編碼的一個(gè)幀的語音/音樂信號(hào)。并且,編碼裝置10在功能上具有編碼方式切換部12 (第I編碼判定單元、第2編碼判定單元)、第I編碼部13 (第I編碼單元)、第2編碼部14 (第2編碼單元)、碼復(fù)用部15、內(nèi)部狀態(tài)計(jì)算部16 (編碼內(nèi)部狀態(tài)計(jì)算單元)、內(nèi)部狀態(tài)初始化方法確定部17 (編碼初始化單元)。這些編碼方式切換部12 內(nèi)部狀態(tài)初始化方法確定部17是通過CPU IOa執(zhí)行存儲(chǔ)在ROM IOb等編碼裝置10的內(nèi)置存儲(chǔ)器中的上述計(jì)算機(jī)程序、使圖I所示的編碼裝置10的各結(jié)構(gòu)部動(dòng)作而實(shí)現(xiàn)的功能。CPU IOa通過執(zhí)行上述聲音信號(hào)編碼程序(使用編碼方式切換部12 內(nèi)部狀態(tài)初始化方法確定部17),執(zhí)行圖3的流程圖所示的處理。接著,參照?qǐng)D3說明編碼裝置10的動(dòng)作。語音/音樂信號(hào)是被預(yù)先分割成具有有限長(zhǎng)度的幀之后輸入到編碼裝置10的通信裝置IOe中的信號(hào)。當(dāng)經(jīng)由通信裝置IOe輸入語音/音樂信號(hào)后,編碼方式切換部12根據(jù)該編碼對(duì)象幀,判定通過第I編碼方式或第2編碼方式中的哪一個(gè)編碼方式對(duì)該語音/音樂信號(hào)的編碼對(duì)象幀(作為編碼對(duì)象的幀)進(jìn)行編碼,根據(jù)該判定結(jié)果,向通過第I編碼方式對(duì)語音/音樂信號(hào)進(jìn)行編碼的第I編碼部13或通過第2編碼方式對(duì)語音/音樂信號(hào)進(jìn)行編碼的第2編碼部14中的任意一方發(fā)送編碼對(duì)象幀(步驟Sll ;第I切換步驟)。在步驟Sll中,在編碼對(duì)象幀是語音信號(hào)的情況下,編碼方式切換部12判定為通過第I編碼方式進(jìn)行編碼,在編碼對(duì)象幀是音樂信號(hào)的情況下,編碼方式切換部12判定為通過第2編碼方式進(jìn)行編碼。然后,在該第I切換步驟之后,執(zhí)行用于對(duì)第I編碼部13的內(nèi)部狀態(tài)(自適應(yīng)碼本的內(nèi)容或用于求出零輸入響應(yīng)的線性預(yù)測(cè)合成濾波器的延遲要素所保持的值等,以下相同)進(jìn)行初始化的第I初始化步驟(步驟S12 S18)。編碼方式切換部12在步驟Sll中判定為編碼對(duì)象幀是音樂信號(hào)、通過第2編碼方式對(duì)編碼對(duì)象幀進(jìn)行編碼的情況下(步驟SI I ;第2編碼部),向第2編碼部14發(fā)送編碼對(duì)象幀,第2編碼部14通過第2編碼方式對(duì)從該編碼方式切換部12發(fā)送的編碼對(duì)象幀進(jìn)行編碼,經(jīng)由通信裝置IOe輸出該編碼后的編碼對(duì)象幀(編碼語音/音樂信號(hào))(步驟S18)。編 碼方式切換部12在步驟Sll中判定為編碼對(duì)象幀是語音信號(hào)、通過第I編碼方式對(duì)編碼對(duì)象幀進(jìn)行編碼的情況下(步驟Sll ;第I編碼部),參照存儲(chǔ)裝置IOd的內(nèi)容,判定是通過第I編碼部13對(duì)緊挨著編碼對(duì)象幀之前的幀(編碼之前幀)進(jìn)行編碼,還是通過第2編碼部14對(duì)編碼之前幀進(jìn)行編碼(步驟S12)。位于編碼對(duì)象幀前面的規(guī)定數(shù)的幀(包含編碼之前幀)的編碼結(jié)果和編碼前的幀本身均存儲(chǔ)在存儲(chǔ)裝置IOd中。編碼方式切換部12在步驟S12中判定為通過第I編碼部13對(duì)編碼之前幀進(jìn)行了編碼的情況下(步驟S12 ;是),向第I編碼部13發(fā)送編碼對(duì)象幀,第I編碼部13通過第I編碼方式對(duì)從該編碼方式切換部12發(fā)送的編碼對(duì)象幀進(jìn)行編碼,經(jīng)由通信裝置IOe輸出該編碼后的編碼對(duì)象幀(編碼語音/音樂信號(hào))(步驟S17)。編碼方式切換部12在步驟S12中判定為通過第2編碼部14對(duì)編碼之前幀進(jìn)行了編碼的情況下(步驟S12 ;否),內(nèi)部狀態(tài)計(jì)算部16對(duì)存儲(chǔ)在存儲(chǔ)裝置IOd中的編碼之前幀的編碼結(jié)果進(jìn)行解碼,得到編碼之前幀的解碼結(jié)果(步驟S13)。通過內(nèi)置于編碼裝置10中的解碼器(省略圖示)或后述的解碼裝置20得到編碼裝置10使用的解碼結(jié)果。另外,為了省略解碼所需要的運(yùn)算,也可以代替對(duì)編碼之前幀的編碼結(jié)果進(jìn)行解碼后的解碼結(jié)果,而使用第2編碼部14進(jìn)行編碼前的編碼之前幀。該編碼前的編碼之前幀存儲(chǔ)在存儲(chǔ)裝置IOd中。在步驟S13之后,內(nèi)部狀態(tài)計(jì)算部16使用編碼之前幀的解碼結(jié)果,計(jì)算第I編碼部13的內(nèi)部狀態(tài)(步驟S14)。內(nèi)部狀態(tài)計(jì)算部16進(jìn)行的第I編碼部13的內(nèi)部狀態(tài)的計(jì)算處理存在如下處理作為對(duì)編碼之前幀的解碼結(jié)果進(jìn)行處理并計(jì)算內(nèi)部狀態(tài)的例子,根據(jù)編碼之前幀的解碼結(jié)果(或者第2編碼部14進(jìn)行編碼前的編碼之前幀),使用協(xié)方差法等方法求出線性預(yù)測(cè)系數(shù),然后,使用該求出的線性預(yù)測(cè)系數(shù)對(duì)解碼結(jié)果應(yīng)用線性預(yù)測(cè)逆濾波器,從而求出殘差信號(hào)。另外,由于根據(jù)編碼之前幀的解碼結(jié)果求出線性預(yù)測(cè)系數(shù)的處理的運(yùn)算量大,所以內(nèi)部狀態(tài)計(jì)算部16也可以代替根據(jù)編碼之前幀的解碼結(jié)果求出線性預(yù)測(cè)系數(shù),而使用在編碼之前幀附近通過第I編碼方式編碼的幀(位于編碼之前幀前面的幀)中的線性預(yù)測(cè)系數(shù)(存儲(chǔ)在存儲(chǔ)裝置IOd中)作為上述處理(第I編碼部13的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù),或者,還可以使用在幀間內(nèi)插了該線性預(yù)測(cè)系數(shù)而得到的值作為上述處理(第I編碼部13的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù)。進(jìn)而,內(nèi)部狀態(tài)計(jì)算部16也可以使用通過使用編碼之前幀附近的通過第I編碼方式編碼的幀中的線性預(yù)測(cè)系數(shù)進(jìn)行外插而得到的值、或者通過使用在幀間內(nèi)插了這些線性預(yù)測(cè)系數(shù)后的值進(jìn)行外插而得到的值,作為上述處理(第I編碼部13的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù)。內(nèi)部狀態(tài)計(jì)算部16也可以針對(duì)將線性預(yù)測(cè)系數(shù)轉(zhuǎn)換為線譜頻率后的值實(shí)施外插,將該外插結(jié)果再次轉(zhuǎn)換為線性預(yù)測(cè)系數(shù)。并且,在編碼對(duì)象幀的碼中包含編碼之前幀的線性預(yù)測(cè)系數(shù)的情況下,內(nèi)部狀態(tài)計(jì)算部16也可以使用該編碼對(duì)象幀的碼中包含的線性預(yù)測(cè)系數(shù)作為上述處理(第I編碼部13的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù)。并且,內(nèi)部狀態(tài)計(jì)算部16也可以不計(jì)算線性預(yù)測(cè)系數(shù),而直接使用編碼之前幀的解碼結(jié)果作為殘差信號(hào)的替代品。進(jìn)而,也可以使用在針對(duì)位于編碼之前幀附近的通過第I編碼方式編碼的幀(位于編碼之前幀前面的幀)進(jìn)行編碼的過程中得到的內(nèi)部狀態(tài)(表示該內(nèi)部狀態(tài)的信息被存儲(chǔ)在存儲(chǔ)裝置IOd中),對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行初始化。并且,也可以不針對(duì)幀全體而僅針對(duì)幀的一部分進(jìn)行對(duì)編碼之前幀的解碼結(jié)果應(yīng)用線性預(yù)測(cè)逆濾波器的處理。在步驟S14之后,內(nèi)部狀態(tài)初始化方法確定部17根據(jù)編碼對(duì)象幀或者編碼之前幀的解碼結(jié)果,確定使用由內(nèi)部狀態(tài)計(jì)算部16計(jì)算出的內(nèi)部狀態(tài)對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行初始化、或者利用“0”進(jìn)行初始化等預(yù)先確定的初始化方法中的任意一種初始化方法(步驟S15)。然后,內(nèi)部狀態(tài)初始化方法確定部17通過在步驟S15中確定的初始化方法,對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行初始化(步驟S16)。由內(nèi)部狀態(tài)初始化方法確定部17進(jìn)行的第I編碼部13的內(nèi)部狀態(tài)的初始化,是使用由內(nèi)部狀態(tài)計(jì)算部16計(jì)算出的內(nèi)部狀態(tài)對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行初始化的處理,但是,也可以包含對(duì)在第I編碼方式的殘差信號(hào)的計(jì)算中使用的第I編碼部13的線性預(yù)測(cè)合成濾波器的內(nèi)部狀態(tài)(延遲要素所保持的值)進(jìn)行初始化的處理。并且,在確定第I編碼部13的內(nèi)部狀態(tài)的初始化方法的情況下,內(nèi)部狀態(tài)初始化方法確定部17例如可以使用包含上述2個(gè)初始化方法在內(nèi)的多個(gè)初始化方法,分別對(duì)編碼對(duì)象幀嘗試基于第I編碼方式的編碼,其結(jié)果,選擇平方誤差或聽覺加權(quán)誤差小的初始化方法。在步驟S16中內(nèi)部狀態(tài)初始化方法確定部17對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行了初始化之后,第I編碼部13通過第I編碼方式對(duì)編碼對(duì)象幀進(jìn)行編碼,經(jīng)由通信裝置IOe輸出該編碼后的編碼對(duì)象幀(編碼語音/音樂信號(hào))(步驟S17)。另外,也可以構(gòu)成為,碼復(fù)用部15在基于第I編碼方式的編碼結(jié)果中復(fù)用內(nèi)部狀態(tài)初始化方法確定部17在步驟S15中選擇出的初始化方法的信息,作為輔助信息。并且,還可以構(gòu)成為,根據(jù)在第I編碼部13和第2編碼部14與解碼器(內(nèi)置于編碼裝置10中的解碼器或解碼裝置20)之間共同得到的信息(參照下述),確定第I編碼部13的內(nèi)部狀態(tài)的初始化方式,該情況下,碼復(fù)用部15不在編碼結(jié)果中復(fù)用表示第I編碼部13的內(nèi)部狀態(tài)的初始化方法的輔助信息。例如,在第I編碼方式中的編碼對(duì)象幀的自適應(yīng)碼本較大的情況下、或者編碼之前幀中的解碼結(jié)果的周期性較高的情況下等,內(nèi)部狀態(tài)初始化方法確定部17可以使用由內(nèi)部狀態(tài)計(jì)算部16計(jì)算出的內(nèi)部狀態(tài)對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行初始化。并且,也可以構(gòu)成為,省略內(nèi)部狀態(tài)初始化方法確定部17,第I編碼部13始終使用由內(nèi)部狀態(tài)計(jì)算部16計(jì)算出的內(nèi)部狀態(tài)對(duì)自身的內(nèi)部狀態(tài)進(jìn)行初始化。并且,構(gòu)成為在通過編碼方式切換部12剛從第2編碼方式切換為第I編碼方式之后(第I切換步驟之后),內(nèi)部狀態(tài)計(jì)算部16和內(nèi)部狀態(tài)初始化方法確定部17對(duì)編碼對(duì)象幀進(jìn)行上述處理(第I初、始化步驟),但是不限于此,也可以構(gòu)成為,在對(duì)通過編碼方式切換部12正要從第2編碼方式切換為第I編碼方式之前(編碼對(duì)象幀之前)的編碼之前幀進(jìn)行編碼時(shí),內(nèi)部狀態(tài)計(jì)算部16和內(nèi)部狀態(tài)初始化方法確定部17進(jìn)行上述處理。并且,例示了在第I編碼方式(第I編碼部13)和第2編碼方式(第2編碼部14)的2個(gè)編碼方式之間進(jìn)行切換的結(jié)構(gòu),但是,也可以構(gòu)成為,存在多個(gè)與第I編碼方式不同的編碼方式,在3個(gè)以上的編碼方式之間進(jìn)行切換。圖I和圖4是示出實(shí)施方式的解碼裝置20的結(jié)構(gòu)的圖。解碼裝置20在物理上具有包含CPU 20a、ROM 20b、RAM 20c、存儲(chǔ)裝置20d和通信裝置20e等的計(jì)算機(jī)裝置,這些CPU 20a 通信裝置20e與總線20f連接。CPU 20a通過將存儲(chǔ)在ROM 20b等內(nèi)置存儲(chǔ)器中的規(guī)定計(jì)算機(jī)程序(例如用于執(zhí)行圖5所示的流程圖的處理的聲音信號(hào)解碼程序)加載到RAM 20c中執(zhí)行,對(duì)解碼裝置20進(jìn)行統(tǒng)一控制。存儲(chǔ)裝置20d是寫入/讀出自如的存儲(chǔ)器,存儲(chǔ)各種計(jì)算機(jī)程序、執(zhí)行計(jì)算機(jī)程序所需要的各種數(shù)據(jù)等(例如在第I編碼方式的解碼中使用的自適應(yīng)碼本和線性預(yù)測(cè)系數(shù)、其他的基于第I編碼方式和第2編碼方式的解碼 所需要的各種參數(shù)、規(guī)定數(shù)的解碼前后的幀等)。存儲(chǔ)裝置20d至少存儲(chǔ)最后(之前)解碼的一個(gè)巾貞的語音/音樂信號(hào)。并且,解碼裝置20在功能上具有編碼方式判定部22(第I解碼判定單元、第2解碼判定單元)、碼分離部23、第I解碼部24 (第I解碼單元)、第2解碼部25 (第2解碼單元)、內(nèi)部狀態(tài)初始化方法確定部26 (解碼初始化單元)、內(nèi)部狀態(tài)計(jì)算部27 (解碼內(nèi)部狀態(tài)計(jì)算單元)。這些編碼方式判定部22 內(nèi)部狀態(tài)計(jì)算部27是通過CPU 20a執(zhí)行存儲(chǔ)在ROM 20b等解碼裝置20的內(nèi)置存儲(chǔ)器中的上述計(jì)算機(jī)程序、使圖I所示的解碼裝置20的各結(jié)構(gòu)部動(dòng)作而實(shí)現(xiàn)的功能。CPU 20a通過執(zhí)行上述聲音信號(hào)解碼程序(使用編碼方式判定部22 內(nèi)部狀態(tài)計(jì)算部27),執(zhí)行圖5的流程圖所示的處理。接著,參照?qǐng)D5說明解碼裝置20的動(dòng)作。編碼方式判定部22判定使用第I編碼方式和第2編碼方式中的哪一個(gè)編碼方式對(duì)被編碼的經(jīng)由通信裝置20e輸入的編碼語音/音樂信號(hào)的解碼對(duì)象幀進(jìn)行編碼,根據(jù)該判定結(jié)果,向通過第I編碼方式進(jìn)行解碼的第I解碼部24或通過第2編碼方式進(jìn)行解碼的第2解碼部25中的任意一方發(fā)送解碼對(duì)象幀(步驟S21 ;第2切換步驟)。在步驟S21中,在通過第I編碼方式對(duì)解碼對(duì)象幀進(jìn)行編碼的情況下,編碼方式判定部22判定為通過第I解碼部24進(jìn)行解碼,在通過第2編碼方式對(duì)解碼對(duì)象幀進(jìn)行編碼的情況下,編碼方式判定部22判定為通過第2解碼部25進(jìn)行解碼。然后,在該第2切換步驟之后,執(zhí)行用于對(duì)第I解碼部24的內(nèi)部狀態(tài)(自適應(yīng)碼本的內(nèi)容或線性預(yù)測(cè)合成濾波器的延遲要素所保持的值等,以下相同)進(jìn)行初始化的第2初始化步驟(步驟S22 S27)。編碼方式判定部22在步驟S21中判定為通過第2編碼方式對(duì)解碼對(duì)象幀進(jìn)行編碼(即通過第2解碼部25進(jìn)行解碼)的情況下(步驟S21 ;第2解碼部),向第2解碼部25發(fā)送解碼對(duì)象幀,第2解碼部25通過第2編碼方式對(duì)從該編碼方式判定部22發(fā)送的解碼對(duì)象幀進(jìn)行解碼,經(jīng)由通信裝置20e輸出該解碼后的解碼對(duì)象幀(解碼語音/音樂信號(hào))(步驟S27)。編碼方式判定部22在步驟S21中判定為通過第I編碼方式對(duì)解碼對(duì)象幀進(jìn)行編碼(即通過第I解碼部24進(jìn)行解碼)的情況下(步驟S21 ;第I解碼部),參照存儲(chǔ)裝置20d的內(nèi)容,判定是通過第I編碼方式對(duì)緊挨著解碼對(duì)象幀之前的幀(解碼之前幀)進(jìn)行了編碼(即通過第I解碼部24進(jìn)行了解碼),還是通過第2編碼方式對(duì)解碼之前幀進(jìn)行了編碼(即通過第2解碼部25進(jìn)行了解碼)(步驟S22)。位于解碼對(duì)象幀前面的規(guī)定數(shù)的幀(包含解碼之前幀)的解碼結(jié)果和解碼前后的幀本身均存儲(chǔ)在存儲(chǔ)裝置20d中。編碼方式判定部22在步驟S22中判定為通過第I編碼方式對(duì)解碼之前幀進(jìn)行了編碼(即通過第I解碼部24進(jìn)行了解碼)的情況下(步驟S22 ;是),向第I解碼部24發(fā)送解碼對(duì)象幀,第I解碼部24通過第I編碼方式對(duì)從該編碼方式判定部22發(fā)送的解碼對(duì)象幀進(jìn)行解碼,經(jīng)由通信裝置20e輸出該解碼后的解碼對(duì)象幀(解碼語音/音樂信號(hào))(步驟S26)。編碼方式判定部22在步驟S22中判定為通過第2編碼方式對(duì)解碼之前幀進(jìn)行了編碼(即通過第2解碼部25進(jìn)行了解碼)的情況下(步驟S22 ;否),向碼分離部23發(fā)送解碼之前幀,碼分離部23將解碼之前幀的復(fù)用的碼分離為基于第I編碼方式的碼和表示第I解碼部24的內(nèi)部狀態(tài)的初始化方法的輔助信息(例如由內(nèi)部狀態(tài)初始化方法確定部17確定的表示第I編碼部13的內(nèi)部狀態(tài)的初始化方法、即在對(duì)解碼之前幀進(jìn)行編碼時(shí)使用的初始化方法的信息)。然后,內(nèi)部狀態(tài)計(jì)算部27使用解碼之前幀的解碼結(jié)果,計(jì)算第I解碼部24 的內(nèi)部狀態(tài)(步驟S23)。內(nèi)部狀態(tài)計(jì)算部27進(jìn)行的第I解碼部24的內(nèi)部狀態(tài)的計(jì)算處理存在如下處理作為對(duì)編碼之前幀的解碼結(jié)果進(jìn)行處理來計(jì)算內(nèi)部狀態(tài)的例子,根據(jù)解碼之前幀的解碼結(jié)果,利用協(xié)方差法等方法求出線性預(yù)測(cè)系數(shù),然后,使用該求出的線性預(yù)測(cè)系數(shù)對(duì)解碼結(jié)果應(yīng)用線性預(yù)測(cè)逆濾波器,從而求出殘差信號(hào)。另外,由于根據(jù)解碼之前幀的解碼結(jié)果求出線性預(yù)測(cè)系數(shù)的處理的運(yùn)算量大,所以內(nèi)部狀態(tài)計(jì)算部27也可以代替根據(jù)解碼之前幀的解碼結(jié)果求出線性預(yù)測(cè)系數(shù),而使用位于解碼之前幀附近的通過第I編碼方式編碼的幀(位于解碼之前幀前面的幀)中的線性預(yù)測(cè)系數(shù)(通過第I解碼部24解碼時(shí)的線性預(yù)測(cè)系數(shù),存儲(chǔ)在存儲(chǔ)裝置20d中)作為上述處理(第I解碼部24的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù),或者,還可以使用在幀間內(nèi)插了該線性預(yù)測(cè)系數(shù)而得到的值作為上述處理(第I解碼部24的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù)。進(jìn)而,內(nèi)部狀態(tài)計(jì)算部27也可以使用通過使用位于解碼之前幀附近的通過第I編碼方式編碼的幀中的線性預(yù)測(cè)系數(shù)進(jìn)行外插而得到的值、或者通過使用在幀間內(nèi)插了這些線性預(yù)測(cè)系數(shù)后的值進(jìn)行外插而得到的值,作為上述處理(第I解碼部24的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù)。內(nèi)部狀態(tài)計(jì)算部27也可以針對(duì)將線性預(yù)測(cè)系數(shù)轉(zhuǎn)換為線譜頻率后的值實(shí)施外插,將該外插結(jié)果再次轉(zhuǎn)換為線性預(yù)測(cè)系數(shù)。并且,在解碼對(duì)象幀的碼中包含解碼之前幀的線性預(yù)測(cè)系數(shù)的情況下,內(nèi)部狀態(tài)計(jì)算部27也可以使用該解碼對(duì)象幀的碼中包含的線性預(yù)測(cè)系數(shù)作為上述處理(第I解碼部24的內(nèi)部狀態(tài)的計(jì)算處理)的線性預(yù)測(cè)系數(shù)?;蛘撸ㄟ^省略線性預(yù)測(cè)逆濾波器的應(yīng)用,也可以省略線性預(yù)測(cè)系數(shù)的計(jì)算。進(jìn)而,也可以使用在針對(duì)位于解碼之前幀附近的通過第I編碼方式編碼的幀(位于解碼之前幀前面的幀)進(jìn)行解碼的過程中得到的內(nèi)部狀態(tài)(表示該內(nèi)部狀態(tài)的信息被存儲(chǔ)在存儲(chǔ)裝置20d中),對(duì)第I解碼部24的內(nèi)部狀態(tài)進(jìn)行初始化。并且,也可以不針對(duì)幀全體而僅針對(duì)幀的一部分進(jìn)行對(duì)解碼之前幀的解碼結(jié)果應(yīng)用線性預(yù)測(cè)逆濾波器的處理。在步驟S23之后,內(nèi)部狀態(tài)初始化方法確定部26根據(jù)表示解碼之前幀的復(fù)用的碼中包含的表示第I解碼部24的內(nèi)部狀態(tài)的初始化方法的輔助信息,確定使用由內(nèi)部狀態(tài)計(jì)算部27計(jì)算出的內(nèi)部狀態(tài)對(duì)第I解碼部24的內(nèi)部狀態(tài)進(jìn)行初始化、或者利用“0”進(jìn)行初始化等預(yù)先確定的方法中的任意一種初始化方法(步驟S24)。然后,內(nèi)部狀態(tài)初始化方法確定部26通過在步驟S24中確定的初始化方法,對(duì)第I解碼部24的內(nèi)部狀態(tài)進(jìn)行初始化(步驟S25)。由內(nèi)部狀態(tài)初始化方法確定部26進(jìn)行的第I解碼部24的內(nèi)部狀態(tài)的初始化,是使用由內(nèi)部狀態(tài)計(jì)算部27計(jì)算出的內(nèi)部狀態(tài)對(duì)第I解碼部24的內(nèi)部狀態(tài)進(jìn)行初始化的處理,但是,也可以包含對(duì)根據(jù)第I編碼方式的殘差信號(hào)計(jì)算輸出信號(hào)的第I解碼部24的線性預(yù)測(cè)合成濾波器的內(nèi)部狀態(tài)(延遲要素所保持的值)進(jìn)行初始化的處理。
在步驟S25中內(nèi)部狀態(tài)初始化方法確定部26對(duì)第I解碼部24的內(nèi)部狀態(tài)進(jìn)行了初始化之后,第I解碼部24通過第I編碼方式對(duì)解碼對(duì)象幀進(jìn)行解碼,經(jīng)由通信裝置20e輸出該解碼后的解碼對(duì)象幀(解碼語音/音樂信號(hào))(步驟S26)。另外,也可以不在解碼之前幀的碼中復(fù)用表示第I解碼部24的內(nèi)部狀態(tài)的初始化方法的輔助信息,而使用第I編碼方式中的對(duì)象編碼幀的固定碼本增益、或?qū)獯a之前幀中的解碼結(jié)果的周期性進(jìn)行了分析的結(jié)果等(使用在第I解碼部24和第2解碼部25與編碼器(內(nèi)置于解碼裝置20中的編碼器或第I編碼部13)之間共同得到的信息),確定第I解碼部24的內(nèi)部狀態(tài)的初始化方法。并且,也可以構(gòu)成為,省略內(nèi)部狀態(tài)初始化方法確定部26,第I解碼部24始終使用由內(nèi)部狀態(tài)計(jì)算部27計(jì)算出的內(nèi)部狀態(tài)對(duì)自身的內(nèi)部狀態(tài)進(jìn)行初始化。該情況下,不需要使用表示初始化方法且在解碼之前幀的碼中復(fù)用的輔助信息。并且,內(nèi)部狀態(tài)計(jì)算部27的動(dòng)作和內(nèi)部狀態(tài)初始化方法確定部26的動(dòng)作是通過第2編碼方式對(duì)解碼之前幀進(jìn)行了編碼、通過第I編碼方式對(duì)解碼對(duì)象幀進(jìn)行了編碼時(shí)的動(dòng)作,但是不限于此,在通過預(yù)讀已經(jīng)決定了通過第2編碼方式對(duì)解碼對(duì)象幀進(jìn)行了編碼、通過第I編碼方式對(duì)緊挨著解碼對(duì)象幀之后的幀進(jìn)行編碼的情況下,內(nèi)部狀態(tài)計(jì)算部27和內(nèi)部狀態(tài)初始化方法確定部26也可以分別根據(jù)預(yù)讀信息進(jìn)行第I解碼部24的內(nèi)部狀態(tài)的計(jì)算和內(nèi)部狀態(tài)初始化方法的選擇。并且,例示了在第I編碼方式和第2編碼方式的2個(gè)編碼方式之間進(jìn)行切換的結(jié)構(gòu),但是,也可以構(gòu)成為,存在多個(gè)與第I編碼方式不同的編碼方式,在3個(gè)以上的編碼方式之間進(jìn)行切換。接著,說明實(shí)施方式的編碼裝置10的作用效果。編碼裝置10具有基于線性預(yù)測(cè)編碼方式的第I編碼部13、以及基于與線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2編碼部14,使用第I編碼部13和第2編碼部14對(duì)聲音信號(hào)進(jìn)行編碼。編碼裝置10還具有編碼 方式切換部12、內(nèi)部狀態(tài)計(jì)算部16和內(nèi)部狀態(tài)初始化方法確定部17。編碼方式切換部12判定通過第I編碼部13或第2編碼部14中的哪一個(gè)對(duì)聲音信號(hào)中包含的作為編碼對(duì)象的編碼對(duì)象幀進(jìn)行編碼。并且,編碼方式切換部12在判定為通過第I編碼部13對(duì)編碼對(duì)象幀進(jìn)行編碼的情況下,判定是通過第I編碼部13對(duì)緊挨著編碼對(duì)象幀之前的編碼之前幀進(jìn)行編碼,還是通過第2編碼部14對(duì)編碼之前幀進(jìn)行編碼。在通過編碼方式切換部12判定為通過第2編碼部14對(duì)編碼之前幀進(jìn)行編碼的情況下,內(nèi)部狀態(tài)計(jì)算部16對(duì)編碼之前幀的編碼結(jié)果進(jìn)行解碼,使用該解碼結(jié)果計(jì)算第I編碼部13的內(nèi)部狀態(tài)。內(nèi)部狀態(tài)初始化方法確定部17使用由內(nèi)部狀態(tài)計(jì)算部16計(jì)算出的內(nèi)部狀態(tài)對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行初始化。然后,在內(nèi)部狀態(tài)初始化方法確定部17對(duì)內(nèi)部狀態(tài)進(jìn)行初始化之后,第I編碼部13對(duì)編碼對(duì)象幀進(jìn)行編碼。根據(jù)編碼裝置10,在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2編碼部14對(duì)通過基于該線性預(yù)測(cè)編碼方式的第I編碼部13進(jìn)行編碼的編碼對(duì)象幀前面的編碼之前幀進(jìn)行了編碼的情況下,通過對(duì)第I編碼部13的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行編碼對(duì)象幀的編碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的編碼處理。接著,說明實(shí)施方式的解碼裝置20的作用效果。解碼裝置20具有基于線性預(yù)測(cè)編碼方式的第I解碼部24、以及基于與線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2解碼部25,使用第I解碼部24和第2解碼部25對(duì)編碼聲音信號(hào)進(jìn)行解碼。解碼裝置20還具有編碼方式判定部22、內(nèi)部狀態(tài)計(jì)算部27和內(nèi)部狀態(tài)初始化方法確定部26。編碼方式判定部22判定通過第I解碼部24或第2解碼部25中的哪一個(gè)對(duì)編碼聲音信號(hào)中包含的作為解碼對(duì)象的解碼對(duì)象幀進(jìn)行解碼。并且,在由編碼方式判定部22判定為通過第I解碼部24對(duì)解碼對(duì)象幀進(jìn)行解碼的情況下,編碼方式判定部22判定是通過第I解碼部24對(duì)緊挨著解碼對(duì)象幀之前的解碼之前幀進(jìn)行解碼,還是通過第2解碼部25對(duì)解碼之前幀進(jìn)行解碼。在通過編碼方式判定部22判定為通過第2解碼部25對(duì)解碼之前幀進(jìn)行了解碼的情況下,使用解碼之前幀的解碼結(jié)果計(jì)算第I解碼部24的內(nèi)部狀態(tài)。使用由內(nèi)部狀態(tài)計(jì)算部27計(jì)算出的內(nèi)部狀態(tài)對(duì)第I解碼部24的內(nèi)部狀態(tài)進(jìn)行初始化。然后,在內(nèi)部狀態(tài)初始化方法確 定部26對(duì)內(nèi)部狀態(tài)進(jìn)行初始化之后,第I解碼部24對(duì)解碼對(duì)象幀進(jìn)行解碼。根據(jù)解碼裝置20,即使在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2解碼部25對(duì)使用基于該線性預(yù)測(cè)編碼方式的第I解碼部24進(jìn)行解碼的解碼對(duì)象幀前面的解碼之前幀進(jìn)行了解碼的情況下,通過對(duì)第I解碼部24的內(nèi)部狀態(tài)進(jìn)行初始化,也能夠通過線性預(yù)測(cè)編碼方式進(jìn)行解碼對(duì)象幀的解碼。因此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的解碼處理。產(chǎn)業(yè)上的可利用性在從不使用線性預(yù)測(cè)的編碼方式切換為基于線性預(yù)測(cè)編碼的編碼方式的情況下,將基于線性預(yù)測(cè)編碼的編碼方式的編碼單元或解碼單元的內(nèi)部狀態(tài)的初始值設(shè)定為適當(dāng)?shù)闹?,改善剛剛切換之后的幀中的語音品質(zhì)。標(biāo)號(hào)說明10 :編碼裝置;10a、20a CPU ;10b、20b R0M ;10c、20c :RAM ; 10d、20d :存儲(chǔ)裝置;10e、20e :通信裝置;10f、20f :總線;12 :編碼方式切換部;13 第I編碼部;14 第2編碼部;15 :碼復(fù)用部;16、27 :內(nèi)部狀態(tài)計(jì)算部;17、26 :內(nèi)部狀態(tài)初始化方法確定部;20 :解碼裝置;22 :編碼方式判定部;23 :碼分離部;24 :第I解碼部;25 :第2解碼部。
權(quán)利要求
1.一種聲音信號(hào)編碼方法,該聲音信號(hào)編碼方法使用基于線性預(yù)測(cè)編碼方式的第I編碼單元和基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2編碼單元,對(duì)由多個(gè)幀構(gòu)成的聲音信號(hào)進(jìn)行編碼,其特征在于,該聲音信號(hào)編碼方法具有如下步驟 切換步驟,在通過所述第2編碼單元對(duì)所述聲音信號(hào)的第I幀進(jìn)行了編碼后,將對(duì)緊挨著該第I幀之后的第2幀進(jìn)行編碼的編碼單元從所述第2編碼單元切換為所述第I編碼單元;以及 初始化步驟,僅在所述切換步驟之后,通過規(guī)定方法對(duì)所述第I編碼單元的內(nèi)部狀態(tài)進(jìn)行初始化, 在所述初始化步驟中,對(duì)基于所述第2編碼單元的所述第I幀的編碼結(jié)果進(jìn)行解碼而求出解碼結(jié)果,根據(jù)該解碼結(jié)果求出殘差信號(hào),通過該殘差信號(hào)對(duì)所述第I編碼單元的自適應(yīng)碼本進(jìn)行初始化,作為所述第I編碼單元的內(nèi)部狀態(tài)。·
2.一種聲音信號(hào)解碼方法,該聲音信號(hào)解碼方法使用基于線性預(yù)測(cè)編碼方式的第I解碼單元和基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2解碼單元,對(duì)由多個(gè)幀構(gòu)成的編碼聲音信號(hào)進(jìn)行解碼,其特征在于,該聲音信號(hào)解碼方法具有如下步驟 切換步驟,在通過所述第2解碼單元對(duì)所述編碼聲音信號(hào)的第I幀進(jìn)行了解碼后,將對(duì)緊挨著該第I幀之后的第2幀進(jìn)行解碼的解碼單元從所述第2解碼單元切換為所述第I解碼單元;以及 初始化步驟,僅在所述切換步驟之后,通過規(guī)定方法對(duì)所述第I解碼單元的內(nèi)部狀態(tài)進(jìn)行初始化, 在所述初始化步驟中,根據(jù)所述第I幀的解碼結(jié)果求出殘差信號(hào),通過該殘差信號(hào)對(duì)所述第I解碼單元的自適應(yīng)碼本進(jìn)行初始化,作為所述第I解碼單元的內(nèi)部狀態(tài)。
3.一種編碼裝置,該編碼裝置具有基于線性預(yù)測(cè)編碼方式的第I編碼單元和基于與所述線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2編碼單元,使用所述第I編碼單元和所述第2編碼單元對(duì)聲音信號(hào)進(jìn)行編碼,其特征在于,該編碼裝置具有 第I判定單元,其判定利用所述第I編碼單元或所述第2編碼單元中的哪一個(gè)對(duì)所述聲音信號(hào)中包含的作為編碼對(duì)象的對(duì)象幀進(jìn)行編碼; 第2判定單元,其在由所述第I判定單元判定為通過所述第I編碼單元對(duì)所述對(duì)象幀進(jìn)行編碼的情況下,判定是通過所述第I編碼單元對(duì)緊挨著所述對(duì)象幀之前的之前幀進(jìn)行了編碼,還是通過所述第2編碼單元對(duì)所述之前幀進(jìn)行了編碼; 內(nèi)部狀態(tài)計(jì)算單元,其僅在由所述第2判定單元判定為通過所述第2編碼單元對(duì)所述之前幀進(jìn)行了編碼的情況下,對(duì)所述之前幀的編碼結(jié)果進(jìn)行解碼,根據(jù)該解碼結(jié)果計(jì)算殘差 目號(hào);以及 初始化單元,其使用由所述內(nèi)部狀態(tài)計(jì)算單元計(jì)算出的所述殘差信號(hào),對(duì)所述第I編碼單元的自適應(yīng)碼本進(jìn)行初始化, 在所述初始化單元進(jìn)行的所述自適應(yīng)碼本的初始化后,所述第I編碼單元對(duì)所述對(duì)象幀進(jìn)行編碼。
4.一種解碼裝置,該解碼裝置具有基于線性預(yù)測(cè)編碼方式的第I解碼單元和基于與所述線性預(yù)測(cè)編碼方式不同的其他編碼方式的第2解碼單元,使用所述第I解碼單元和所述第2解碼單元對(duì)編碼聲音信號(hào)進(jìn)行解碼,其特征在于,該解碼裝置具有第I判定單元,其判定利用所述第I解碼單元或所述第2解碼單元中的哪一個(gè)對(duì)所述編碼聲音信號(hào)中包含的作為解碼對(duì)象的對(duì)象幀進(jìn)行解碼; 第2判定單元,其在由所述第I判定單元判定為通過所述第I解碼單元對(duì)所述對(duì)象幀進(jìn)行解碼的情況下,判定是通過所述第I解碼單元對(duì)緊挨著所述對(duì)象幀之前的之前幀進(jìn)行了解碼,還是通過所述第2解碼單元對(duì)所述之前幀進(jìn)行了解碼; 內(nèi)部狀態(tài)計(jì)算單元,其僅在由所述第2判定單元判定為通過所述第2解碼單元對(duì)所述之前幀進(jìn)行了解碼的情況下,根據(jù)所述之前幀的解碼結(jié)果計(jì)算殘差信號(hào);以及 初始化單元,其使用由所述內(nèi)部狀態(tài)計(jì)算單元計(jì)算出的所述殘差信號(hào),對(duì)所述第I解碼單元的自適應(yīng)碼本進(jìn)行初始化, 在所述初始化單元對(duì)所述內(nèi)部狀態(tài)進(jìn)行了初始化后,所述第I解碼單元對(duì)所述對(duì)象幀 進(jìn)行解碼。
5.—種聲音信號(hào)處理系統(tǒng),其特征在于, 該聲音信號(hào)處理系統(tǒng)具有權(quán)利要求3所述的編碼裝置和權(quán)利要求4所述的解碼裝置, 所述解碼裝置對(duì)由所述編碼裝置進(jìn)行了編碼的編碼聲音信號(hào)進(jìn)行解碼。
全文摘要
本發(fā)明提供聲音信號(hào)編解碼方法、編解碼裝置和聲音信號(hào)處理系統(tǒng)。在通過基于與線性預(yù)測(cè)編碼方式不同的編碼方式的第2編碼部(14)對(duì)通過基于該線性預(yù)測(cè)編碼方式的第1編碼部(13)進(jìn)行編碼的編碼對(duì)象幀前面的編碼之前幀進(jìn)行編碼的情況下,通過對(duì)第1編碼部(13)的內(nèi)部狀態(tài)進(jìn)行初始化,能夠通過線性預(yù)測(cè)編碼方式進(jìn)行編碼對(duì)象幀的編碼。由此,能夠?qū)崿F(xiàn)包含線性預(yù)測(cè)編碼方式和與線性預(yù)測(cè)編碼方式不同的其他編碼方式的編碼處理。
文檔編號(hào)G10L19/14GK102737642SQ201210242200
公開日2012年10月17日 申請(qǐng)日期2010年3月3日 優(yōu)先權(quán)日2009年3月6日
發(fā)明者仲信彥, 菊入圭, 辻野孝輔 申請(qǐng)人:株式會(huì)社Ntt都科摩