亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

可伸縮的立體聲音頻編碼/解碼方法和裝置的制作方法

文檔序號:7533660閱讀:349來源:國知局
專利名稱:可伸縮的立體聲音頻編碼/解碼方法和裝置的制作方法
技術領域
本發(fā)明涉及音頻編碼和解碼方法,更確切地說,涉及采用位片式算術編碼方法的可伸縮的立體聲音頻編碼/解碼方法和裝置。
在常規(guī)可伸縮音頻編碼/解碼裝置中,人們考慮了1-聲道單聲道信號的可伸縮性[K.Brandenbrug等,“可伸縮音頻編碼的主要思想”,97thAES-Convention,preprint 3294,San Franeisco,1994]和[K.Brandenbrug等,“2級或3級位率的可伸縮音頻編碼系統(tǒng)”,99th AES-Convention,preprint 4132,New York,1995]。然而,MPEG音頻標準[MPEG委員會ISO/IEC/JTCI/SC29/WG11,信息技術-以大約1.5 Mbit/s速率對用于數據存儲介質的動畫以及各音頻信號進行編碼-第三部分音頻,ISO/IEC IS11172-3,1998]或AC-2/AC-3方法[Dolby,“Dolby AC-3多聲道音頻編碼方法-提交給Grand Alliance Specialist Group”,Dolby實驗室,1993年8月]提供了處理立體聲和多聲道信號以及單聲道信號的技術。實際上,大部分音樂信號是由立體聲信號組成的。因此,如同因特網或通信網一樣,有必要采用兩聲道以上位流信號沿用的可伸縮的音頻編碼解碼器。
通常,音樂信號為立體聲信號。通過光盤(CD)、通信網絡或廣播網絡提供立體聲信號,而且未來仍將在多媒體環(huán)境下提供立體聲信號。然而,現有可伸縮的音頻編碼解碼器主要處理單聲道信號,而并不處理立體聲信號。為了處理立體聲信號,必須按以下方式傳輸信號,即傳輸某聲道的所有信號,然后傳輸另一聲道的所有信號。然而,對于以上情況,由于兩個聲道中產生的位數通常并不相等,所以當立體聲信號的位率較低時,可伸縮音頻編碼解碼器的性能非常低。
為了解決以上問題,本發(fā)明的目的在于提供一種可伸縮的立體聲數字音頻數據編碼方法和裝置,以及記錄該編碼方法的記錄介質。利用位片式算術編碼(BSAC)技術,通過生成由基于基準層的若干增強層組成的位流進行編碼。
為了實現本發(fā)明的目的,本文提供可伸縮的立體聲音頻編碼方法,該方法將音頻信號編碼為具有一層基準層和至少兩層增強層的分層數據流,該方法包括以下步驟對各預定編碼頻帶的音頻輸入信號進行信號處理和量化,對量化數據中與基準層相對應的量化數據進行編碼,對對應于基準層的下一增強層的量化數據進行編碼,以及對由于層數限制未編碼而又屬于編碼層的剩余量化數據進行編碼,并且順序對所有增強層順序執(zhí)行層編碼步驟以便形成位流,其中執(zhí)行基準層編碼步驟、增強層編碼步驟以及順序編碼步驟,從而可以利用相同的預定數字表示邊信息以及與編碼層相對應的量化數據,隨后按照從最高有效位(MSB)序列到最低有效位(LSB)序列的次序,使用先驗概率模型進行算術編碼,以預定向量組輪流對位片式聲道數據和右聲道數據進行編碼。邊信息至少包括比例因子和算術編碼所使用的各概率模型的信息。預定向量是通過將四個位片式音頻聲道數據耦合為一個向量而生成的四維向量。根據預狀態(tài)將四維向量劃分為兩個子向量,以便進行編碼,其中預狀態(tài)表示非零位片式頻率分量是否進行過編碼。
此外,對比例因子進行編碼的步驟包括以下步驟獲得最大比例因子,獲得最大比例因子與第一比例因子的差值,對該差值進行算術編碼,獲得緊接前一個算術編碼的比例因子與第一比例因子之后各比例因子的差值,將該差值映射為預定值,并對映射值進行算術編碼。
對比例因子進行編碼的步驟包括以下步驟獲得最大比例因子,獲得最大比例因子與各比例因子的差值,以及對該差值進行編碼。
為了得到分層結構,對通常用于所有頻帶的標題信息進行編碼,隨后對利用位片信息形成的各層所需的邊信息和量化頻率進行編碼。
通過以下步驟完成量化將時域上的音頻輸入信號轉換為頻域信號,經過時間/頻率映射以預定比例因子頻帶信號的方式連接轉換信號,計算各比例因子頻帶的屏蔽閾值,進行時域噪聲整形以便控制各轉換窗口內量化噪聲的瞬時形狀,進行立體聲強度處理,從而僅對兩條聲道中一條聲道的比例因子頻帶的量化信息進行編碼,并且僅傳輸另一條聲道的比例因子,預測當前幀的頻率系數,進行Mid/Side(M/S)立體聲處理,以便將左聲道信號和右聲道信號轉換為兩個信號的相加信號以及其相減信號,對各預定編碼頻帶的信號進行量化,從而各頻帶的量化噪聲小于屏蔽閾值。
當量化數據是由符號數據和數值數據組成時,基準層和增強層編碼以及位流形成步驟還包括以下步驟對由數值數據的最高有效數字構成的最高有效數字序列進行算術編碼,在最高有效數字序列中的編碼對應非零數據的符號數據進行算術編碼,在數字數據的未編碼數值數據中對最高有效數字序列進行編碼,在已編碼數字序列中對對應于非零值數據一的符號數據中的未編碼符號數據進行編碼,對數字數據的各數字執(zhí)行數值編碼步驟和符號編碼步驟,按預定向量組對左聲道數據和右聲道數據輪流執(zhí)行各步驟。
可伸縮的立體聲音頻解碼裝置還包括進行M/S立體聲處理的M/S立體聲處理部件,以便檢查是否在位流編碼方法中進行過M/S立體聲處理,并且如果進行過M/S立體聲處理,就將左聲道信號和右聲道信號轉換為兩個信號的相加信號及其相減信號,預測部件,該部件用于檢測是否在位流編碼方法中執(zhí)行過預測步驟,并且如果執(zhí)行過預測步驟,就預測當前幀的頻率系數,立體聲強度處理部件,該部件用于檢測是否在位流編碼方法中進行過立體聲強度處理,并且如果進行過立體聲強度處理,則由于僅對兩條聲道之一條聲道(左聲道)的比例系數頻帶的量化信息進行過編碼,所以進行立體聲強度處理以便將另一聲道(右聲道)的量化信息恢復到左聲道值,和時域噪聲整形(TNS)部件,該部件用于檢測是否在位流編碼方法中執(zhí)行過時域噪聲整形步驟,并且如果執(zhí)行過TNS步驟,就進行瞬時噪聲處理以便控制各轉換窗口內量化噪聲的瞬時形狀。
根據本發(fā)明的另一方面,提供一種可伸縮的音頻編碼裝置,該裝置包括量化部件,該部件用于各編碼頻帶的音頻輸入信號的信號處理和量化,位片式算術編碼部件,該部件用于編碼所有層的位流從而具有分層結構,通過限制基準層的頻帶實現可伸縮,該部件還用于對對應于基準層的邊信息進行編碼,從最高有效位序列到最低有效位序列、從較低頻率分量到較高頻率分量對量化信息進行順序編碼,以預定向量組輪流對左聲道數據和右聲道數據進行編碼,并且對對應于基準層的下一增強層一的邊信息和量化數據進行編碼,以及位流形成部件,該部件用于收集量化部件和位片式算術編碼部件生成的數據并且生成位流。
量化部件包括時間/頻率映射部件,該部件將時域上的音頻輸入信號轉換為頻域信號,音質部件,該部件通過時間/頻率映射利用預定比例因子頻帶的信號連接轉換信號,該部件還利用各信號相互影響而產生的屏蔽現象計算各比例因子頻帶的屏蔽閾值,以及量化部件,當比較各頻帶的量化噪聲與屏蔽閾值時,該部件量化各預定編碼頻帶的信號。
此外,該裝置還包括時域噪聲整形(TNS)部件,該部件進行時域噪聲整形以便控制各轉換窗口內量化噪聲的瞬時形狀,立體聲強度處理部件,該部件進行立體聲強度處理,從而僅對兩個聲道中之一個聲道的比例因子頻帶的量化信息進行編碼,傳輸另一個聲道的比例因子,預測部件,該部件預測當前幀的頻率系數,以及M/S立體聲處理部件,該部件進行M/S立體聲處理,以便將左聲道信號和右聲道信號轉換為兩個信號的相加信號及其相減信號。
根據本發(fā)明的另一方面,提供一種可伸縮的立體聲音頻解碼方法,該方法用于解碼音頻數據編碼以便具有分層位率,該方法包括以下步驟分析具有分層結構的位流中各模塊所需的數據,以具有分層結構的位流中各層的建立次序,至少對比例因子、算術編碼模型系數和量化數據進行解碼,其中按照從較高有效位到較低有效位的順序,通過分析構成位流的位的有效性,輪流對各聲道的量化數據進行解碼,將經過解碼的比例因子和量化數據恢復位具有原始數值的信號,以及將量化信號反演為時域信號。
可伸縮的立體聲音頻解碼方法還包括以下步驟進行M/S立體聲處理,以便檢查是否在位流編碼方法中進行過M/S立體聲處理,并且如果進行過M/S立體聲處理,就將左聲道信號和右聲道信號轉換為兩個信號的相加信號及其相減信號,檢測是否在位流編碼方法中執(zhí)行過預測步驟,并且如果執(zhí)行過預測步驟,就預測當前幀的頻率系數,檢測是否在位流編碼方法中進行過立體聲強度處理,并且如果進行過立體聲強度處理,則由于僅對兩條聲道中之一條聲道(左聲道)的比例系數頻帶的量化信息進行過編碼,所以進行立體聲強度處理以便將另一聲道(右聲道)的量化信息恢復到左聲道值,檢測是否在位流編碼方法中執(zhí)行過時域噪聲整形(TNS)步驟,并且如果執(zhí)行過TNS步驟,就進行時域噪聲整形以便控制各轉換窗口內量化噪聲的瞬時形狀。
當量化數據是由符號數據和數值數據組成時,通過順序解碼量化頻率分量符號位的數值數據并且耦合數值數據和符號位,恢復量化頻率分量。
按照從最高有效位到最低有效位的順序執(zhí)行解碼步驟,并且通過對已解碼的位片式數據耦合以及將耦合數據恢復為量化頻率分量數據,執(zhí)行恢復步驟。
在解碼步驟中對以上數據進行解碼,從而將四個樣本的位片式信息解碼為四維向量組。
進行四維向量解碼,從而對根據預狀態(tài)編碼的兩個子向量進行算術解碼,并且將根據各樣本的編碼狀態(tài)進行解碼的兩個子向量恢復為四維向量,其中預狀態(tài)表示是否對非零位片式頻率分量進行過編碼。
此外,當根據MSB對各頻率分量的位片式數據進行解碼時,如果位片式數據為“0”就跳過解碼,當位片式數據“1”第一次出現時,就對符號數據進行算術解碼。通過解碼位流中的最大比例因子,對最大比例因子和各比例因子的差值進行算術解碼,從最大比例因子中減去該差值,就完成了比例因子的解碼。此外,解碼比例因子的步驟包括以下步驟根據位流解碼最大比例因子,通過映射獲得最大比例因子與需要解碼的比例因子之間的差值對該差值進行算術解碼,根據映射值,對該差值進行逆映射,通過從最大比例因子中減去該差值獲得第一比例因子,以及通過從前一比例因子中減去該差值獲得剩余頻帶的比例因子。
通過執(zhí)行以下步驟完成算術編碼模型系數的解碼解碼位流中的最小算術模型系數,解碼最小系數與各層邊信息中各系數之間的差值,累加最小系數與該差值。
另一方面,根據本發(fā)明,提供一種可伸縮的音頻解碼裝置,該裝置用于解碼音頻數據編碼以便具有分層位率,該裝置包括位流分析部件,用以分析具有分層結構的位流中各模塊所需的數據,解碼部件,該部件按具有分層結構的位流中各層的建立次序,至少對比例因子、算術編碼模型系數和量化數據進行解碼,其中按照從較高有效位到較低有效位的順序,通過分析構成位流的位的有效性,輪流對各聲道的量化數據進行解碼,恢復部件,該部件將經過解碼的比例因子和量化數據恢復為具有原始數值的信號,以及頻率/時間映射部件,該部件將量化信號反演為時域信號。
該裝置還包括以下部件進行M/S立體聲處理的M/S立體聲處理部件,該部件用于檢查是否在位流編碼方法中進行過M/S立體聲處理,并且如果進行過M/S立體聲處理,就將左聲道信號和右聲道信號轉換為兩個信號的相加信號及其相減信號,預測部件,該部件用于檢測是否在位流編碼方法中執(zhí)行過預測步驟,并且如果執(zhí)行過預測步驟,就預測當前幀的頻率系數,立體聲強度處理部件,該部件用于檢測是否在位流編碼方法中進行過立體聲強度處理,并且如果進行過立體聲強度處理,則由于僅對兩條聲道之一條聲道(左聲道)的比例系數頻帶的量化信息進行過編碼,所以進行立體聲強度處理以便將另一聲道(右聲道)的量化信息恢復到左聲道值,和時域噪聲整形部件,該部件用于檢測是否在位流編碼方法中執(zhí)行過時域噪聲整形(TNS)步驟,并且如果執(zhí)行過TNS步驟,就進行瞬時噪聲處理以便控制各轉換窗口內量化噪聲的瞬時形狀。
通過參照附圖詳細說明本發(fā)明的最佳實施方式,本發(fā)明的上述目的和優(yōu)點將會更加顯而易見。其中附圖是

