專利名稱:音頻信號編碼裝置和方法以及解碼裝置和方法
技術(shù)領(lǐng)域:
本發(fā)明涉及一種音頻信號編碼方法和裝置以及音頻信號解碼方法和裝置,從而可以減少編碼和解碼延時量。
近年來,已對數(shù)字音頻信號編碼方法進行了研究和開發(fā),并且,音頻編碼(如國際標準ISO/IEC 11172-2規(guī)定的)MPEG-1方法已廣泛使用,由于其能即使在以低比特率產(chǎn)生編碼數(shù)據(jù)時,仍能實現(xiàn)高質(zhì)量的音頻再現(xiàn)。
圖13和14示出了一種符合MPEG-1標準的音頻編碼/解碼系統(tǒng)的基本特征。圖13是基本MPEG-1音頻編碼器的框圖,而圖14是相應(yīng)解碼器的框圖。在MPEG-1音頻標準下,對于實際的編碼/解碼系統(tǒng)有三種不同的模型,依次增加了復雜性,它們分別被稱為層1、層2和層3。圖15、16和17分別示出了MPEG-1音頻層1編碼、層2編碼和層3編碼的幀格式。編碼效率的程度隨著層數(shù)的增大而提高,即層3編碼能以比層2編碼更低的比特率對數(shù)據(jù)進行編碼和傳輸而不會損失再現(xiàn)質(zhì)量,層2編碼同樣比層1編碼更好。然而隨著層數(shù)的增加編碼和解碼延時量也增加。
在圖13中,MPEG-1音頻編碼裝置是由映射部分112、音質(zhì)模型部分113、量化編碼部分114和幀打包部分115。該編碼器的映射部分112是子帶濾波器,其把后續(xù)的各組PCM數(shù)字音頻數(shù)據(jù)樣本分解成多組頻率域子帶樣本,這些子帶樣本對應(yīng)于固定的多個子帶的各個子帶。對于MPEG-1音頻層2編碼,每組32個輸入數(shù)字音頻樣本映射到對應(yīng)的32個子帶樣本組,這些12組的32個輸入音頻樣本(即,總計384個后續(xù)音頻數(shù)據(jù)樣本)的內(nèi)容以量化和編碼子帶樣本的形式由每個編碼比特流幀傳送,如ISO/IEC 11172-3的附錄C中所描述的一樣。從時間域向頻率域的這種變換會產(chǎn)生數(shù)據(jù)樣本的細化,由于對于每幀,都有一些幅度不能滿足量化和編碼的樣本的子帶。
在對每幀編碼時,音質(zhì)模型部分113得到各子帶的表征值,每個表征值表示任一信號分量必須超過的音頻信號電平,例如量化噪聲,以便信號分量成為人可以聽到的最終的再現(xiàn)音頻信號。在MPEG-1音頻層1編碼的情況下,量化編碼部分114利用各子帶的表征值和子帶的子帶樣本的信噪比,得到每個子帶的相應(yīng)的表征-噪聲比,并相應(yīng)地產(chǎn)生位分配信息,用于規(guī)定用于量化子帶的各子帶樣本的比特數(shù)(在樣本的幅度不滿足編碼的各子帶分配零比特)。
得到位分配信息,以便在量化后,使各子帶的表征-噪聲比值基本平衡,即,把各個較大的量化比特數(shù)賦予較小換算系數(shù)的子帶,把各個較小的量化比特數(shù)賦予較大換算系數(shù)的子帶。對于MPEG-1音頻層1編碼,這是通過簡單迭代算法,分配在幀內(nèi)可用的比特量化這些樣本來實現(xiàn)的,這在ISO/IEC 11172-3附錄C中有描述。
幀打包部分115接收量化編碼部分114的每幀產(chǎn)生的輸出數(shù)據(jù),而且,可能需要包括在該幀內(nèi)的輔助數(shù)據(jù)產(chǎn)生幀首部和校錯數(shù)據(jù),以需要的比特流格式把這些數(shù)據(jù)組合成一幀。
根據(jù)是否使用層1、層2或?qū)?確定量化編碼部分114的操作方式以及幀打包部分115產(chǎn)生的幀格式。
圖14所示的MPEG-1解碼器由幀解包部分122、重構(gòu)部分123和反映射部分124構(gòu)成。解碼器121的操作如下。當構(gòu)成一幀的一串位被按序提供給幀解包部分122時,上述的幀的各數(shù)據(jù)部分被幀解碼部分122分開,解碼器輸出輔助數(shù)據(jù)把余下的幀數(shù)據(jù)提供給重構(gòu)部分123。重構(gòu)部分123反量化各子帶的子帶樣本,把得到的樣本提供給反映射部分124。反映射部分124進行相對于編碼器的映射部分112的反映射操作,即把該幀傳送來的量化的子帶樣本轉(zhuǎn)換成相應(yīng)的PCM數(shù)字音頻數(shù)據(jù)樣本組。假設(shè)把384個音頻數(shù)據(jù)樣本編碼成一幀,如上所述,反映射部分124將相應(yīng)地把各幀傳送來的子帶樣本轉(zhuǎn)換成384個PCM音頻數(shù)據(jù)樣本,即解碼器121的反映射部分124的輸出數(shù)據(jù)的樣本速率與輸入到編碼器111的音頻數(shù)據(jù)的樣本速率相等,為32kHz、44.1kHz或48kHz。
如上所述,層1、層2和層3 MPEG-1比特流格式的層數(shù)越高,編碼效率就越高。因此,如果使用層2,或者尤其是使用層3格式,可以從解碼PCM音頻數(shù)據(jù)實現(xiàn)高質(zhì)音頻再現(xiàn),即使是MPEG-1編碼數(shù)據(jù)的低比特率。圖15示出了層1情況下的MPEG-1比特流格式。如圖所示,每幀由首部131、后跟校錯部分132、音頻數(shù)據(jù)部分133以及輔助數(shù)據(jù)部分134構(gòu)成。音頻數(shù)據(jù)部分133由包含每個子帶的各位分配信息位分配信息部分、包含各子帶的各換算系數(shù)的換算系數(shù)部分以及包含量化編碼子帶樣本的數(shù)據(jù)樣本部分組成。
圖16示出了層2情況下的MPEG-1比特流格式。如圖所示,它與上述的層1的比特流格式的不同僅在于音頻數(shù)據(jù)部分還包括換算系數(shù)選擇信息。
圖17示出了層3情況下的MPEG-1比特流格式。如圖所示,它與上述的層1的比特流格式的不同在于音頻數(shù)據(jù)部分153由“附加信息”部分和“主信息”部分構(gòu)成。在這種情況下,子帶樣本已經(jīng)過Huffman編碼,主數(shù)據(jù)由表示換算系數(shù)的位、經(jīng)Huffman編碼的數(shù)據(jù)和輔助數(shù)據(jù)組成。在編碼產(chǎn)生的實際的比特流中,對于層3MPEG-1音頻編碼,幀的“主信息”部分位于在幀首部之前的時間軸部分上。幀的“主信息”的起始實際位置由幀的“附加信息”指定。在單聲道音頻的情況下,“附加信息”部分占用17個字節(jié),而在雙聲道音頻的情況下,它占用32個字節(jié)。
對于這種已有技術(shù)的音頻信號編碼方法,幀長度(即一幀編碼和傳送的原始數(shù)字音頻信號的樣本數(shù))在層1格式的情況下為384個樣本,在層2和層3格式的情況下為1152個樣本。因此,假設(shè)音頻數(shù)據(jù)取樣頻率為48kHz,則在層1格式的情況下,幀長度等于8ms,在層2和層3格式的情況下,為20ms。如果音頻數(shù)據(jù)取樣頻率為32kHz,則在層1格式的情況下,幀長度為12ms,在層2和層3格式的情況下為36ms。
當進行上述的實時處理以實現(xiàn)已有技術(shù)的編碼和解碼方法時,執(zhí)行編碼然后進行解碼所需要的延時總量為幀長度的四倍。這是因為,為了以幀為單位對音頻數(shù)據(jù)進行編碼,要在緩沖器中連續(xù)累積一幀的音頻數(shù)據(jù)樣本,同時要讀取前一幀的音頻數(shù)據(jù)樣本,即當前保持在緩沖器中的樣本,然后進行編碼。通過提高處理速率是可以減少編碼一幀數(shù)據(jù)所需要的時間的。然而,與處理速度的提高程度無關(guān),在開始對一組樣本編碼處理之前,它仍必須等到一幀的音頻數(shù)據(jù)樣本都已累積到緩沖器中。因此,完成一幀編碼所需要的時間是幀長度的兩倍。
同樣,在解碼期間,一幀傳送的音頻數(shù)據(jù)樣本按序累積到緩沖器中,從緩沖器中(以取樣頻率)按序讀取解碼音頻數(shù)據(jù)樣本,同時,對后一幀進行解碼。通過提高傳送編碼比特流的比特率以及解碼處理的速度可以減少把一幀的音頻數(shù)據(jù)樣本累積到緩沖器中所需的時間。然而,仍必須實時輸出每幀的音頻數(shù)據(jù)樣本,所以解碼一幀所需的時間是幀長度的兩倍。
因此,執(zhí)行編碼和解碼一幀所需的總時間,即總延時為幀長度的四倍。如果,例如音頻數(shù)據(jù)的取樣頻率為48kHz,則在MPEG-1層1格式(幀長度為8ms)的情況下,延時變?yōu)?2ms,而在MPEG-1層2和層3格式(幀長度為24ms)的情況下,延時變?yōu)?6ms。此外,MPEG-1編碼的子帶濾波器以及執(zhí)行相反功能的MPEG-1解碼的相應(yīng)的子帶濾波器的操作還會進一步引入延時,如上所述,子帶濾波器把音頻數(shù)據(jù)分解成子帶樣本。這一濾波器的延時由抽頭(tap)數(shù)確定,在MPEG-1音頻編碼和解碼的情況下,每個子帶濾波器具有512個抽頭。當音頻數(shù)據(jù)取樣頻率為48khz時,這種濾波器引入10.67ms的延時。因此,當取樣頻率為48kHz時,在層1格式的情況下,編碼和解碼延時的總量變成約為43ms,在層2和層3格式的情況下,變成約為107ms。
人的聽覺可以檢測到10至100ms或更高的延時,所以這種延時在某些MPEG-1音頻編碼解碼系統(tǒng)的應(yīng)用中可能是嚴重的缺點。例如,這種編碼方法可以應(yīng)用于對話筒接收到的聲音進行編碼并傳送給接收器,在其內(nèi)進行解碼的音頻系統(tǒng)中。如果一個人正在對著這種音頻系統(tǒng)的話筒講話或唱歌,則上述的延時將會造成該人嘴的動作與從揚聲器中發(fā)出的聲音之間有差異。這對聽眾將產(chǎn)生不自然的效果。同樣,這種編碼系統(tǒng)可以用于揚聲器安裝在舞臺上的音頻系統(tǒng),這樣,一個人可以聽到揚聲器發(fā)出的他或她自已的聲音,同時,利用連接到該系統(tǒng)上的話筒。在這種情況下,如果編碼和解碼音頻信號引起較長的延時,則會在直達人耳的聲音與揚聲器發(fā)出的聲音之間存在顯著的時間差。這可能會導至講話或唱歌困難。
為了減少MPEG-1音頻編碼/解碼系統(tǒng)的延時,必須減小子帶濾波器的延時和/或幀長度。然而,如果減小幀長度,則除音頻樣本之外的其它信息,即首部和位分配信息等占用的每幀的比例將增加。對于MPEG-1層1格式,如果編碼數(shù)據(jù)的比特率為128kbit/s,則構(gòu)成一幀的總比特數(shù)為1024。這些位中,32位分配給首部,128位分配給位分配信息,余下的864位可用來分配給換算系數(shù)和音頻數(shù)據(jù)樣本。在這種情況下,如果幀長度減小到標準長度的1/4,即,使一幀的換算系數(shù)和音頻樣本(子帶樣本)表示96個原始音頻信號的樣本,則構(gòu)成一幀的總位數(shù)將變成256,如果把其中32位分配給首部,128位分配給位分配信息,則僅96位分配給換算系數(shù)音頻樣本。因此,鑒于原始幀的長度,如果幀長度減少到其原始值的1/4,則平均2.25比特可用于每個編碼換算系數(shù)和量化編碼音頻樣本,僅1比特可用于每個樣本。
因此,如果縮短幀長度,會導致可用來分配給實際編碼音頻數(shù)據(jù)的比特數(shù)減少,因此,音頻再現(xiàn)質(zhì)量將會變差。
本發(fā)明的一個目的在于克服已有技術(shù)的數(shù)字音頻信號編碼和解碼的缺點,其方法為提供一種編碼和解碼數(shù)字音頻信號的方法和裝置,它把編碼數(shù)字音頻信號按幀順序傳輸成格式化的比特流,從而可以縮短幀長度(如上所述定義),同時保持編碼比特流的比特率不變,不會使音頻再現(xiàn)質(zhì)量變差。因此,本發(fā)明能減少總體的編碼和解碼延時,同時仍使用低比特率,而避免已有技術(shù)的音頻再現(xiàn)質(zhì)量因可用于編碼每幀傳送的音頻數(shù)據(jù)的幀位數(shù)的減少而引起的音頻再現(xiàn)質(zhì)量的降低的缺點。
本發(fā)明由于從編碼數(shù)據(jù)流中取消了每幀的位分配信息,即,取消了已有技術(shù)中必須可用于解碼裝置以確定已分配給量化一幀內(nèi)傳送的數(shù)據(jù)每個數(shù)據(jù)樣本的各位數(shù),從而基本上實現(xiàn)了上述目的。如各換算系數(shù)所指示的,編碼裝置僅根據(jù)等待編碼的數(shù)據(jù)樣本的相對幅度計算每幀的位分配信息。由于在編碼數(shù)據(jù)流中不傳送每幀的位分配信息,所以在解碼裝置中要用與編碼裝置中相同的方法再計算位分配信息。對于本發(fā)明,這可以通過僅把換算系數(shù)用來取得位分配數(shù)據(jù)來實現(xiàn)。
因此,基本上增加的位數(shù)都變成可以在每幀中用來對音頻數(shù)據(jù)進行編碼,從而使幀長度縮短,因此縮短編碼/解碼延時,而不會增加編碼數(shù)據(jù)的比特率,不會使音頻再現(xiàn)質(zhì)量變差,盡管幀長度的這種減小意味著必須將每幀的總位數(shù)的較多比例分配給不同于編碼音頻數(shù)據(jù)的數(shù)據(jù)。
本發(fā)明較佳地應(yīng)用于編碼和解碼系統(tǒng),其中編碼裝置對數(shù)字音頻信號編碼器的每組后續(xù)樣本進行映射操作,以獲得對應(yīng)于覆蓋音頻范圍的多個固定子帶的各子帶樣本組,對這些子帶樣本組計算各換算系數(shù),根據(jù)換算系數(shù)計算位分配信息,根據(jù)位分配信息對幅度足夠大的每個子帶樣本組進行編碼,然后歸一化和量化。然后,對這些每個量化子帶樣本和所有換算系數(shù)組(對應(yīng)于所有子帶)在編碼數(shù)據(jù)流的一幀中進行編碼和傳送。這種系統(tǒng)的解碼裝置從這些幀的每幀中取出量化子帶樣本和換算系數(shù),進行解碼,根據(jù)換算系數(shù)運算,得到與編碼裝置中計算的相同的位分配信息,利用該位分配信息對量化的子帶樣本進行去量化。然后對去量化的子帶樣本執(zhí)行與解碼裝置進行的映射操作相反的映射操作,從而恢復數(shù)字音頻信號的原始編碼樣本組。
根據(jù)本發(fā)明的另一個方面,不在每幀中對應(yīng)于所有子帶,對所有換算系數(shù)進行編碼,僅對與前幀中相應(yīng)子帶的換算系數(shù)不同的那些換算系數(shù)進行編碼和傳送。這樣,由于可以減少必須分配給換算系數(shù)的幀位數(shù),所以可以進一步增加可以分配給編碼音頻數(shù)據(jù)的位數(shù),從而能提高音頻再現(xiàn)質(zhì)量。
更具體地說,本發(fā)明提供一種編碼數(shù)字音頻信號的方法,這樣產(chǎn)生各連續(xù)幀,構(gòu)成編碼比特流,即,對一組連續(xù)的數(shù)字音頻信號數(shù)據(jù)樣本進行映射操作,以獲得多組對應(yīng)于固定的多個子帶的各個子帶的多個子帶樣本組,計算對應(yīng)于各子帶樣本組的各換算系數(shù),利用這些換算系數(shù)計算位分配信息,根據(jù)位分配信息和換算系數(shù)量化子帶樣本,對換算系數(shù)和量化子帶樣本進行編碼,組合成一幀作為格式化的位序列,它包括構(gòu)成編碼換算系數(shù)和編碼量化子帶樣本的各位組,而不包括位分配信息。
本發(fā)明還提供一種解碼這種編碼比特流的方法,包含從幀中分離出換算系數(shù)和量化子帶樣本,利用換算系數(shù)計算位分配信息,利用位分配信息和換算系數(shù)對子帶樣本去量化,對去量化的子帶樣本進行反變換處理,以恢復出相應(yīng)的數(shù)字音頻信號的連續(xù)樣本組。
本發(fā)明還提供一種編碼數(shù)字音頻信號的方法,這樣產(chǎn)生各連續(xù)幀,構(gòu)成編碼比特流,即,對一組連續(xù)的數(shù)字音頻信號數(shù)據(jù)樣本進行映射操作,以獲得多組對應(yīng)于固定的多個子帶的各個子帶的多個子帶樣本組,計算對應(yīng)于各子帶樣本組的各換算系數(shù),把各換算系數(shù)與前一幀的相應(yīng)換算系數(shù)進行比較,在檢測到一致的情況下,設(shè)置相應(yīng)的第一條件的換算系數(shù)標記,而當檢測到不一致時,設(shè)置相應(yīng)的第二條件的換算系數(shù)標記,利用換算系數(shù)計算位分配信息,根據(jù)位分配信息和換算系數(shù)量化子帶樣本,對于檢測為一致的情況選擇各換算系數(shù),對所選的換算系數(shù)和量化子帶樣本進行編碼,組合成幀作為格式化的位序列,它包括構(gòu)成換算系數(shù)標記、編碼換算系數(shù)和編碼量化子帶樣本的各位組,而不包括位分配信息。
本發(fā)明還提供一種解碼這種編碼比特流的各幀的方法,包含從幀中分離出換算系數(shù)標記、所選的換算系數(shù)和量化子帶樣本,連續(xù)判斷每個換算系數(shù)標記,當發(fā)現(xiàn)換算系數(shù)標記處于上述第一條件時,指定利用前一幀的相應(yīng)換算系數(shù),當發(fā)現(xiàn)換算系數(shù)標記處于上述第二條件時,指定使用當前接收的幀傳送的相應(yīng)換算系數(shù),然后,利用指定的換算系數(shù)計算當前接收的幀的位分配信息,利用位分配信息和指定的換算系數(shù)對子帶樣本去量化,對去量化的子帶樣本進行反映射操作,恢復出相應(yīng)的數(shù)字音頻信號的連續(xù)樣本組。
本發(fā)明還提供一種編碼和解碼系統(tǒng)的編碼裝置和相應(yīng)的解碼裝置,把數(shù)字音頻信號傳送成如幀序列格式化的編碼比特流。這種系統(tǒng)的編碼裝置包含映射裝置,對一組數(shù)字音頻信號的樣本,即其數(shù)據(jù)由一幀傳送的一組樣本進行操作,獲得多組子帶樣本,這些組分別對應(yīng)于固定的多個子帶;換算系數(shù)計算裝置,計算這些子帶樣本組的各換算系數(shù);位分配信息計算裝置,對換算系數(shù)進行操作,計算該幀的位分配信息;量化裝置,根據(jù)位分配信息和換算系數(shù)量化子帶樣本;以及幀打包裝置,編碼換算系數(shù),量化子帶樣本,組合成一幀作為格式化的位序列,它包括構(gòu)成編碼換算系數(shù)和編碼量化子帶樣本的各位組,而不包括位分配信息。
這種系統(tǒng)的相應(yīng)解碼裝置包含幀解包裝置,對每幀進行操作,分離出換算系數(shù)和量化子帶樣本;位分配信息計算裝置,對換算系數(shù)進行操作,計算該幀的位分配信息;數(shù)據(jù)重構(gòu)裝置,對位分配信息和換算系數(shù)進行操作,恢復出一組去量化子帶樣本;以及反映射裝置,對去量化子帶樣本進行操作,恢復出一組數(shù)字音頻信號的連續(xù)樣本。
本發(fā)明還提供一種編碼和解碼系統(tǒng)的編碼裝置和相應(yīng)的解碼裝置,把數(shù)字音頻信號傳送成如幀序列格式化的編碼比特流,從而可以使必須分配給編碼音頻數(shù)據(jù)的換算系數(shù)的幀位數(shù)最少。這種系統(tǒng)的編碼裝置包含映射裝置,對一組數(shù)字音頻信號的樣本,即其數(shù)據(jù)由一幀傳送的一組樣本進行操作,以獲得多組子帶樣本,這些組分別對應(yīng)于固定的多個子帶;換算系數(shù)計算裝置,計算這些子帶樣本組的各換算系數(shù);包括存儲裝置的換算系數(shù)判斷裝置,把每個幀換算系數(shù)與存儲在存儲裝置中的前一幀的相應(yīng)換算系數(shù)進行比較,當檢測到一致時,設(shè)置預(yù)定的把該換算系數(shù)對應(yīng)于第一條件的換算系數(shù)標記,當檢測到比較結(jié)果為不一致時,設(shè)置預(yù)定的把該換算系數(shù)對應(yīng)于第二條件的換算系數(shù)標記;位分配信息計算裝置,對換算系數(shù)進行操作,計算該幀的位分配信息;量化裝置,根據(jù)位分配信息和換算系數(shù)量化子帶樣本;以及幀打包裝置,編碼所選的換算系數(shù),量化子帶樣本,組合成一幀作為格式化的位序列,它包括構(gòu)成換算系數(shù)標記、編碼換算系數(shù)和編碼量化子帶樣本的各位組,而不包括位分配信息。
這種系統(tǒng)的相應(yīng)解碼裝置包含幀解包裝置,對每幀進行操作,分離出換算系數(shù)標記、所選的換算系數(shù)和量化子帶樣本;包括存儲器的換算系數(shù)恢復裝置,判斷各換算系數(shù)標記的條件,當判斷出換算系數(shù)標記處于第一條件時,從對應(yīng)于換算系數(shù)標記的子帶的存儲器位置上讀取出換算系數(shù),輸出該換算系數(shù),而當判斷出換算系數(shù)標記處于第二條件時,輸出該幀傳送的所選擇的換算系數(shù)中相應(yīng)的一個,并把該換算系數(shù)寫入到存儲裝置中;
位分配信息計算裝置,對換算系數(shù)恢復裝置產(chǎn)生的換算系數(shù)進行操作,計算該幀的位分配信息;數(shù)據(jù)重構(gòu)裝置,對位分配信息和換算系數(shù)進行操作,恢復出一組去量化子帶樣本;以及反映射裝置,對去量化子帶樣本進行操作,恢復出一組數(shù)字音頻信號的連續(xù)樣本。
圖1示出了根據(jù)本發(fā)明的音頻信號編碼方法的第一實施例的算法;圖2是第一音頻信號編碼方法實施例產(chǎn)生的編碼比特流的各幀的結(jié)構(gòu)圖;圖3示出了根據(jù)本發(fā)明的音頻信號編碼方法的第二實施例的算法;圖4是第二音頻信號編碼方法實施例產(chǎn)生的編碼比特流的各幀的結(jié)構(gòu)圖;圖5示出了根據(jù)本發(fā)明的音頻信號解碼方法的第一實施例的算法;圖6示出了根據(jù)本發(fā)明的音頻信號解碼方法的第二實施例的算法;圖7是根據(jù)本發(fā)明的音頻信號編碼裝置的第一實施例的一般系統(tǒng)框圖;圖8是根據(jù)本發(fā)明的音頻信號編碼裝置的第二實施例的一般系統(tǒng)框圖;圖9是根據(jù)本發(fā)明的音頻信號解碼裝置的第一實施例的一般系統(tǒng)框圖;圖10是根據(jù)本發(fā)明的音頻信號解碼裝置的第二實施例的一般系統(tǒng)框圖;圖11是圖8的音頻信號編碼裝置的換算系數(shù)判斷部分執(zhí)行的處理的流程圖;圖12是圖10的音頻信號解碼裝置的換算系數(shù)恢復部分執(zhí)行的處理的流程圖;圖13是已有技術(shù)的音頻信號編碼裝置的一個例子的一般系統(tǒng)框圖;圖14是已有技術(shù)的音頻信號編碼裝置的一個例子的一般系統(tǒng)框圖;以及圖15、16和17分別示出了MPEG-1音頻層1、層2和層3編碼產(chǎn)生的編碼數(shù)據(jù)流的幀結(jié)構(gòu)。
下面參照圖1和圖2描述根據(jù)本發(fā)明的音頻信號編碼方法的第一實施例。圖1示出了這種音頻信號編碼方法實施例的各種處理階段,圖2示出了所產(chǎn)生的編碼比特流的幀格式。在圖1中數(shù)字1指示映射階段,分解PCM數(shù)字音頻信號樣本,獲得子帶樣本。數(shù)字2指示換算系數(shù)計算階段,數(shù)字3表示位分配信息計算階段,數(shù)字4表示量化階段,數(shù)字5表示幀打包階段。如圖2所示,編碼數(shù)據(jù)比特流的每幀由首部21、校錯部分22、一組編碼換算系數(shù)和一組編碼量化子帶樣本構(gòu)成的音頻數(shù)據(jù)部分23組成。此外,還可以包括輔助數(shù)據(jù)部分24。
本實施例的工作情況如下。在映射階段1,對連接的PCM音頻數(shù)據(jù)樣本組進行變換處理,得到相應(yīng)的映射樣本組,該映射組中可用的樣本數(shù)比相應(yīng)的輸入PCM樣本組少,即會發(fā)生一些樣本細化。假設(shè)映射操作由這些動作組成,對各連續(xù)的PCM音頻數(shù)據(jù)樣本組進行子帶濾波,取得相應(yīng)的子帶樣本組,即,把各連續(xù)的32個輸入PCM音頻數(shù)據(jù)樣本組映射到相應(yīng)的32個子帶樣本組,在一幀編碼形式中傳送三組這樣的32個PCM音頻數(shù)據(jù)樣本組(96個樣本)的內(nèi)容。
在換算系數(shù)計算階段2,每次從映射階段1已獲得的一個子帶的完全的三個子帶樣本組,為了插入到幀中,計算該組樣本的換算系數(shù)。也就是說,對于一幀計算各子帶的各個換算系數(shù)。當要插入到幀中的所有樣本都已產(chǎn)生時,在位分配信息分配階段3使用已為各子帶計算得到的32個換算系數(shù),取得位分配信息。位分配信息指定各子帶的量化級數(shù),從而得以量化位數(shù),在量化該子帶的各子帶樣本時使用。
位分配信息分配階段3的操作可以與ISO/IEC 11172-3附錄C中描述的迭代位分配方法相似,但是與子帶的各表征噪聲比相對,應(yīng)用于各子帶的信噪比值。這種方法分配較大量化位數(shù)來量化換算系數(shù)值較小的各子帶的子帶樣本,分配較小量化位數(shù)來量化換算系數(shù)值較大的各子帶的子帶樣本,即,分配全部可用位數(shù)量化幀子帶樣本,以使量化樣本的各信噪比基本相等。
在量化階段4,根據(jù)已為該幀計算得到的位分配信息量化為該幀取得的子帶樣本。具體地說,對于每個子帶,相應(yīng)的子帶樣本組首先利用在位分配信息分配階段2已計算得到的該子帶的換算系數(shù)進行歸一化,然后,利用位分配信息為該子帶指定的量化位數(shù)量化這些歸一化樣本中的每個樣本。
如果在位分配信息分配階段3判斷出計算得到的子帶換算系數(shù)的幅度不夠大,表示它不能實際用來量化取得的該子帶的樣本,則為該子帶分配的換算系數(shù)為零,表示為該子帶取得的樣本未被量化和插入到當前幀中。然而,為這一子帶計算得到的換算系數(shù)被插入到該幀中。
在幀打包階段5,產(chǎn)生首部和校錯數(shù)據(jù),這些數(shù)據(jù)與量化子帶樣本組一起對應(yīng)于已分配了非零量化位數(shù)的每個子帶,對為所有子帶取得的換算系數(shù)以及輔助數(shù)據(jù)進行編碼,然后把得到的位組排列在圖2所示的幀格式中??梢岳斫?,每幀傳送的音頻數(shù)據(jù)23對應(yīng)于固定數(shù)量的原始輸入音頻數(shù)據(jù)樣本(例如96個樣本)。
圖2示出了該實施例產(chǎn)生的編碼比特流的比特流格式。如圖所示,從圖2的幀格式中省略了插入到圖15中所示的已有技術(shù)的MPEG-1層1幀格式的每幀中的位分配信息。
由于不必在每幀中分配位來傳送位分配信息,對于本實施例,可以實現(xiàn)更高的編碼效率。也就是說,可以比上述的已有技術(shù)的編碼方法可能分配的更多的位數(shù)分配成量化幀的子帶樣本。這可以使幀長度比已有技術(shù)的方法更短,而不會使最終的音頻信號再現(xiàn)質(zhì)量變差。如果例如幀長度從MPEG-1層1的384個數(shù)字音頻信號樣本減少96個樣本,則如上所述,假設(shè)構(gòu)成一幀的總位數(shù)變成256,這些位中的32位分配給首部,則由于位分配信息所需要的128位變成可以使用的,所以現(xiàn)在每幀中可以有總計224位分配給編碼換算系數(shù)和音頻樣本。也就是說,對于MPEG-1層1編碼的原始幀長度,在上述的利用128kbit/s和1024bits/frame的比特率的例子中,對于每個數(shù)字音頻信號樣本有平均2.25位可用,對于本發(fā)明的第一實施例,如果幀長度減少到其原始值的1/4,這樣,一幀中的換算系數(shù)和子帶樣本表示96個原始音頻信號的樣本,則平均224/96,即約為2.33位變?yōu)榭捎糜跀?shù)字音頻信號樣本。因此,可以減少幀長度,從而減少延時,而并不降低音頻再現(xiàn)質(zhì)量。
下面參照圖3和圖4描述根據(jù)本發(fā)明的音頻信號編碼方法的第二實施例。圖3示出了這種音頻信號編碼方法實施例的各個處理階段,圖4示出了所產(chǎn)生的編碼比特流的幀格式。在圖3中,數(shù)字31指示映射階段,其功能如上述的第一實施例的映射階段1一樣,數(shù)字32指示換算系數(shù)計算階段,數(shù)字33表示換算系數(shù)確定階段,34表示位分配信息計算階段,數(shù)字35表示量化階段,數(shù)字36表示該方法的幀打包階段。如圖4所示,編碼數(shù)據(jù)比特流的每幀由首部41、校錯部分42、由一組每個與特定一個子帶相關(guān)的換算系數(shù)標記、一組編碼換算系數(shù)和一組編碼量化子帶樣本構(gòu)成的音頻數(shù)據(jù)部分43以及輔助數(shù)據(jù)部分44組成。
如上所述,每次在映射階段31中處理一組輸入PCM音頻數(shù)據(jù)樣本,取得分別對應(yīng)于各子帶的一組子帶樣本,一般僅為全部子帶組中的一部分取得可用的子帶樣本。對于已有技術(shù)的MPEG-1音頻編碼方法,僅對已得出有效子帶樣本組的各子帶的換算系數(shù)進行編碼,并插入到一幀中,如此,在位分配信息中指定分配的位(相對于該幀,余下的子帶在ISO/IEC 1172-3中稱為“非傳送子帶”)。在傳送的幀中省略換算系數(shù)是可能的,這是因為解碼裝置可以利用位分配信息確定包含在傳送的幀內(nèi)的換算系數(shù)與相應(yīng)的子帶之間的關(guān)系,即,已知如果為一子帶分配零量化位,則不傳輸對應(yīng)于該子帶的換算系數(shù)。
然而,對于本發(fā)明,由于沒有傳送位分配信息,所以如后所述,對于每幀,必須所有子帶的換算系數(shù)都可以解碼處理時使用。
因此,根據(jù)本發(fā)明的音頻信號編碼方法的第二實施例被設(shè)計成在上述的第一實施例上進行改進,如下所述,使編碼必須在每幀中傳送的全部換算系數(shù)組的效率更高。
參照圖3,在映射階段31通過如第一實施例所述的子帶濾波處理取得對應(yīng)于各子帶的連續(xù)子帶樣本組,為對應(yīng)于一子帶的每組連續(xù)子帶樣本計算換算系數(shù))例如,3個子帶樣本,假設(shè)總計有32個子帶,每幀傳送96個音頻數(shù)據(jù)樣本內(nèi)容),在換算系數(shù)計算階段32中,如前一方法實施例的位分配信息分配階段2中所描述的一樣。然而,對于本實施例,在換算系數(shù)判斷階段33時,當編碼起始幀時,把取得的對應(yīng)于子帶的換算系數(shù)寫入到各預(yù)定的存儲器位置上。此后,在幀打包階段36,每次編碼新幀時,當計算子帶的換算系數(shù)時,從存儲器中讀取出剛為該子帶計算得到的前一個換算系數(shù),并與新?lián)Q算系數(shù)比較。如果這些換算系數(shù)不一致,則把新?lián)Q算系數(shù)寫入到存儲器中,更新該子帶的換算系數(shù),并選出插入到當前幀中。然后把已預(yù)定對應(yīng)于該子帶的換算系數(shù)標記設(shè)置成預(yù)定狀態(tài),例如設(shè)置成1。然而,如果發(fā)現(xiàn)新計算得到的換算系數(shù)和從存儲器中讀取的換算系數(shù)一致,則把該子帶的換算系數(shù)標記設(shè)置成其它狀態(tài),例如設(shè)置成0,在當前幀中不傳送該子帶的換算系數(shù)。在幀打包階段36,把得到的所有子帶的換算系數(shù)標記插入到編碼比特流中。
在位分配信息計算階段34,以與前面的實施例的位分配信息分配階段3中相同的方法,根據(jù)為各子帶取得的換算系數(shù)計算位分配信息。
在幀打包階段36,把上述的一幀的所選換算系數(shù)編碼成各個固定大小的位組,并與各子帶的各個換算系數(shù)標記和量化編碼樣本組合成位序列,如圖4所示,構(gòu)成幀格式的音頻數(shù)據(jù)部分43。即與表示首部分41、校錯數(shù)據(jù)42和輔助數(shù)據(jù)44組合,構(gòu)成整個幀。
因此,可以理解,本實施例提供了上述的前一實施例的優(yōu)點,即,從各個傳送幀中取消了位分配信息,而且提供了改進編碼效率的優(yōu)點,由于僅當各換算系數(shù)與前一幀的相應(yīng)子帶的換算系數(shù)不同,才把各換算系數(shù)插入到幀中。因此,與上述的第一實施例相比,音頻信號編碼方法的第二實施例能減少每幀中必須分配給換算系數(shù)的位數(shù),從而使分配給子帶樣本的位數(shù)更多。因此,如上所述,為了減少編碼延時,幀長度與已有技術(shù)相比縮短了,而編碼數(shù)據(jù)流的比特率沒有改變,所以利用第二實施例的方法可以進一步改進再現(xiàn)聲音質(zhì)量。
圖5示出了對應(yīng)于圖1的音頻信號編碼方法的音頻信號解碼方法的實施例。它由幀解包階段51、位分配信息計算階段52、重構(gòu)階段53和反映射階段54組成。在描述本實施例的操作之前,先討論解碼已編碼音頻數(shù)據(jù)樣本所必須的基本信息。對于如圖15所示的MPEG-1音頻層1幀格式,由于僅當位分配信息把非零位數(shù)分配給子帶的樣本,才為子帶傳送一個換算系數(shù),所以音頻數(shù)據(jù)部分133的換算系數(shù)部分的長度是變化的。然而由于在每幀內(nèi)都把位分配信息傳送給解碼器,所以解碼可以快速地確定接收到的換算系數(shù)與各子帶之間的對應(yīng)關(guān)系,以及表示各編碼音頻樣本的位組與各子帶之間的對應(yīng)關(guān)系。對于本發(fā)明的方法,由于在編碼比特流中不傳送位分配信息,所以解碼器必須使用各幀的音頻數(shù)據(jù)部分的換算系數(shù)部分內(nèi)傳送的換算系數(shù)計算位分配信息。然后可以把位分配信息用來取得表示各編碼音頻樣本(即子帶樣本)的位組,正確地把這些它相應(yīng)的子帶相關(guān)。參照圖2的幀格式的例子,由于在每幀中都傳送32個子帶的所有換算系數(shù),每個換算系數(shù)被編碼成例如6位,則音頻數(shù)據(jù)部分23的換算系數(shù)部分的長度被固定成192位,這樣音頻數(shù)據(jù)部分23的編碼樣本部分的起始位置是固定的。通過產(chǎn)生幀的位分配信息,解碼裝置可以確定已分配了零位的那些子帶,以及已分配給其它每個子帶的每個量化樣本的相應(yīng)各位數(shù)。從而這些子帶樣本可以根據(jù)幀的音頻數(shù)據(jù)部分23的音頻樣本部分得到,正確地與它們相應(yīng)的子帶相關(guān)。
現(xiàn)在參照圖5,在幀解包階段51,分析每幀,如圖2所示,把它分離成其各個分量部分,即首部、校錯數(shù)據(jù)、換算系數(shù)等,并解碼和輸出這些數(shù)據(jù)。在位分配信息計算階段52,把從幀中取出的換算系數(shù)用來計算該幀的位分配信息。在重構(gòu)階段53,把位分配信息與上述的該幀的換算系數(shù)一起用來去量化該幀的音頻數(shù)據(jù)部分23的子帶樣本。在反映射階段54,對子帶樣本進行反映射處理,也就是說,進行從頻率域返回到時間域的變化,從該幀傳送的子帶樣本恢復出原始數(shù)字音頻信號樣本組(例如,96個數(shù)字音頻信號樣本)。
因此,可以理解,圖1的編碼器實施例與圖5的解碼器實施例組合可以把編碼音頻數(shù)據(jù)傳送成幀序列,而不需要把已有技術(shù)中必須的位分配信息插入到每幀中。因此,每幀中有更多的位數(shù)可用來分配給編碼音頻數(shù)據(jù)樣本。因而,可以使用更短的幀長度,如上所述,相應(yīng)地使編碼延時值更小,而不會改變編碼數(shù)據(jù)流的比特率,不會降低音頻再現(xiàn)的質(zhì)量。
圖6示出了對應(yīng)于圖3的音頻信號編碼方法的音頻信號解碼方法的實施例。它由幀解包階段61、位分配信息計算階段63、重構(gòu)階段64和反映射階段65組成,其功能對應(yīng)于上述的圖5所示實施例的幀解包階段51、位分配信息計算階段52、重構(gòu)階段53和反映射階段54。然而,如參照圖4所述,由于圖3的音頻信號編碼方法使編碼比特流傳送成包含換算系數(shù)標記的幀,圖6的音頻信號解碼方法實施例包括換算系數(shù)恢復階段62,其功能是利用換算系數(shù)標記傳送的信息產(chǎn)生每個接收到的幀的完整的換算系數(shù)組,即,分別對應(yīng)于各子帶的換算系數(shù)。
對于圖6的實施例,當接收到編碼比特流的幀時,在幀解包階段61,取出表示量化子帶樣本的位組,還有所有子帶的換算系數(shù)以及如參照圖3和圖4所示描述的一樣,那些已被選出要在該幀中傳送的換算系數(shù)。換算系數(shù)恢復階段62中進行的對每個接收到的幀的處理如下。按序檢查接收到的幀的換算系數(shù)標記。如果第一換算系數(shù)標記的狀態(tài)指示已選出在該幀中要傳送的相應(yīng)的換算系數(shù),則把該幀的接收到的換算系數(shù)的第一個系數(shù)設(shè)置到存儲器中(即已預(yù)定成對應(yīng)于該換算系數(shù)的子帶所用的存儲器的位置),作為相應(yīng)子帶的更新存儲換算系數(shù)。如果第一換算系數(shù)標記的狀態(tài)指示在該幀中沒有傳送相應(yīng)的換算系數(shù),則從存儲器中讀取出存儲在預(yù)定由對應(yīng)于該換算系數(shù)標記的子帶使用的存儲器位置內(nèi)的換算系數(shù)。該過程對接收到的每個換算系數(shù)標記連續(xù)重復,從而獲得接收到的幀的所有換算系數(shù)組,從接收到的幀中獲得每個換算系數(shù),或者從存儲器中讀取換算系數(shù)。
以與圖5的實施例相同的方式,在位分配信息計算階段63利用在換算系數(shù)恢復階段62中獲得的換算系數(shù)產(chǎn)生接收到的幀的位分配信息。位分配信息與從幀中取得的換算系數(shù)一起用于在重構(gòu)階段64對從接收到的幀中取得的量化子帶樣本去量化,這樣,恢復出對應(yīng)于每個子帶的各子帶樣本組。在反映射階段65,執(zhí)行這些子帶樣本的反映射,恢復其內(nèi)容由接收到的幀傳送的完整的時間域的PCM數(shù)字音頻信號樣本(例如96個樣本)。
可以理解,由于僅當換算系數(shù)與前一幀中相應(yīng)的子帶的換算系數(shù)不同時,才把換算系數(shù)編碼和插入到幀中,因此圖3的編碼方法實施例結(jié)合圖6的解碼方法實施例可以比圖1的編碼方法實施例與圖5的解碼方法實施例的結(jié)合可能達到的音頻數(shù)據(jù)編碼效果更高。因此,可以有更多的位數(shù)分配給編碼子帶樣本,這樣進一步改善了音頻再現(xiàn)質(zhì)量。
下面參照圖7的一般系統(tǒng)框圖描述根據(jù)本發(fā)明的音頻信號編碼裝置的第一實施例,它實現(xiàn)了上述的圖1的第一音頻信號編碼方法。圖7的音頻信號編碼裝置由映射部分71構(gòu)成,它包含一排子帶濾波器,以把輸入的連續(xù)的PCM數(shù)字音頻信號樣本組分解成多個子帶的各個子帶的子帶樣本。為進行描述,再假設(shè)使用32個子帶,由映射部分71響應(yīng)于每個32個輸入音頻數(shù)據(jù)樣本組,產(chǎn)生32個子帶樣本(即每個子帶一個樣本)。換算系數(shù)計算部分72從映射部分71接收要插入到各幀中的子帶樣本,并計算每個子帶的各換算系數(shù)。把換算系數(shù)提供給位分配信息計算部分73,產(chǎn)生位分配信息,指示要分配給每個子帶的各個位數(shù),以便對一幀的該子帶的各個子帶樣本進行量化。把一幀的子帶樣本、換算系數(shù)和位分配信息提供給量化部分74,根據(jù)位分配信息指示的量化位數(shù)對各子帶的子帶樣本進行量化(即,位分配信息指示的非零量化位數(shù)的各子帶)。
把一幀的量化子帶樣本、換算系數(shù)和輔助數(shù)據(jù)提供給幀打包部分75,產(chǎn)生該幀的首部和校錯數(shù)據(jù),并把該幀的首部、校錯數(shù)據(jù)、量化子帶樣本、換算系數(shù)和輔助數(shù)據(jù)編碼成具有圖2所示和上述格式的比特流。假設(shè)映射部分71處理三組連續(xù)的數(shù)字音頻樣本,得到每幀的子帶樣本,即,如果每幀以編碼形式傳送96個輸入PCM數(shù)字音頻信號樣本,則每幀的音頻數(shù)據(jù)部分包含所有為子帶取得的32個換算系數(shù),這三個子帶樣本組的各組對應(yīng)于該幀的位分配信息已分配的非零量化位數(shù)的各子帶。然而,位分配信息本身并不包含在該幀內(nèi),所以如上面第一音頻信號編碼方法中所描述的,獲得了這樣的優(yōu)點,即可用于編碼音頻數(shù)據(jù)的位數(shù)增加了。
下面參照圖8的一般系統(tǒng)框圖描述根據(jù)本發(fā)明的音頻信號編碼裝置的第二實施例,它實現(xiàn)了上面描述的圖3的第二音頻信號編碼方法。該音頻信號編碼裝置由映射部分81、位分配信息計算部分84、換算系數(shù)判斷部分83、量化部分85和幀打包部分86組成。映射部分81可以被構(gòu)置成與上述的圖7的映射部分71一樣,把映射部分81的一幀的各子帶的子帶樣本組提供給位分配信息計算部分84,計算每個子帶的各換算系數(shù)。把計算得到的換算系數(shù)提供給換算系數(shù)判斷部分83和量化部分85。換算系數(shù)判斷部分83包含存儲器(圖中未示出),具有預(yù)定成對應(yīng)于各個子帶的各存儲器位置,并執(zhí)行圖11的流程圖中所示的形式的算法(其中再假設(shè)子帶數(shù)為32個)。如圖所示,換算系數(shù)判斷部分83連續(xù)地檢查一幀的每個換算系數(shù),判斷該換算系數(shù)是否與前一幀的相應(yīng)子帶的換算系數(shù)相同,如果是后者,則從存儲器中讀取換算系數(shù)。如果不同,則把新的換算系數(shù)寫入到該子帶的存儲器位置上,選擇該換算系數(shù)由當前幀傳送,而把相應(yīng)的換算系數(shù)標記設(shè)置到預(yù)定的相應(yīng)的條件,例如1。否則,把相應(yīng)的換算系數(shù)標記設(shè)置成其它條件,例如0。
把換算系數(shù)標記提供給幀打包部分86,把選擇的換算系數(shù)從換算系數(shù)判斷部分83提供給量化部分85和幀打包部分86。
如前一實施例所述的一樣,量化部分85對一幀的換算系數(shù)進行操作,取得該幀的位分配信息,把位分配信息提供給幀打包部分86,用于量化已分配了非零量化位數(shù)的各子帶的子帶樣本。
把一幀的量化子帶樣本、換算系數(shù)、換算系數(shù)標記和輔助數(shù)據(jù)提供給幀打包部分86,產(chǎn)生該幀的首部和校錯數(shù)據(jù),并把該幀的首部、校錯數(shù)據(jù)、量化子帶樣本和輔助數(shù)據(jù)編碼成相應(yīng)位序列,以如上所述的圖4所示的幀格式把它與該幀的換算系數(shù)標記組合。
因此,由于僅把每個與前一幀中的相應(yīng)子帶的換算系數(shù)不同的換算系數(shù)插入到當前幀中,因此,對于本編碼實施例,與圖8所示的第一音頻信號編碼方法實施例相比,進一步增加了可以用來量化表示幀傳送的音頻數(shù)據(jù)的子帶樣本的幀位數(shù)。
下面參照圖9的一般系統(tǒng)框圖描述根據(jù)本發(fā)明的音頻信號解碼裝置的第一實施例,它實現(xiàn)了上述的圖5的第一音頻信號解碼方法。圖9的音頻信號解碼裝置由接收具有圖2所示的幀格式的編碼比特流的幀解包部分91、位分配信息計算部分92、數(shù)據(jù)重構(gòu)部分93和反映射部分94組成。幀解包部分91分析每個接收到的幀,把它分離成如圖2所示的各個分量部分,即首部、校錯數(shù)據(jù)、換算系數(shù)、量化子帶樣本和輔助數(shù)據(jù),并解碼和輸出它們,把換算系數(shù)提供給位分配信息計算部分92和數(shù)據(jù)重構(gòu)部分93,把量化子帶樣本提供給數(shù)據(jù)重構(gòu)部分93。
位分配信息計算部分92使用與圖6的編碼器實施例的重構(gòu)階段53所用的相同的算法,根據(jù)從該幀取得的換算系數(shù)計算該幀的位分配信息。數(shù)據(jù)重構(gòu)部分93利用該位分配信息(即,為每個子帶指示在編碼時量化該子帶的各子帶樣本時所用的量化位數(shù)的信息)以及子帶的各換算系數(shù),去量化該幀傳送的子帶樣本。在反映射部分94中,把在編碼時執(zhí)行的反映射處理加到每個接收到的幀的去量化子帶樣本上,恢復其數(shù)據(jù)由該幀傳送的數(shù)字音頻信號樣本組。
可以理解,圖7的編碼器實施例與圖9的解碼器實施例相結(jié)合可以使數(shù)字音頻信號編碼和解碼系統(tǒng)把數(shù)字音頻信號傳送成要提供的編碼比特流,把編碼音頻數(shù)據(jù)傳送成幀序列,而不需要把位分配信息插入到每幀中,從而使在每幀中有更多的幀位數(shù)分配給編碼音頻數(shù)據(jù),所以與已有技術(shù)相比,使幀長度縮短,整個編碼和解碼處理時產(chǎn)生的整體延時也實質(zhì)性減少,并且不改變編碼數(shù)據(jù)流的比特率,不會使音頻再現(xiàn)質(zhì)量變差。
下面參照圖10的一般系統(tǒng)框圖描述根據(jù)本發(fā)明的音頻信號解碼裝置的第二實施例,它實現(xiàn)了圖6所述的和上述的音頻信號解碼方法的第二實施例。圖10的音頻信號解碼裝置由接收具有圖4所示的幀格式的編碼比特流的幀解包部分101、換算系數(shù)恢復部分102、位分配信息計算部分103、數(shù)據(jù)重構(gòu)部分104和反映射部分105組成。幀解包部分101分析每個接收到的幀,把它分離成圖4所示的各個分量部分,即首部、校錯數(shù)據(jù)、換算系數(shù)標記、換算系數(shù)、量化子帶樣本以及輔助數(shù)據(jù),并編碼和輸出它們,把上述所選的換算系數(shù)與所有子帶的換算系數(shù)標記一起提供給換算系數(shù)恢復部分102,把量化子帶樣本提供給數(shù)據(jù)重構(gòu)部分104。
換算系數(shù)恢復部分102起到根據(jù)這些子帶的各換算系數(shù)標記的狀態(tài),對每個接收到的幀,恢復所有子帶的全部換算系數(shù)組的作用。換算系數(shù)恢復部分102包含一個存儲器(圖中未示出),它具有預(yù)定對應(yīng)于各個子帶的各存儲器位置,換算系數(shù)恢復部分102執(zhí)行如圖12的流程圖所示的算法(其中,再假設(shè)子帶數(shù)為32)。如圖所示,在圖12所示的反復循環(huán)中,換算系數(shù)恢復部分102按序檢查接收到的幀傳送的換算系數(shù)組。在每次循環(huán)中,換算系數(shù)恢復部分102判斷是否應(yīng)從存儲器中讀取對應(yīng)于前一幀的子帶的換算系數(shù)并提供給當前接收到的幀,或者是否使用接收到的幀傳送的換算系數(shù)序列的下一個。在后一種情況下,把接收到的幀傳送的換算系數(shù)寫入到預(yù)定給相應(yīng)的子帶的存儲器位置上,更新前面的換算系數(shù)。這樣,根據(jù)部分換算系數(shù)組和該幀傳送的換算系數(shù)標記,為每個接收到的幀獲得了對應(yīng)于子帶的所有換算系數(shù)組。
位分配信息計算部分103用與圖8的編碼實施例的量化部分85所使用的相同的算法根據(jù)由換算系數(shù)恢復部分102提供的換算系數(shù)計算每個接收到的幀的位分配信息。數(shù)據(jù)重構(gòu)部分104利用該位分配信息以及子帶的各換算系數(shù),去量化該幀傳送的子帶樣本。把去量化子帶樣本提供給反映射部分105,進行與圖10的編碼裝置的映射部分81相反的反映射處理,恢復其數(shù)據(jù)由接收到的幀傳送的數(shù)字音頻信號樣本組。
因此可以理解,圖8的編碼器實施例與圖10的解碼器實施例結(jié)合可以使數(shù)字音頻信號編碼和解碼系統(tǒng)把數(shù)字音頻信號傳送成要提供的編碼比特流,把編碼音頻數(shù)據(jù)傳送成幀序列,而不需要在每幀中插入已有技術(shù)必須的位分配信息,而且,僅僅傳送與前一幀的相應(yīng)子帶的換算系數(shù)不同的那些換算系數(shù),從而使每幀中分配給編碼音頻數(shù)據(jù)的幀位數(shù)更多,所以,與已有技術(shù)相比,可以減少幀長度,使整個編碼和解碼處理時產(chǎn)生的整個延時實質(zhì)上減少,而且不需要改變編碼數(shù)據(jù)傳送的比特率,不會使音頻再現(xiàn)質(zhì)量變差。
權(quán)利要求
1.一種編碼數(shù)字音頻信號的方法,產(chǎn)生各連接的幀,構(gòu)成編碼比特流,包含進行映射處理,把要由一幀傳送的所述數(shù)字音頻信號的數(shù)據(jù)樣本組轉(zhuǎn)換成多個子帶樣本組,所述多個子帶樣本組對應(yīng)于多個子帶中的各子帶,對所述子帶樣本組進行操作,得到分別對應(yīng)于所述子帶的多個換算系數(shù),根據(jù)所述換算系數(shù),計算對應(yīng)于每個所述子帶的相應(yīng)位分配信息組,根據(jù)相應(yīng)子帶的位分配信息和換算系數(shù)量化每個所述子帶樣本,以及編碼所述換算系數(shù)和量化子帶樣本,把所述幀組合成格式位序列,包括表示所述編碼換算系數(shù)和所述編碼量化子帶樣本的各位組,但不包括所述位分配信息。
2.一種編碼數(shù)字音頻信號的方法,產(chǎn)生各連接的幀,構(gòu)成編碼比特流,包含進行映射處理,把要由一幀傳送的所述數(shù)字音頻信號的數(shù)據(jù)樣本組轉(zhuǎn)換成多個子帶樣本組,所述多個子帶樣本組對應(yīng)于多個子帶中的各子帶,對所述子帶樣本組進行操作,得到分別對應(yīng)于所述子帶的多個換算系數(shù),對每個所述子帶,把所述相應(yīng)的換算系數(shù)與所述幀前一幀的對應(yīng)于所述子帶的換算系數(shù)比較,當所述比較結(jié)果為一致時,把預(yù)定對應(yīng)于所述第一條件的換算系數(shù)標記設(shè)置到第一條件,而當所述比較結(jié)果為不一致時,把所述換算系數(shù)標記設(shè)置到第二條件,根據(jù)所述換算系數(shù),計算對應(yīng)于每個所述子帶的各位分配信息組,對于每個所述子帶,根據(jù)位分配信息和已為所述子帶計算得到的換算系數(shù)量化相應(yīng)的子帶樣本,以及選擇檢測到所述一致的每個所述換算系數(shù),編碼所述換算系數(shù)和量化子帶樣本,把所述每幀組合成格式位序列,包括表示所述換算系數(shù)標記、所述編碼換算系數(shù)和所述編碼量化子帶樣本的各位組,但不包括所述位分配信息。
3.一種解碼數(shù)字音頻信號的方法,該數(shù)字音頻信號已根據(jù)所述權(quán)利要求1的方法被編碼成格式比特流,其中解碼構(gòu)成所述編碼比特流的每個所述幀的步驟包含從所述幀中分離出所述換算系數(shù)和所述量化子帶樣本,使用所述換算系數(shù),計算所述位分配信息,使用所述位分配信息和所述換算系數(shù),去量化所述子帶樣本,對所述去量化子帶樣本進行反映射處理,恢復所述數(shù)字音頻信號的相應(yīng)的連續(xù)樣本組。
4.一種解碼數(shù)字音頻信號的方法,該數(shù)字音頻信號已根據(jù)所述權(quán)利要求2的方法被編碼成格式比特流,其中解碼構(gòu)成所述編碼比特流的每個所述幀作為一個當前幀的步驟包含從所述幀中分離出所述換算系數(shù)標記、所述換算系數(shù)和所述量化子帶樣本,連續(xù)判斷每個所述換算系數(shù)標記,當發(fā)現(xiàn)所述每個換算系數(shù)標記處于所述第一條件時,指示使用對應(yīng)于所述換算系數(shù)標記的所述幀的前一幀的子帶的換算系數(shù),而當發(fā)現(xiàn)所述每個換算系數(shù)標記處于所述第二條件時,指示使用所述當前幀傳送的所述所選換算系數(shù)中相應(yīng)的一個換算系數(shù),使用所述指定的換算系數(shù),計算所述位分配信息,使用所述位分配信息和所述換算系數(shù),去量化所述子帶樣本,對所述去量化子帶樣本進行反映射處理,恢復所述數(shù)字音頻信號的相應(yīng)的連續(xù)樣本組。
5.一種把數(shù)字音頻信號編碼成幀序列的裝置,幀序列構(gòu)成編碼比特流,該裝置包含映射裝置(71),耦合成接收所述數(shù)字音頻信號,對由一幀傳送的所述數(shù)字音頻信號的樣本組進行映射操作,獲得多個子帶樣本組,所述子帶樣本組對應(yīng)于固定的多個子帶中的各個,換算系數(shù)計算裝置(72),對所述子帶樣本組進行操作,計算分別對應(yīng)于所述子帶的多個換算系數(shù),位分配信息計算裝置(73),對所述換算系數(shù)進行操作,計算分別對應(yīng)于所述子帶的多個位分配信息組,量化裝置(74),根據(jù)相應(yīng)的位分配信息和換算系數(shù),量化每個所述子帶樣本組,獲得對應(yīng)于所述子帶的各個量化子帶樣本組,幀打包裝置(75),對所述換算系數(shù)和量化子帶樣本進行編碼,把所述每幀組合成格式位序列,包括表示所述編碼換算系數(shù)和所述編碼量化子帶樣本的各位組,但不包括所述位分配信息。
6.一種把數(shù)字音頻信號編碼成幀序列的裝置,幀序列構(gòu)成編碼比特流,該裝置包含映射裝置(81),耦合成接收所述數(shù)字音頻信號,對由一幀傳送的所述數(shù)字音頻信號的樣本組進行映射操作,獲得多個子帶樣本組,所述子帶樣本組對應(yīng)于固定的多個子帶中的各個,換算系數(shù)計算裝置(82),對所述子帶樣本組進行操作,計算分別對應(yīng)于所述子帶的多個換算系數(shù),包括具有預(yù)定成分別對應(yīng)于所述子帶的多個存儲器位置的存儲裝置的換算系數(shù)判斷裝置(83),把一幀的每個所述換算系數(shù)與存儲在所述存儲器中的屬于所述幀的前一幀的相應(yīng)換算系數(shù)進行比較,當所述比較結(jié)構(gòu)為一致時,把預(yù)定成對應(yīng)于所述每個換算系數(shù)的換算系數(shù)標記設(shè)置成第一條件,當所述比較結(jié)構(gòu)為不一致時,把所述換算系數(shù)標記設(shè)置成第二條件,選擇要編碼的所述第個換算系數(shù),并把所述換算系數(shù)寫入到所述存儲器位置相應(yīng)的位置上,位分配信息計算裝置(84),耦合成從所述換算系數(shù)計算裝置接收所述換算系數(shù),對所述每個幀的所述換算系數(shù)進行操作,計算對應(yīng)于所述子帶的各個子帶的位分配信息組,量化裝置(85),量化對應(yīng)于一幀的所述子帶樣本組,利用所述位分配信息組中相應(yīng)的一個使所述子帶樣本對應(yīng)于各所述子帶,和幀打包裝置(88),對已選出要編碼的換算系數(shù)的所述一些換算系數(shù)進行編碼,并對所述量化子帶樣本進行編碼,把所述每個幀組合成格式序列,包括表示所述換算系數(shù)標記、所述編碼換算系數(shù)和所述編碼量化子帶樣本的各位組,但不包括所述位分配信息。
7.一種解碼數(shù)字音頻信號的裝置,該數(shù)字音頻信號已被根據(jù)權(quán)利要求5的編碼裝置編碼成格式為一串幀的編碼比特流,所述裝置包含幀解包裝置(91),對每個所述幀進行操作,從所述每個幀中分離出所述換算系數(shù)和所述量化子帶樣本,位分配信息計算裝置(92),耦接成從所述幀解包裝置接收所述換算系數(shù),對所述每個幀的所述換算系數(shù)進行操作,計算所述位分配信息,數(shù)據(jù)重構(gòu)裝置(93),耦接成接收所述每個幀的所述量化樣本和所述位分配信息,對所述位分配信息和所述換算系數(shù)進行操作,恢復出去量化子帶樣本組,反映射裝置(94),對所述去量化子帶樣本進行反變換處理,恢復所述數(shù)字音頻信號的連續(xù)樣本組。
8.一種解碼數(shù)字音頻信號的裝置,該數(shù)字音頻信號已被根據(jù)權(quán)利要求6的編碼裝置編碼成格式如一串幀的編碼比特流,所述裝置包含幀解包裝置(101),對每個所述幀進行操作,從所述每個幀分離出所述換算系數(shù)標記、所述所選的換算系數(shù)和所述量化子帶樣本,換算系數(shù)恢復裝置(102),包括具有預(yù)定成分別對應(yīng)所述子帶的多個存儲器位置的存儲裝置,耦接成接收所述每個幀的所述換算系數(shù)標記和所述所選的換算系數(shù),判斷每個所述換算系數(shù)標記的條件,當換算系數(shù)標記被判斷成處于所述第一條件時,從對應(yīng)于所述換算系數(shù)標記的子帶的存儲器位置上讀出換算系數(shù),并輸出所述換算系數(shù),而當判斷出所述換算系數(shù)標記處于所述第二條件時,輸出所述每個幀傳送的所述所選的換算系數(shù)中相應(yīng)的一個換算系數(shù),并把所選的換算系數(shù)中所述相應(yīng)的一個換算系數(shù)寫入到所述存儲器位置上,位分配信息計算裝置(103),耦接成接收換算系數(shù)恢復裝置(102)產(chǎn)生的所述換算系數(shù),對所述每個幀的所述換算系數(shù)進行操作,計算所述位分配信息,數(shù)據(jù)重構(gòu)裝置(104),耦接成接收所述每個幀的所述量化樣本和所述位分配信息,對所述位分配信息和所述換算系數(shù)進行操作,恢復去量化子帶樣本組,以及反映射裝置(105),對所述去量化子帶樣本進行反變換處理,恢復所述數(shù)字音頻信號的連續(xù)樣本組。
9.一種編碼和解碼系統(tǒng),把數(shù)字音頻信號傳送成編碼比特流,包含如權(quán)利要求5中要求的數(shù)字音頻信號編碼裝置與如權(quán)利要求7要求的數(shù)字音頻信號解碼裝置的組合。
10.一種編碼和解碼系統(tǒng),把數(shù)字音頻信號傳送成編碼比特流,包含如權(quán)利要求6中要求的數(shù)字音頻信號編碼裝置與如權(quán)利要求8要求的數(shù)字音頻信號解碼裝置的組合。
全文摘要
在一種編碼數(shù)字音頻信號以把信號傳送格式如一串幀的編碼比特流的方法和裝置以及相應(yīng)的解碼該編碼的比特流的方法和裝置中,每幀中傳送音頻數(shù)據(jù),利用計算得到的換算系數(shù)量化樣本組,分配的位數(shù)由根據(jù)換算系數(shù)計算得到的位分配信息指示,從編碼的比特流的每幀中省略了編碼處理時產(chǎn)生的位分配信息,在解碼處理時,利用接收到的解碼換算系數(shù)再產(chǎn)生該位分配信息。與已有技術(shù)相比,實質(zhì)上增加了可以分配給量化音頻數(shù)據(jù)的幀位數(shù),與已有技術(shù)的方法相比,顯著地縮短了幀長度以及整體的編碼/解碼延時,而不會降低音頻再現(xiàn)質(zhì)量,同時仍對編碼數(shù)據(jù)使用低比特率。
文檔編號H04B1/66GK1248824SQ99120310
公開日2000年3月29日 申請日期1999年9月16日 優(yōu)先權(quán)日1998年9月17日
發(fā)明者后藤道代 申請人:松下電器產(chǎn)業(yè)株式會社