圖1是根據本發(fā)明的編碼裝置的框圖;圖2表示根據本發(fā)明的位流的結構;圖3是根據本發(fā)明的解碼裝置的框圖;圖4說明長塊(窗口長度=2048)頻率分量的排列;和圖5說明短塊(窗口長度=2048)頻率分量的排列。
以下,將參照附圖詳細說明本發(fā)明的最佳實施方式。
本發(fā)明準備采用位片式算術編碼(BSAC)技術編碼并解碼可伸縮的立體聲數字音頻數據。換句話說,在本發(fā)明中,僅僅利用BSAC技術代替無損編碼模塊,而并不改變常規(guī)編碼器的其他模塊。本發(fā)明推廣了按如上方式構造的可伸縮編碼器/解碼器的適用性,即,可以將本發(fā)明應用于立體聲信號。
圖1是根據本發(fā)明的可伸縮音頻編碼裝置的框圖??缮炜s音頻編碼裝置包括時/頻映射部件100,音質部件110,時域噪聲整形部件120,立體聲強度處理部件130,預測部件140,mid/side(M/S)立體聲處理部件150,量化部件160,位片式算術編碼部件170和位流形成部件180。
在對數字音頻信號進行編碼時,最重要的人類聲音特征是屏蔽效果和臨界頻帶特征。屏蔽效果指由于另一信號影響而聽不到某個音頻信號(聲音)的現象。例如,當一列火車經過某個車站時,受該列火車造成的噪聲的影響,在低聲談話期間,他/她不能聽到對方的聲音。在人類可聽到頻率范圍內,人們對各個頻段的音頻信號的感受也不盡相同。此外,考慮到臨界頻帶特征,當噪聲信號處于臨界頻帶內或噪聲信號從關鍵信號中出來時,人們對具有相同振幅的各種噪聲的感受也不相同。此時,當噪聲信號越過臨界頻帶時,可以更清楚地聽到噪聲。
本質上利用以上兩個特征對人類音頻特征進行編碼,從而計算可能位于臨界頻帶內的噪聲范圍,隨后對應于計算范圍產生量化噪聲,以便將編碼造成的信息損失降低到最低限度。
時/頻映射部件100將時域內的音頻信號轉換為頻域內的音頻信號。
音質部件110利用預定比例因子頻帶信號連接時/頻映射部件100的轉換信號,并利用各信號相互作用產生的屏蔽現象計算各比例因子頻帶的屏蔽閾值。
時域噪聲整形部件120控制各轉換窗口內量化噪聲的瞬時形狀。通過過濾頻率數據,可以對噪聲進行瞬時整形。編碼器可以選擇使用該模塊。
立體聲強度處理部件130是一個模塊,該模塊用于更有效地處理立體聲信號,立體聲強度處理部件130僅對兩個聲道中某個聲道的比例因子頻帶的量化信息進行編碼,而傳輸另一個聲道的比例因子頻帶。在編碼器中不一定使用該模塊,而是需要考慮各比例因子頻帶的所有要素,以便確定是否使用該模塊。
預測部件140估計當前幀的頻率系數。量化并編碼預測值與實際頻率分量之間的差值,以便降低生成的可用位的數量。在幀組中選擇使用預測部件140。換句話說,由于使用預測部件140增加了預測后繼頻率系數的復雜性,所以可以不使用預測部件140。偶爾,經過估計實際生成的位數可能大于不經估計實際生成的位數。此時,不使用預測部件140。
用于更有效處理立體聲信號的M/S立體聲處理部件150,將左聲道信號和右聲道信號分別轉換為兩個信號的相加信號和相減信號,以便隨后處理該信號。在編碼器中不一定使用該模塊,而是需要考慮各比例因子頻帶的所有要素,以便確定是否使用該模塊。
量化部件160標量量化各頻帶的頻率信號,從而各頻帶量化噪聲的數值小于屏蔽閾值,以致覺察不到量化噪聲。進行量化以使NMR(噪聲屏蔽率)值小于等于0dB,其中NMR為音質部件210計算的屏蔽閾值與各頻帶所產生的噪聲的比率。NMR值小于等于0dB意味著屏蔽閾值大于量化噪聲。換句話說,聽不到量化噪聲。
由于諸如MPEG-2 ACC之類的現有音頻編碼解碼器不具有可伸縮性,所以可以使用本發(fā)明的核心模塊,即位片式算術編碼部件170,作為ACC技術的無損編碼部件的備擇方案。為了實現可伸縮的音頻編碼解碼器,通過組合相應頻帶的邊信息和音頻數據的量化數據,對量化部件160產生量化的頻率數據進行編碼。此外,除可伸縮性之外,可以在頂層提供ACC中的類似功能。以下詳細說明位片式算術編碼部件170的功能。將頻帶限制為與基準層相對應的頻帶以便伸縮,并對基準層的邊信息進行編碼。按照從MSB順序到LSB順序,從低頻分量到高頻分量的次序,對量化值信息進行順序編碼。此外,以預定向量組的方式對左聲道和右聲道輪流編碼,以便對基準層進行編碼。在結束基準層編碼后,對下一增強層的邊信息以及音頻數據的量化值進行編碼,從而按上述方式構成的位流具有分層結構。
位流形成部件180通過收集編碼裝置的各模塊內形成的信息,根據適用于可伸縮編碼解碼器的預定語法產生位流。
圖2表示根據本發(fā)明的位流的結構。如圖2所示,該位流具有分層結構,其中根據位率,較低位率層的位流包含在較高位率層的位流中。通常,首先編碼邊信息,隨后編碼剩余信息,從而形成位流。然而,如圖2所示,在本發(fā)明中分別編碼各增強層的邊信息。此外,盡管通常以采樣組合的方式順序編碼量化數據,在本發(fā)明中,利用二進制數據表示量化數據,并且根據二進制數據的MSB順序編碼量化數據,以便在指定位內形成位流。
圖3是根據本發(fā)明的解碼裝置的框圖,解碼裝置包括位流分析部件300,位片式算術解碼部件310,反向量化部件320,M/S立體聲處理部件330,預測部件340,立體聲強度處理部件350,時域噪聲整形部件360,和頻率/時間映射部件370。
位流分析部件300以輸入位流的生成次序分離標題信息和編碼數據,并將其傳輸到各模塊。
位片式算術解碼部件310以輸入位流的生成次序解碼邊信息和位片式量化數據,并將解碼結果傳輸到反向量化部件320。
僅接受立體聲信號的M/S立體聲處理部件330,處理與編碼裝置中進行M/S立體聲處理相對應的比例因子頻帶。
當在編碼裝置中進行估計時,與編碼裝置中采用的方法相同,預測部件340以前一幀中解碼數據的方式,經過估計搜索同一值。將位流分析部件300解碼的差分信號加入到預測信號中,從而恢復原始頻率分量。
僅接受立體聲信號的立體聲強度處理部件350,處理與編碼裝置中進行M/S立體聲處理相對應的比例因子頻帶。
用于控制各轉換窗口內量化噪聲瞬時形狀的時域噪聲整形部件360進行相應的處理。
采用諸如ACC標準件之類的常規(guī)音頻算法處理模塊,將經過解碼的數據恢復為時域信號。首先,反向量化部件320將經過解碼的比例因子和量化數據恢復為具有原始數值的信號。隨后,頻率/時間映射部件370將量化信號反演為時域信號,以便還原。
現在將說明編碼裝置的操作。
在時間/頻率映射部件100,經過MDCT(改良離散余弦變換),將輸入信號轉換為頻域信號。音質部件110利用適宜的比例因子頻帶連接以上頻域信號,以便獲得屏蔽閾值。此外,轉換為頻域信號的音頻信號通過用于提高編碼效率的組件,即TNS部件120,立體聲強度處理部件130,預測部件140和立體聲處理部件150,以便更有效地壓縮信號。
量化部件160進行標量量化,從而各比例因子頻帶的量化噪聲值小于屏蔽閾值,可以聽到但不會在指定位內覺察到該值。如果進行了滿足以上條件的量化,就產生各比例因子頻帶的比例因子和量化頻率值。
通常,考慮到人類音質,可以在較低的頻率輕易覺察到幾乎相等的頻率分量。然而,隨著頻率的增加,可覺察的頻率區(qū)間變寬。比例因子頻帶的帶寬隨著頻帶的增高而增高。然而,為了方便編碼,并不采用其帶寬不固定的比例因子頻帶進行編碼,而是采用其帶寬固定的編碼頻帶。編碼頻帶包括32個經過量化的頻率系數值。
在處理立體聲信號時,諸如ACC之類的僅考慮編碼效率的常規(guī)編碼/解碼裝置,首先對左右聲道共同使用的信息進行編碼。編碼左聲道數據,隨后編碼右聲道數據。即以標題、左聲道和右聲道的次序進行編碼。
如上所述,在處理了標題之后,當不考慮其有效值而排列并傳輸左右聲道信息時,如果位率下降,則位于后邊的右聲道信號首先消失。因此,可顯著覺察到性能下降。
然而,根據本發(fā)明的音頻編碼裝置對各聲道的邊信息進行編碼。換句話說,位片式算術編碼部件170以左聲道和右聲道的次序,輪流編碼各聲道的邊信息。為了有效壓縮,稍微改進比例因子編碼方法。
首先說明比例因子編碼。根據本發(fā)明的立體聲音頻編碼裝置采用將在下面說明的兩種方法對比例因子進行編碼,以便提高編碼效率。編碼裝置選擇呈現較好性能的方法,并且將所選方法傳輸到解碼裝置。
第一,為了壓縮比例因子,根據所有比例因子獲得最大比例因子(max_scalefactor)。然后,獲得各比例因子與最大比例因子之間的差值,并對該差值進行算術編碼。采用四個模型對比例因子之間的差值進行算術編碼。表5.5到表5.8表示以上四個模型。在scalefacotr_model中存儲模型信息。差分比例因子算術模型1 差分比例因子算術模型2 差分比例因子算術模型3
>[表5.8]差分比例因子算術模型4
第二,為了壓縮比例因子,正如第一方法,根據所有比例因子獲得最大比例因子(max_scalefactor)。然后,獲得第一比例因子與最大比例因子之間的差值,并對該差值進行算術編碼。然后,獲得剩余比例因子與先前比例因子之間的差值,并對所有差值進行算術編碼。這樣,由于指定了所用模型,所以scalefactor_model的值是無意義的。
下面,將說明對立體聲信號量化頻率分量進行的編碼。各頻道的量化數據是位片式的。當處理單聲道信號時,利用四維向量耦合位片式數據,并且將四維向量用作基本組件。這種處理同樣適用于對立體聲聲道信號的編碼。換句話說,從MSB開始編碼。從左聲道開始對位片式數據的四維向量進行算術編碼。接著,對位于相同頻率的右聲道的四維向量進行算術編碼。這樣,對左聲道和右聲道交替進行編碼。
就單聲道而論,按照從MSB到LSB的次序進行編碼。按照從較低頻率分量到較高頻率分量的次序,對具有相同有效值的位片式數據進行編碼。此時,如果分配到各向量的所有位比當前正被編碼的位更有效,則不必對各向量進行編碼,并跳過該編碼處理。
XQ0,XQ1,XQ2,…,XQk,…其中Xqk為從4*k到4*k+3的量化頻率分量的位片式數據。
就雙聲道而言,如同單聲道一樣,按照從MSB到LSB的次序進行編碼。同樣,按照從較低頻率分量到較高頻率分量的次序,對具有相同有效值的位片式數據進行編碼。然而,考慮到存在兩個聲道,需要確定編碼順序。假設左聲道和右聲道中的量化頻率分量如下左聲道XQL0,XQL1,XQL2,XQL3,XQL4,XQL5,…,XQLk,…右聲道XQR0,XQR1,XQR2,XQL3,XQL4,XQL5,…,XQRk,…其中XQLk和XQLRk為從4*k到(4*k+3)的量化頻率分量的位片式數據。
這樣,就雙聲道而言,以單聲道中類似次序的方式,按照從較低頻率分量到較高頻率分量的次序進行編碼。然而,為了首先對有效分量進行編碼,需要交錯聲道分量。換句話說,按如下方式輪流對兩個聲道之間的各向量進行編碼。
XQL1,XQR1,XQL2,XQR2,…由于按照兩個聲道內有效值的次序,順序對按上述方式構成的信息進行編碼,所以即使降低可伸縮音頻編碼解碼器的位率,其性能也不會顯著下降。
現在,將說明本發(fā)明的最佳實施方式。本發(fā)明沿用ACC標準件的基本結構實現可伸縮的數字音頻數據編碼器,其中ACC標準件包括諸如附加模塊(該模塊用于提高編碼效率)之類的所有模塊。換句話說,在本發(fā)明中,在采用ACC標準編碼/解碼件中基本模塊的同時,利用位片式編碼方法取代無損編碼模塊,以便提供可伸縮的編碼裝置。在本發(fā)明中,在單一位流內不對僅為某一位率的信息進行編碼,而在具有分層結構的位流(如圖2所示)內,按照從較重要的信號分量到不太重要的信號分量的次序,對不同增強層的位率信息進行編碼。
根據本發(fā)明的實施方式,在BSAC可伸縮編碼解碼器的無損編碼之前,采用與ACC標準件相同的模塊。因此,如果量化頻率數據是通過對ACC位流進行解碼而形成的,則可以將經過解碼的數據恢復為BSAC可伸縮位流。這意味著可以在ACC位流和BSAC可伸縮位流之間進行自動譯碼。最后,根據環(huán)境提供與位流格式相稱的相互轉換。因此,可以同時滿足編碼效率和可伸縮性,并且編碼效率和可伸縮性是互補的,這正是與其他可伸縮的編碼解碼器的區(qū)別。
利用按上述方式構成的位流,根據用戶請求或傳輸聲道的狀態(tài),通過簡單重排包含在最高位流中的低位率位流,就能夠形成具有低位率的位流。換句話說,可以將編碼裝置采用實時算法形成的位流或者存儲在媒體上的位流,重排為適于用戶請求的理想位率,以便傳輸。此外,即使具有適宜位流,如果用戶的硬件性能較差,或者用戶希望降低解碼器的復雜性,也僅能恢復某些位流,從而控制了復雜性。
例如,在形成可伸縮位流時,基準層的位率為16 Kbps,頂層的位率為64 Kbps,各增強層的位率間隔為8 Kbps,即該位流具有7層,各層位率分別為16、24、32、40、48、56和64 Kbps。按照表2.1所示定義各增強層。如圖3所示,由于編碼裝置形成的位流具有分層結構,所以64 Kbps的頂層位流包含各增強層的位流(16、24、32、40、48、56和64 Kbps)。如果用戶請求頂層數據,則不進行任何處理就傳輸頂層位流。此外,如果另一用戶請求基準層數據(對應于16 Kbps),則只傳輸前導位流。各層的位率(8 kbps間隔)
另一方面,可以以更細的間隔構造增強層?;鶞蕦拥奈宦蕿?6Kbps,頂層的位率為64 Kbps,各增強層的位率間隔為1 Kbps。按照表3.1所示構造增強層。因此,可以實現精粒可伸縮性,即以1 kbps的位率間隔,形成從16 kbps到64 kbps的可伸縮位流。各層的位率(1-kbps間隔)
根據位率,各層具有有限帶寬。如果想要8 kbps間隔的可伸縮性,則按照表2.2和表2.3所示限制帶寬。對于1 kbps間隔而言,按照表3.2和表3.3所示限制帶寬。用于短窗口的各層內的帶限(8-kbps間隔) 用于長窗口的各層內的帶限(8-kbps間隔)
<p>2、算法編碼模型索引的編碼每一編碼帶包括32個頻率部分。32個量化頻率系數被進行算法編碼。然后,確定每一編碼帶的算法編碼所用模型,并將此信息存放到算法編碼模型索引(ArModel)中。為了壓縮ArModel,使用了一種算法編碼方法。最終,首先得到最小的ArModel索引(min_ArModel)。然后,得到各ArModel索引和最小ArModel索引之間的差量,并對此差量進行算法編碼。這里在差量的算法編碼中使用了四個模型。這四個模型表示在表5.5到5.8中。算法編碼中所用的模型的信息存放在ArModel_model中。
表5.5差量ArModel算法模型1
表5.6差量ArModel算法模型2
表5.7差量ArModel算法模型3
表5.8差量ArModel算法模型4 各層內各聲道的可用位(8-kbps間隔)
現在,將詳細說明根據本發(fā)明的立體聲音頻信號的編碼和解碼過程。
1.編碼過程整個編碼過程與MPEG-2 ACC國際標準中的敘述相同,并且采用本發(fā)明推薦的位片式編碼作為無損編碼。
1.1.音質部件利用音質模型,根據輸入數據,首先生成正在處理的幀的塊類型(長、啟動、短、停止),各處理頻帶的SMR值,短塊的分組信息,以及用于采用音質模型時/頻同步的瞬時延遲PCM數據,并將其傳輸到時間/頻率映射部件。采用ISO/IEC 11172-3模型2計算音質模型[MPEG委員會ISO/IEC/JTC1/SC29/WG11,信息技術-以大約1.5 Mbit/s速率對用于數據存儲介質的動畫以及各音頻信號進行編碼-第三部分音頻,ISO/OECIS 11172-3,1993]。必須使用該模塊,但是可以根據用戶要求采用不同的模型。
1.2.時間/頻率映射部件采用MPEG-2 ACC國際標準中定義的時間/頻率映射部件。利用音質模型,根據塊類型輸出,時間/頻率映射部件采用MDCT將時域數據轉換位頻域數據。此時,關于長/啟動/停止塊和短塊而言,其塊長度分別為2048和256,并且執(zhí)行8次MDCT。然后,將窗口類型和窗口分組信息傳輸到位流形成部件180。迄今為止,一直采用常規(guī)MPEG-2 ACC[MPEG委員會ISO/IEC/JTC1/SC29/WG11,ISO/IEC MPEG-2 ACC IS 13818-7,1997]中所采用的相同過程。
1.3.時域噪聲整形部件(TNS)采用MPEG-2 ACC國際標準中定義的時域噪聲整形部件。TNS 120是一個選件,該選件控制各轉換窗口內量化噪聲的瞬時形狀。通過過濾頻率數據,就能夠實現時域噪聲整形。TNS 120將TNS信息傳輸到位流形成部件180。
1.4.立體聲強度處理部件采用MPEG-2 ACC國際標準中定義的立體聲強度處理部件。立體聲強度處理部件130是一種更有效處理立體聲信號的方法。進行立體聲強度處理,從而僅對兩條聲道中某條聲道的比例因子頻帶的量化信息進行編碼,而僅僅傳輸另一條聲道的比例因子。該模塊是可選模塊,并且考慮各種條件,以便確定各比例因子頻帶是否使用該模塊。立體聲強度處理部件130將立體聲強度標志值傳輸到位流形成部件180。
1.5.預測部件采用MPEG-2 ACC國際標準中定義的預測部件。預測部件140為可選模塊,該模塊預測當前幀的頻率系數。此外,預測部件140將和預測各的參數傳輸到位流形成部件180。
1.6.Mid/Side(M/S)立體聲處理部件采用MPEG-2 ACC國際標準中定義的M/S立體聲處理部件。M/S立體聲處理部件150為可選模塊,該模塊是一種更有效處理立體聲信號的方法。進行M/S立體聲處理以便將左聲道信號和右聲道信號轉換為兩個信號的相加信號以及其相減信號。
1.7.量化部件利用漸增比例因子對轉換為頻域的數據進行量化,從而表1.1和表1.2所示的比例因子頻帶的SNR值小于音質模型的輸出值SMR。這里,進行標量量化,并且基礎比例因子為21/4。進行量化,從而將可覺察噪聲降到最低限度。MPEG-2 ACC中說明了精確的量化過程。這里,得到的輸出為各比例因子頻帶的量化數據和比例因子。長塊的比例因子頻帶
表1.2]短塊的比例因子頻帶
1.8.利用位片式算術編碼進行位壓縮利用位片式算術編碼部件170和位流形成部件180進行位壓縮。為了方便編碼,重新排列頻率分量。取決于塊類型,重排次序并不相同。如圖4所示,當在塊類型中使用長窗口時,按照比例因子頻帶的次序重排頻率分量。如圖5所示,當在塊類型中使用短窗口時,按照漸增次序重復排列8塊中的各個四頻率分量。
經過重排的量化數據和比例因子構成分層位流。利用表7.1到表7.3所示的句法構造位流。位流的前導元素為常規(guī)ACC中所使用的元素,并且對本發(fā)明新推薦的元素進行具體解釋。然而,其基本結構與ACC標準類似。bsac_lstep_data_block()句法
表7.2] bsac_lstep_stream()句法
表7.3]bsac_raw_data_block()句法 bsac_main_stream()句法 bsac_single_main_stream()句法 bsac_channel_stream()句法 bsac_general_info()句法
表7.10]bsac_side_info()句法
以下將具體解釋本發(fā)明新推薦的元素。
1.8.1.bsac_channel_stream的編碼‘common_window’表示兩個聲道是否使用相同的格式塊,‘max_scalefactor[ch]’表示比例因子的最大值,該值為整數,如8位。此外,‘tns_data_present[ch]’表示是否在編碼裝置中采用TNS?!甮ain_control_data_present[ch]’表示一個標志,該標志表明為了在ACC中提供可伸縮的采樣率(SSR)而采用的時間/頻率映射方法。此外,‘stereo_mode’表示一個2位標志,該標志說明立體聲信號處理方法,其中‘00’表示獨立,‘01’表示所有ms used均為1,‘10’表示在該層的邊信息中存儲有ms_used的max_sfb頻帶的1位屏蔽,‘11’表示在該層的邊信息中存儲有stereo_info的max_sfb頻帶的2位屏蔽。
1.8.2.bsac_data的編碼‘frame_length’表示某幀內所有位流的長度,其單位為字節(jié),例如,對于單聲道信號(M/S)而言,其長度為9位,對于立體聲信號而言,其長度為10位。此外,‘encoded_layer’表示在位流內編碼的頂層的編碼,對于8-kbps間隔而言該編碼為3位,而對于1-kbps間隔而言該編碼為6位。表2.1和表3.1表示增強層的信息。此外,‘scalefactor_model[ch]’表示與模型各的信息,該模型用于對比例因子之間的差值進行算術編碼。表4.2表示該模型。差分比例因子的算術模型
min_ArModel’表示算術編碼模型系數的最小值?!瓵rModel_model’表示與模型各的信息,該模型用于對ArModel和min_ArModel之間的差分信號進行算術編碼。表4.3表示該信息。差分ArModel的算術模型
1.8.3.bsac_side_info的編碼首先對能夠用于所有層的信息進行編碼,隨后對通常用于各增強層的邊信息進行編碼。‘acode_ms_used[g][sfb]’表示對ms used進行算術編碼得到的編碼字,ms_used為1位標志,該標志表示是否在窗口分組g和比例因子頻帶scf內進行M/S編碼,其中ms_used定義如下
0獨立1:ms_used。
‘acode_ms_used[g][sfb]’表示對ms_used進行算術編碼得到的編碼字,ms_used為1位標志,該標志表示是否在窗口分組g和比例因子頻帶scf內采用M/S編碼,其中ms_used定義如下0獨立;和1:ms_used。
‘acode_stereo_info[g][sfb]’表示對ms_used進行算術編碼得到的編碼字,ms_used為2位標志,該標志表示是否在窗口分組g和比例因子頻帶scf內采用立體聲強度編碼,其中stereo_info定義如下00獨立;01:ms_used;10:Intensity_in_phase;和11:Intensity_out_of_phase。
‘Acode_scf’表示對比例因子進行算術編碼得到的編碼字,‘acode_ArModel’表示對ArModel進行算術編碼得到的編碼字。ArModel為根據表4.3所列模型選擇的信息。
1.8.4.bsac_spectral_data的編碼利用BSAC技術,對通常用于各增強層的邊信息以及經過量化的頻率分量進行位片式處理,隨后對其進行算術編碼。‘acode_vec0’表示利用等于ArModel值的算術模型對第一子向量(subvector 0)進行算術編碼而得到的編碼字?!產code_vec1’表示利用等于ArModel值的算術模型對第二子向量(subvector 1)進行算術編碼而得到的編碼字?!產code_sign’表示利用表5.15定義的算術模型對符號位進行算術編碼而得到的編碼字。符號算術模型
在計算對各子向量進行編碼所使用的位數,并與各增強層的可用位數進行比較時,當使用位數大于等于可用位數時,才開始對下一增強層進行編碼。
就長塊而言,基準層的帶寬被限制在第21條比例因子頻帶之下。然后,對前21條比例因子頻帶的比例因子,以及相應編碼頻帶的算術編碼模型進行編碼。根據算術編碼模型得到位分配信息。根據分配到各編碼頻帶的位信息得到所分配位的最大值,并且利用前述編碼方法,從最大量化位值開始進行編碼。然后,順序對下一量化位進行編碼。如果某頻帶所分配的位數小于正被編碼的頻帶所分配的位數,則不進行編碼。如果某頻帶所分配的位數等于正被編碼的頻帶所分配的位數,則首次對該頻帶進行編碼。由于基準層的位率為16 Kbps,所以全部位容量為336位。因此,連續(xù)計算總使用位數,并且當位數超過336位時,就終止編碼。
在形成基準層(16 Kbps)的所有位流后,就形成下一增強層的位流。由于增加了較高層的極限帶寬,所以僅對基準層極限頻帶的新增頻帶的比例因子和算術編碼模型進行編碼。在基準層,按照基準層內的相同方式,從MSB開始,對各頻帶未編碼的位片式數據以及新增頻帶的位片式數據進行編碼。當總使用位數大于可用位數時,就終止編碼,并且準備形成下一增強層位流。這樣,就能夠生成32、40、48、56和64 Kbps的剩余層的位流。
2.解碼過程2.1.位流的分析和解碼2.1.1.bsac_channel_stream的解碼按照以下次序,對bsac_channel_stream進行解碼。首先,得到max_scalefactor。然后,得到ics_info()。如果有TNS數據,則得到TNS數據。如果有兩個聲道,則得到stereo_mode,隨后得到BSAC數據。
2.1.2.bsac_data的解碼在位流內,對解碼frame_length所需的邊信息、encoded_layer、比例因子模型以及算術模型進行解碼。
2.1.3.bsac_stream的解碼BSAC流具有分層結構。首先,從位流中分離出基準層的邊信息,隨后對其進行算術解碼。然后,從位流中分離出經過量化的頻率分量的位片式信息,并對其進行算術解碼。接著,對下一增強層的邊信息進行解碼,并對經過量化的頻率分量的位片式信息進行算術解碼。
反復對各增強層的邊信息以及位片式數據進行解碼,直至增強層大于編碼層。
2.1.4.stereo_info或ms_used的解碼對stereo_info或ms_used進行的解碼受stereo_mode的影響,其中stereo_mode表示立體聲屏蔽。如果stereo_mode為0或1,則無需對stereo_info或ms_used進行解碼。
如果stereo_mode為1,則所有的ms_used均為1。將有關ms_used的信息傳輸到M/S立體聲處理部件,從而開始M/S立體聲處理。如果stereo_mode為2,則采用表5.13所示的模型對ms_used的值進行算術編碼。此外,將有關ms_used的信息傳輸到M/S立體聲處理部件,從而開始M/S立體聲處理。ms_used模型
如果stereo_mode為3,則采用表5.14所示的模型對stereo_info進行算術編碼。正如ACC中所述,將經過解碼的數據傳輸到M/S立體聲處理部件或者立體聲強度處理部件,從而以比例因子頻帶組的形式開始M/S立體聲處理或者立體聲強度處理。stereo_info模型
2.1.5bsac_side_info的解碼按上述方式形成的可伸縮位流具有分層結構。首先,從位流中分離出基準層的邊信息,隨后對其進行解碼。然后,從位流中分離出包含在基準層位流中的經過量化的頻率分量的位片式信息,并對其進行解碼。對其他增強層施加與基準層相同的解碼過程。
2.1.5.1.比例因子的解碼將頻率分量劃分為比例因子頻帶,其中該比例因子頻帶的頻率系數為4的倍數。每條比例因子頻帶均具有一個比例因子。采用兩種方法對比例因子進行解碼。根據scf_coding的值確定采用的方法。
首先,將max_scalefactor解碼為8位無符號整數。通常,在編碼期間,對經過映射差值而得到的值進行編碼。因此,對于各比例因子頻帶,采用表5.2所示的模型對經過映射的值進行算術編碼。此時,如果經過算術解碼的值為54,這意味著映射值大于等于54,由于還對54與映射值之間的差值進行過編碼,所以還需要對經過編碼的差值進行解碼,以便將其恢復為大于等于54的值。如果完成了對映射值的解碼,就利用差分符號實現映射值的逆映射。利用表5.1和表5.2所示的映射表進行映射和逆映射。利用max_scalefactor與第一比例因子之間的差分符號,就可以得到第一比例因子。
表5.1.從差分比例因子到系數的轉換表
表5.2.從系數到差分比例因子的轉換表
>第二,將max_scalefactor解碼為8位無符號整數。對于所有的比例因子而言,對偏移值(即max_scalefactor)與所有比例因子之間的差值進行算術編碼。從max_scalefactor中減去差值符號就能夠得到比例因子。對以上差值進行解碼的算術模型為構成位流的元素之一,并且該模型是從已經解碼的位流中分離出來的。
以下偽碼說明對基準層以及其他增強層的比例因子進行解碼的方法。
<pre listing-type="program-listing"><![CDATA[for(ch=0;ch<nch;ch++)  if(scf_coding[ch]==1)   for(g=0;g<num_window_group;g++)  for(sfb=layer_sfb[layer];sfb<layer_sfb[layer+1];sfb++){   sr[ch][g][sfb]=max_scalefactor-arithmetic_decoding();}  }  } else{   for(g=0;g<num_window_group;g++){  for(sfb=layer_sfb[layer];sfb<layer_sfb[layer+1];sfb++)   tmp_index=arithmetic_decoding();   if(tmp_index==54)   tmp_index=54+arithmetic_decoding();   if(sfb==0)   tmp_index=max_scalefactor-tmp_indcx;   else   tmp_index=sf[ch][g][sfb-1]-tmp_index;   sf[ch][g][sfb]=index2sf[tmp_index];   }  }   }}]]></pre>這里,layer_sfb[layer]是對各增強層中的比例因子進行解碼所需的起始比例因子頻帶,而layer_sfb[layer+1]是結束比例因子頻帶。
2.1.5.2.算術模型系數的解碼將頻率分量劃分為具有32個頻率系數的編碼頻帶,以便進行無損編碼。編碼頻帶是無損編碼中使用的基本部件。
算術編碼模型系數是與模型各的信息,其中該模型用于對各頻帶的位片式數據進行算術編碼/解碼,該系數表示在算術編碼/解碼過程中采用表4.4所列模型中的哪個模型。BSAC算術模型參數
計算偏移值與所有算術編碼模型系數之間的差值,隨后利用表4.3所列模型對差分符號進行算術編碼。這里,在表4.3所列的四個模型中,ArModel_model的值表示所使用的模型,并以2比特的長度將該模型存儲在位流中。偏移值為存儲在位流中的長度為5比特的min_ArModel的值。按照編碼過程的相反次序對差分符號進行解碼,隨后將差分符號累加到偏移值中,以便恢復算術編碼模型系數。
以下偽碼說明對各增強層內的算術編碼模型系數以及ArModel[cband進行解碼的方法。
<pre listing-type="program-listing"><![CDATA[for(ch=0;ch<nch;ch++) for(sfb=layer_sfb[layer];sfb<layer_sfb[layer+1];sfb++)   for(g=0;g<num_window_group;g++){  band=(sfb*num_window_group)+g  for(i=0;swb_offset[band];i<swb_offset[band+1];i+=4){   cband=index2cb(g,i);if(!decode_cband[ch][g][cband]){ ArModel[g][cband]=min_ArModel+arithmetic_decoding(); decode_cband[ch][g][cband]=1;   }   }}]]></pre>這里,layer_sfb[layer]是對各增強層中的算術編碼模型系數進行解碼所需的起始比例因子頻帶,而layer_sfb[layer+1]是結束比例因子頻帶。decode_cband[ch][g][cband]是一個標志,該標志表示是(1)否(0)對算術編碼模型進行過解碼。
2.1.6.位片式數據的解碼以位片順序形成量化序列。根據四維向量的狀態(tài),將每個四維向量劃分為兩個子向量。為了進行有效壓縮,以無損編碼方式對兩個子向量進行算術編碼。確定對各編碼頻帶進行算術編碼所使用的模型。將以上信息存儲到ArModel中。
如表6.1到表6.31所示,每個算術編碼模型是由幾個低階模型組成的。利用某個低階模型對子向量進行編碼。根據需要編碼的子向量的位數、向量的有效值或各采樣的編碼狀態(tài),對低階模型進行分類。根據需要編碼的向量的位位置確定向量的有效值。換句話說,隨著位片信息是MSB的位片信息、還是下一MSB的位片信息抑或是LSB的位片信息的不同,向量的有效值不同。MSB具有最高有效值,LSB具有最低有效值。當從MSB到LSB進行向量編碼時,更新各采樣的編碼狀態(tài)值。首先,將編碼狀態(tài)值初始化為0。然后,遇到非零比特值時,就將編碼狀態(tài)值改為1。BSAC算術模型0分配位=0BSAC算術模型1未用[表6.2]BSAC算術模型2分配位=1 BSAC算術模型3分配位=1 BSAC算術模型4分配位=2 BSAC算術模型5分配位=2
表6.6]BSAC算術模型6分配位=3 BSAC算術模型7分配位=3
>[表6.8]BSAC算術模型8分配位=4 BSAC算術模型10分配位(Abit)=5
表6.12]BSAC算術模型12與BSAC算術模型10相同,但分配位=6[表6.13]BSAC算術模型13與BSAC算術模型11相同,但分配位=6[表6.14]BSAC算術模型14與BSAC算術模型10相同,但分配位=7[表6.15]BSAC算術模型15與BSAC算術模型11相同,但分配位=7[表6.16]BSAC算術模型16與BSAC算術模型10相同,但分配位=8[表6.17]BSAC算術模型17與BSAC算術模型11相同,但分配位=8[表6.18]BSAC算術模型18與BSAC算術模型10相同,但分配位=9[表6.19]BSAC算術模型19與BSAC算術模型11相同,但分配位=9[表6.20]BSAC算術模型20與BSAC算術模型10相同,但分配位=10BSAC算術模型21與BSAC算術模型11相同,但分配位=10[表6.22]BSAC算術模型22與BSAC算術模型10相同,但分配位=11[表6.23]BSAC算術模型23與BSAC算術模型11相同,但分配位=11[表6.24]BSAC算術模型24與BSAC算術模型10相同,但分配位=12[表6.25]BSAC算術模型25與BSAC算術模型11相同,但分配位=12[表6.26]BSAC算術模型26與BSAC算術模型10相同,但分配位=13[表6.27]BSAC算術模型27與BSAC算術模型11相同,但分配位=13[表6.28]BSAC算術模型28與BSAC算術模型10相同,但分配位=14[表6.29]BSAC算術模型29與BSAC算術模型11相同,但分配位=14[表6.30]BSAC算術模型30與BSAC算術模型10相同,但分配位=15’為一狀態(tài),該狀態(tài)表示當前解碼值是否為0?!畇nf’為經過解碼的向量的有效值?!甶dx0’為編碼字系數,其預狀態(tài)為0?!甶dx1’為編碼字系數,其預狀態(tài)為1?!甦ec_sample[]’為經過解碼的數據?!畇tart_i’為經過解碼的向量的起始頻率行號。
<pre listing-type="program-listing"><![CDATA[   for(i=start_i;i<(start_i+4);i++){   if(pre_state[i]){   if(idx1 &amp; 0x01)   dec_sample[i]=(1<<(snf-1))  idx1>>=1;   }   else{   if(idx0 &amp; 0x01)   dec_sample[i]=(1<<(snf-1))   idx0>>=1;   }  }]]></pre>在按照從MSB到LSB的次序,對量化頻率分量的位片式數據進行編碼時,對非零頻率系數的符號位進行算術編碼。用1表示負(-)符號位,用0表示正(+)符號位。
因此,如果在解碼器內對位片式數據進行算術解碼,并且首先遇到經過算術解碼的非零位值,則隨后為位流中的符號信息,即acode_sign。借助表5.9所列模型,利用以上信息對sign_bit進行算術解碼。如果sign_bit為1,則按如下方式,通過耦合分離數據將符號信息賦予量化數據(v)。
<pre listing-type="program-listing"><![CDATA[  if(y!=0)   if(sign_bit==1)   y=-y]]></pre>2.2.M/S立體聲處理部件(可選模塊)根據位流中包含的標志以及ms_used[],確定各比例因子頻帶是否采用了M/S立體聲處理部件。如果采用了該部件,就采用ACC中說明的相同過程進行M/S立體聲處理。
2.3.預測部件(可選模塊)根據位流中包含的標志以及prediction_present,確定各比例因子頻帶是否采用了預測部件。如果采用了該部件,就采用ACC中說明的相同過程進行預測。
2.4.立體聲強度處理部件(可選模塊)根據位流中包含的標志以及stereo_info,確定各比例因子頻帶是否采用了立體聲強度處理部件。如果采用了該部件,就采用ACC中說明的相同過程進行立體聲強度處理。
2.5.TNS部件(可選模塊)根據位流中包含的標志以及tns_present,確定是否采用了TNS部件。如果采用了該部件,就采用ACC中說明的相同過程進行TNS處理。
2.6.反向量化反向量化部件將經過解碼的比例因子與量化數據恢復為具有原始數值的信號。ACC標準說明了反向量化過程。
2.7.頻率/時間映射頻率/時間映射部件將頻域音頻信號反演為時域信號,以便用戶重播。ACC標準定義了將頻域信號映射為時域信號的公式。此外,ACC標準還說明了各種術語,如與映射各的窗口。
本發(fā)明提供與常規(guī)編碼器類似的性能,從而能夠處理單聲道信號和立體聲信號以滿足不同用戶需求,同時形成可伸縮的位流,其中常規(guī)編碼器僅僅考慮在較高的位率進行壓縮。換句話說,根據用戶請求,將各層的位率信息融合到某位流中而無需疊加,從而提供具有較好音質的位流。此外,在發(fā)送端和接收端之間不需要轉換器。另外,本發(fā)明可以適應任何傳輸通道狀態(tài)以及各種用戶請求。
此外,可伸縮性適用于立體聲信號,也適用于單聲道信號。
可以將本發(fā)明沿用于具有以下模塊的常規(guī)音頻編碼/解碼裝置,從而改進在不同位率下的性能,其中該模塊用于提高編碼/解碼的效率。
此外,在本發(fā)明中,在使用ACC標準中所采用的基本模塊(如時間/頻率映射模塊或量化模塊)時,僅利用位片式編碼方法取代無損編碼模塊,以便提供可伸縮性。
由于位流是可伸縮的,所以某位流可以包含具有各種位率的不同位流。與常規(guī)編碼器不同,根據本發(fā)明的可伸縮的編碼器具有精細分層的增強層,從而推廣了應用范圍。
此外,與其他可伸縮的編碼解碼器不同,在較高位率提供優(yōu)良音質。
如果聯(lián)合本發(fā)明與ACC標準,則在頂層位率下,也能夠獲得幾乎相同的音質。
根據本發(fā)明,在利用諸如MPEG-2ACC標準之類的常規(guī)音頻算法時,只是無損編碼部件與常規(guī)部件不同。因此,以ACC位流方式,對頻域上的量化信號進行解碼,并且能夠根據經過解碼的信號生成可伸縮的BSAC位流。換句話說,提供無損解碼。此外,可以按照相反次序,根據可伸縮的BSAC位流生成ACC位流。由于以上功能,所以能夠根據其環(huán)境轉換使用僅僅為提高編碼效率而生成的各種ACC位流。因此,為了提供可伸縮性,單個編碼裝置并不需要兩倍或三倍的工作量來生成提供可伸縮性所需的位流。
此外,本發(fā)明具有良好的編碼效率,即,如同常規(guī)編碼技術一樣,在固定位率呈現最佳性能,并且本發(fā)明涉及編碼/解碼方法和裝置,其中恢復為適應多媒體技術的來臨而編碼的位率。此外,根據本發(fā)明,可以在某個位流內表示所有增強層的位率數據。因此,根據用戶解碼器的性能以及傳輸通道的帶寬/擁塞或者根據用戶請求,可以控制位率的高低以及其復雜性。
權利要求
1.一種可伸縮的立體聲音頻編碼方法,該方法將音頻信號編碼為具有一層基準層和至少兩層增強層的分層數據流,該方法包括以下步驟對各預定編碼頻帶的音頻輸入信號進行信號處理和量化;對量化數據中與基準層相對應的量化數據進行編碼;對對應于基準層的下一增強層相對應的量化數據進行編碼,以及對由于層數限制未編碼而又屬于編碼層的剩余量化數據進行編碼;以及對所有增強層順序執(zhí)行層編碼步驟以便形成位流,其中執(zhí)行基準層編碼步驟、增強層編碼步驟以及順序編碼步驟,從而可以利用相同的預定數字表示邊信息以及與編碼層相對應的量化數據;隨后按照從MSB序列到LSB序列的次序,利用先驗概率模型進行算術編碼,以預定向量組輪流對位片式左聲道數據和右聲道數據進行編碼。
2.根據權利要求1的可伸縮的立體聲音頻編碼方法,其中邊信息至少包括比例因子和算術編碼所使用的各概率模型的信息。
3.根據權利要求1的可伸縮的立體聲音頻編碼方法,其中預定向量是通過將四個位片式音頻聲道數據耦合為一個向量而生成的四維向量。
4.根據權利要求3的可伸縮的立體聲音頻編碼方法,其中根據預狀態(tài)將四維向量劃分為兩個子向量,以便進行編碼,其中預狀態(tài)表示是否對非零位片式頻率分量進行過編碼。
5.根據權利要求2的可伸縮的立體聲音頻編碼方法,其中對比例因子進行編碼的步驟包括以下步驟獲得最大比例因子;獲得最大比例因子與第一比例因子的差值,對該差值進行算術編碼;以及獲得緊接前一個算術編碼的比例因子與第一比例因子之后各比例因子的差值,將該差值映射為預定值,并對映射值進行算術編碼。
6.根據權利要求5的可伸縮的立體聲音頻編碼方法,其中在映射步驟中使用表5.1所列的概率模型。
7.根據權利要求5的可伸縮的立體聲音頻編碼方法,其中在算術編碼步驟中使用表5.3到表5.4所列的概率模型。
8.根據權利要求2的可伸縮的立體聲音頻編碼方法,其中對比例因子進行編碼的步驟包括以下步驟獲得最大比例因子;以及獲得最大比例因子與各比例因子的差值,并對該差值進行算術編碼。
9.根據權利要求1的可伸縮的立體聲音頻編碼方法,其中為了得到分層結構,對通常用于所有頻帶的標題信息進行編碼,隨后對利用位片信息形成的各層所需的邊信息和量化頻率進行編碼。
10.根據權利要求1的可伸縮的立體聲音頻編碼方法,其中通過以下步驟完成量化將時域上的音頻輸入信號轉換為頻域信號;利用時間/頻率映射以預定比例因子頻帶信號的方式耦合轉換信號,計算各比例因子頻帶的屏蔽閾值;進行時域噪聲整形,以便控制各轉換窗口內量化噪聲的瞬時形狀;進行立體聲強度處理,從而僅對兩條聲道中一條聲道的比例因子頻帶的量化信息進行編碼,并且僅傳輸另一條聲道的比例因子;預測當前幀的頻率系數;進行M/S立體聲處理,以便將左聲道信號和右聲道信號轉換為兩個信號的相加信號以及其相減信號;和對各預定編碼頻帶的信號進行量化,從而各頻帶的量化噪聲小于屏蔽閾值。
11.根據權利要求1的可伸縮的立體聲音頻編碼方法,其中當量化數據是由符號數據和數值數據組成時,基準層和增強層編碼以及位流形成步驟還包括以下步驟對由數值數據的最高有效數字構成的最高有效數字序列進行算術編碼;對與編碼最高有效數字序列中非零數據相對應的符號數據進行編碼;對數字數據的未編碼數值數據中的最高有效數值序列進行編碼;對編碼與編碼數字序列中非零數值數據相對應的符號數據中的未編碼符號數據進行編碼;以及對數字數據的各數字執(zhí)行數值編碼步驟和符號編碼步驟,按預定向量組對左聲道數據和右聲道數據輪流執(zhí)行各步驟。
12.一種可伸縮的音頻編碼裝置,該裝置包括量化部件,該部件用于各編碼頻帶的音頻輸入信號的信號處理和量化;位片式算術編碼部件,該部件用于編碼所有層的位流從而具有分層結構,通過限制基準層的頻帶實現可伸縮,該部件還用于編碼與基準層相對應的邊信息,從最高有效位序列到最低有效位序列、從較低頻率分量到較高頻率分量對量化信息進行順序編碼,以預定向量組輪流對左聲道數據和右聲道數據進行編碼,對與基準層的下一增強層相對應的邊信息和量化數據進行編碼;以及位流形成部件,該部件用于收集量化部件和位片式算術編碼部件生成的數據并且生成位流。
13.根據權利要求12的可伸縮的音頻編碼裝置,其中量化部件包括時間/頻率映射部件,該部件將時域上的音頻輸入信號轉換位頻域信號;音質部件,該部件通過時間/頻率映射利用預定比例因子頻帶的信號連接轉換信號,該部件還利用各信號相互影響而產生的屏蔽現象計算各比例因子頻帶的屏蔽閾值;以及量化部件,當比較各頻帶的量化噪聲與屏蔽閾值時,該部件量化各預定編碼頻帶的信號。
14.根據權利要求13的可伸縮的音頻編碼裝置,該裝置還包括時域噪聲整形(TNS)部件,該部件進行時域噪聲整形以便控制各轉換窗口內量化噪聲的瞬時形狀;立體聲強度處理部件,該部件進行立體聲強度處理,從而僅對兩個聲道中之一個聲道的比例因子頻帶的量化信息進行編碼,傳輸另一個聲道的比例因子;預測部件,該部件預測當前幀的頻率系數;以及M/S立體聲處理部件,該部件進行M/S立體聲處理,以便將左聲道信號和右聲道信號轉換為兩個信號的相加信號及其相減信號。
15.一種可伸縮的立體聲音頻解碼方法,該方法用于解碼音頻數據編碼以便具有分層位率,該方法包括以下步驟分析具有分層結構的位流中各模塊所需的數據;按具有分層結構的位流中各層的建立次序,至少解碼比例因子、算術編碼模型系數和量化數據,其中按照從較高有效位到較低有效位的順序,通過分析構成位流的位的有效性,輪流對各聲道的量化數據進行解碼;將經過解碼的比例因子和量化數據恢復位具有原始數值的信號;以及將量化信號反演為時域信號。
16.根據權利要求15的可伸縮的立體聲音頻解碼方法,該方法還包括以下步驟進行M/S立體聲處理,以便檢查是否在位流編碼方法中進行過M/S立體聲處理,并且如果進行過M/S立體聲處理,就將左聲道信號和右聲道信號轉換為兩個信號的相加信號以及其相減信號;檢測是否在位流編碼方法中執(zhí)行過預測步驟,并且如果執(zhí)行過預測步驟,就預測當前幀的頻率系數;檢測是否在位流編碼方法中進行過立體聲強度處理,并且如果進行過立體聲強度處理,則由于僅對兩條聲道中之一條聲道(左聲道)的比例系數頻帶的量化信息進行過編碼,所以進行立體聲強度處理以便將另一聲道(右聲道)的量化信息恢復到左聲道值;以及檢測是否在位流編碼方法中執(zhí)行過時域噪聲整形(TNS)步驟,并且如果執(zhí)行過TNS步驟,就進行時域噪聲整形以便控制各轉換窗口內量化噪聲的瞬時形狀。
17.根據權利要求15或權利要求16的可伸縮的立體聲音頻解碼方法,其中當量化數據是由符號數據和數值數據組成時,通過順序解碼量化頻率分量符號位的數值數據并且耦合數值數據和符號位,恢復量化頻率分量。
18.根據權利要求15的可伸縮的立體聲音頻解碼方法,其中按照從最高有效位到最低有效位的順序執(zhí)行解碼步驟,通過耦合經過解碼的位片式數據以及將耦合數據恢復為量化頻率分量數據,執(zhí)行恢復步驟。
19.根據權利要求18的可伸縮的立體聲音頻解碼方法,其中在解碼步驟中對數據進行解碼,從而將四個樣本的位片式信息解碼為四維向量組。
20.根據權利要求19的可伸縮的立體聲音頻解碼方法,其中進行四維向量解碼,從而對根據預狀態(tài)編碼的兩個子向量進行算術解碼,并且將根據各樣本的編碼狀態(tài)進行解碼的兩個子向量恢復為四維向量,其中預狀態(tài)表示是否對非零位片式頻率分量進行過編碼。
21.根據權利要求17的可伸縮的立體聲音頻解碼方法,其中當根據MSB對各頻率分量是位片式數據進行解碼時,如果位片式數據為“0”就跳過解碼,當位片式數據“1”第一次出現時,就對符號數據進行算術解碼。
22.根據權利要求15的可伸縮的立體聲音頻解碼方法,其中通過解碼位流中的最大比例因子,算術解碼最大比例因子和各比例因子的差值,從最大比例因子中減去該差值,就完成了比例因子的解碼。
23.根據權利要求15的可伸縮的立體聲音頻解碼方法,其中解碼比例因子的步驟包括以下步驟根據位流解碼最大比例因子;通過映射獲得最大比例因子與需要解碼的比例因子之間的差值,算術解碼該差值,根據映射值,對該差值進行逆映射;以及通過從最大比例因子中減去該差值獲得第一比例因子,而通過從前一比例因子中減去該差值獲得剩余頻帶的比例因子。
24.根據權利要求15的可伸縮的立體聲音頻解碼方法,其中通過執(zhí)行以下步驟完成算術編碼模型系數的解碼解碼位流中的最小算術模型系數,解碼最小系數與各層邊信息中各系數之間的差值,累加最小系數與該差值。
25.一種可伸縮的音頻解碼裝置,該裝置用于解碼音頻數據編碼以便具有分層位率,該裝置包括位流分析部件,該部件分析具有分層結構的位流中各模塊所需的數據;解碼部件,該部件按具有分層結構的位流中各層的建立次序,至少解碼比例因子、算術編碼模型系數和量化數據,其中按照從較高有效位到較低有效位的順序,通過分析構成位流的位的有效性,輪流對各聲道的量化數據進行解碼;恢復部件,該部件將經過解碼的比例因子和量化數據恢復位具有原始數值的信號;以及頻率/時間映射部件,該部件將量化信號反演為時域信號。
26.根據權利要求25的可伸縮的立體聲音頻解碼裝置,該裝置還包括進行M/S立體聲處理的M/S立體聲處理部件,以便檢查是否在位流編碼方法中進行過M/S立體聲處理,并且如果進行過M/S立體聲處理,就將左聲道信號和右聲道信號轉換為兩個信號的相加信號以及其相減信號;預測部件,該部件用于檢測是否在位流編碼方法中執(zhí)行過預測步驟,并且如果執(zhí)行過預測步驟,就預測當前幀的頻率系數;立體聲強度處理部件,該部件用于檢測是否在位流編碼方法中進行過立體聲強度處理,并且如果進行過立體聲強度處理,則由于僅對兩條聲道之一條聲道(左聲道)的比例系數頻帶的量化信息進行過編碼,所以進行立體聲強度處理以便將另一聲道(右聲道)的量化信息恢復到左聲道值;以及時域噪聲整形(TNS)部件,該部件用于檢測是否在位流編碼方法中執(zhí)行過時域噪聲整形步驟,并且如果執(zhí)行過TNS步驟,就進行瞬時噪聲處理以便控制各轉換窗口內量化噪聲的瞬時形狀。
全文摘要
提供一種可伸縮的立體聲編碼/解碼方法和裝置。該方法包括以下步驟:對各預定編碼頻帶的音頻輸入信號進行信號處理和量化,對量化數據中與基準層相對應的量化數據進行編碼,對對應于基準層的下一增強層的量化數據進行編碼,和對由于層數限制未編碼而又屬于編碼層的剩余量化數據進行編碼,對所有增強層順序執(zhí)行層編碼步驟以便形成位流;隨后按照從MSB序列到LSB序列的次序,使用先驗概率模型進行算術編碼,以預定向量組輪流對經過位片處理的左聲道數據和右聲道數據進行解碼。
文檔編號H03H7/38GK1218334SQ98115468
公開日1999年6月2日 申請日期1998年7月9日 優(yōu)先權日1997年11月20日
發(fā)明者樸成熙, 金延培 申請人:三星電子株式會社
網友詢問留言 已有0條留言
  • 還沒有人留言評論。精彩留言會獲得點贊!
1