專利名稱:音頻編碼及解碼的方法及其裝置的制作方法
技術領域:
本發明涉及一種數字信號處理,且特別涉及一種音頻編碼及解碼的方法及其裝置。
背景技術:
傳統上,是利用脈沖碼調制(pulse-code modulation,PCM)將模擬音頻信號轉換成數字音頻信號。在這種系統中,將接收的模擬音頻信號饋入至模/數轉換器以產生數字音頻信號,并存儲在二進制存儲器。然后,自存儲器中擷取數字信號,并使信號通過模/數轉換器而完成錄放。藉此,即可重建原始的真實聲音。
雖可獲得出色的音質,PCM音頻卻有存儲錄制文件時需使用大量的存儲器空間的問題。為改善通過網絡的音頻文件傳輸,盡可能減少文件容量的需求遂變得越來越迫切。
于是在1993年,運動圖像專家組(Motion Picture Experts Group,MPEG)委員會提出一種具有適于存儲的縮小容量的高品質音頻文件的高效率編碼方法,并制訂ISO/IEC 11172的新標準。通過感官編碼技術(perceptualcoding),使用心理聽覺模型(psychoacoustic model)遮除人耳無法察覺的音頻頻率范圍。也就是僅存儲人耳能夠檢測的頻率并用霍夫曼編碼法(Huffman encoding)壓縮,文件容量遂可有效地減少且保留適當的音頻品質。
以數字量化的方式表示文件容量將更為清楚。例如,欲制造「CD品質」的聲音,便需要44.1kHz的擷取頻率及16位的取樣分辨率。兩者相乘得每秒88200字節(8位為1字節),對于立體音頻則需再兩倍。于是,對于一首3分鐘的歌曲,相當于約30兆字節。另一方面,MP3(MPEG layer 3)編碼可將同一首歌壓縮至十分之一的大小,即3兆字節。顯著的效果使MP3成為通過網絡的音樂傳輸的標準格式。
MP3音頻編碼器一般包括幀位流封裝單元(frame bitstream packingunit),用以將編碼后音頻取樣封裝成音頻幀,且各幀包括標記信息(headerinformation)、視需要使用的循環冗余校驗(Cyclic Redundancy Check,CRC)錯誤檢測、副信息(side information)、主要數據(main data)以及輔助數據(ancillary data)。主要數據又包括霍夫曼數據(Huffman data)以及一組比例因子(scale factor)。音頻幀具有固定的長度,而輔助數據則用以調整位數。
然而,使用MP3編碼法的編碼后音頻文件仍不夠緊致。例如,用以調整位數的輔助數據在存儲器空間中即是一種浪費。此外,在傳統方法中,封裝副信息及比例因子的方式沒有考慮音頻幀中比例因子及副信息的關聯性。所以當加速通過網絡的傳輸或節省存儲器空間變得越來越重要時,還需要更進一步減少音頻文件容量的方法。
發明內容
有鑒于此,本發明的目的就是在提供一種用以編碼一音頻為一編碼后音頻位流的編碼器,以及一種編碼一音頻為一編碼后音頻位流的方法。
根據本發明的目的,提出一種音頻編碼器,包括一編碼單元、一幀比較單元以及一位流封裝單元。編碼單元用以編碼音頻位流并產生一第一組量化取樣及一第二組量化取樣。第一組量化取樣具有一第一組變長碼、一第一副信息以及一第一比例因子。第二組量化取樣具有一第二組變長碼、一第二副信息以及一第二比例因子。
當第一副信息與第二副信息相同時,幀比較單元設立一副標記,當第一比例因子與第二比例因子相同時,幀比較單元設立一比例標記。
此外,位流封裝單元用以依據副標記及比例標記產生幀,位流封裝單元包括一數據封裝器、一副信息安裝器以及一比例因子安裝器。
數據封裝器用以將第二組變長碼封裝進幀的一主要數據字段,以及將副標記及比例標記封裝進幀的一輔助數據字段。輔助數據字段至少包括2位的副標記及2位的比例標記。
當未設立幀的副標記時,副信息安裝器用以將第二副信息封裝進幀的一副信息字段。最后,當未設立幀的比例標記時,比例因子安裝器用以將第二比例因子封裝進幀的主要數據字段。
根據本發明的另一目的,提出一種音頻解碼器,用以解碼音頻編碼器產生的編碼后音頻位流。音頻解碼器包括一位流解包單元以及一解碼單元。位流解包單元用以依據較早解壓縮出的一第一幀而從編碼后音頻位流解壓縮出一第二幀,其中第二幀包括具有一副標記及一比例標記的一輔助數據字段以及具有一組變長碼的一主要數據字段。
位流解包單元包括一數據解壓縮器、一副信息解壓縮器以及一比例因子解壓縮器。數據解壓縮器用以從主要數據字段解壓縮出變長碼,以及從輔助數據字段解壓縮出副標記及比例標記。此外,副信息解壓縮器用以解壓縮出一第二副信息,其中除非設立第二幀的副標記,即第二副信息等于第一幀的一第一副信息,否則便從第二幀的一副信息字段解壓縮出第二副信息。
比例因子解壓縮器用以解壓縮出一第二比例因子,其中除非設立第二幀的比例標記,即第二比例因子等于第一幀的一第一比例因子,否則便從第二幀的主要數據字段解壓縮出第二比例因子。解碼單元依據第二副信息、第二比例因子以及變長碼而輸出一組解碼后音頻取樣。
根據本發明的再一目的,提出一種編碼一音頻位流的方法,包括將音頻位流從一時域轉換至一頻域,并產生一組次頻帶取樣;依據音頻位流產生一頻率屏蔽;以及接收該組次頻帶取樣及頻率屏蔽而輸出具有一第一副信息及一第一比例因子的一第一組量化取樣以及具有一第二副信息及一第二比例因子的一第二組量化取樣。
根據本發明的再一目的,提出一種解碼一編碼后音頻位流的方法,包括自一第二幀的一主要數據字段解壓縮出一組可變成長度碼,以及自第二幀的一輔助數據字段解壓縮出一副標記及一比例標記;依據較早解壓縮出的一第一幀解壓縮出一第二副信息,其中除非設立第二幀的副標記,即第二副信息等于第一幀的一第一副信息,否則便從第二幀的一副信息字段解壓縮出第二副信息;解壓縮出一第二比例因子,其中,除非設立第二幀的比例標記,即第二比例因子等于第一幀的一第一比例因子,否則便從第二幀的主要數據字段解壓縮出第二比例因子;以及接收第二副信息、第二比例因子以及變長碼而輸出一組解碼后音頻取樣。
為讓本發明的上述目的、特征、和優點能更明顯易懂,下文特舉較佳實施例,并配合所附圖式,做詳細說明如下。
圖1示出了編碼后音頻位流中傳統的音頻幀的方塊圖。
圖2示出了依據本發明的較佳實施例的音頻編碼器的方塊圖。
圖3示出了依據本發明的較佳實施例的音頻解碼器的方塊圖。
圖4示出了依據本發明的較佳實施例的編碼后音頻位流的容量縮小的比率圖。
附圖符號說明200解碼單元202映像單元204量化編碼單元206心理聽覺模型220幀比較單元240位流封裝單元242同步標記安裝器244、304循環冗余校驗器246副信息安裝器248比例因子安裝器250數據封裝器300位流解包單元302同步標記解壓縮器306數據解壓縮器308副信息解壓縮器310比例因子解壓縮器320解碼單元322重建單元324反映像單元具體實施方式
請參照圖1,其示出了編碼后音頻位流(encoded audio bitstream)中傳統的音頻幀的方塊圖。音頻幀(audio frame)包括標記、循環冗余校驗(CRC)字段、副信息字段、主要數據字段以及輔助數據字段。標記包括幀的信息中前32位。CRC字段包括16位的同位檢查(parity-check)數據,用以檢測錯誤。主要數據字段包括變長碼如霍夫曼編碼數據,以及用于重建數據的比例因子。副信息字段包括副信息,用以解碼主要數據字段中的變長碼。輔助數據字段包括用以調整位數的數據。編碼后音頻位流中的各傳統幀存儲有副信息及比例因子,然而,鄰接的幀中的副信息及比例因子可能相同,因此編碼后音頻位流仍不夠緊密。
請參照圖2,其示出了依據本發明的較佳實施例的音頻編碼器的方塊圖。音頻編碼器不會產生多余的副信息及比例因子的編碼后音頻位流,音頻編碼器包括編碼單元200、幀比較單元(frame comparison unit)220以及位流封裝單元240。編碼單元200包括映像單元(mapping unit)202、量化編碼單元(quantizer and coding unit)204以及心理聽覺模型206。映像單元202具有輸入端,用以接收音頻位流如脈沖碼調制(PCM)音頻。編碼單元200利用如霍夫曼算法編碼音頻位流產生編碼數據,如第一組量化取樣及第二組量化取樣,第一組量化取樣具有第一組變長碼、第一副信息以及第一比例因子,第二組量化取樣具有第二組變長碼、第二副信息以及第二比例因子,其中第一組量化取樣先于第二組量化取樣產生。
幀比較單元220耦接于編碼單元200。依據第一組量化取樣及第二組量化取樣,當第一副信息與第二副信息相同時,幀比較單元220設立副標記(side flag)。同樣地,當第一比例因子與第二比例因子相同時,幀比較單元會設立比例標記。
位流封裝單元240耦接于編碼單元200及幀比較單元220。位流封裝單元240接收來自幀比較單元220的副標記及比例標記以及來自編碼單元200的第一組量化取樣及第二組量化取樣,并產生及輸出至少一幀。編碼后音頻位流或編碼音頻文件由一連串的幀所構成。副信息安裝器(side informationinstaller)246耦接于幀比較單元220及CRC校驗器244的輸出端,當未設立副標記時,副信息安裝器246將副信息封裝進幀的副信息字段。比例因子安裝器(scale factor installer)248也耦接于幀比較單元220,當未設立比例標記時,比例因子安裝器248將第二比例因子封裝進主要數據字段。數據封裝器(data packer)250耦接于比例因子安裝器248,用以將第二組變長碼封裝進幀的主要數據字段以及將副標記及比例標記封裝進幀的輔助數據字段,其中,輔助數據字段至少包括2位的副標記及2位的比例標記。應注意的是,本發明所屬技術領域中任何具有通常知識者當可變換CRC校驗器244、副信息安裝器246、比例因子安裝器248以及數據封裝器250的順序而執行相同的功能。
此外,編碼單元200產生量化取樣之前,映像單元202、量化編碼單元204以及心理聽覺模型206須先執行若干工作。亦即,映像單元202具有用以接收音頻位流的輸入端,并使用數學算法如快速傅立葉變換(Fast FouierTransform,FFT)將音頻位流從時域轉換至頻域而產生一組次頻帶取樣。在其它實施例中,為了得到較高的頻率分辨率,也可使用快速傅立葉變換的變形或離散余弦變換(Discrete Cosine Transform,DCT)的映像功能。心理聽覺模型206具有用以接收音頻位流的輸入端,并依據音頻位流產生頻率屏蔽。
量化編碼單元204耦接于映像單元202及心理聽覺模型206,并依據次頻帶取樣及頻率屏蔽產生第一組變長碼及第二組變長碼。量化編碼單元204耦接于映像單元202及心理聽覺模型206的輸出端,并輸出第一組量化取樣及第二組量化取樣。
如依據本發明的較佳實施例的音頻編碼器所示,幀比較單元220用以利用具有副標記及比例標記的輔助數據。亦即,編碼過程中,幀比較單元220藉由比較前一幀的副信息及比例因子而設立標記,使多余的副信息及比例因子不會封裝進編碼后音頻位流。因此,能減少幀的容量,同時也減少編碼后音頻位流的整體容量。
請參照圖3,其示出了依據本發明的較佳實施例的音頻解碼器的方塊圖。音頻解碼器包括位流解包單元(unpacking unit)300以及解碼單元320。位流解包單元300用以解壓縮幀,例如解壓縮由上述音頻編碼器所產生的編碼后音頻位流中位于第一幀之后的第二幀。各幀包括具有副標記及比例標記的輔助數據字段以及具有一組變長碼如霍夫曼碼的主要數據字段。此外,位流解包單元300包括同步標記解壓縮器(synchronization and headerextractor)302、數據解壓縮器306、副信息解壓縮器308以及比例因子解壓縮器310。同步標記解壓縮器302用以同步及尋找幀的標記信息。而CRC校驗器304視需要用以校驗幀中的錯誤。
解壓縮出第一幀后,依據第一幀解壓縮第二幀。數據解壓縮器306從第二幀的主要數據字段解壓縮出變長碼,并從第二幀的輔助數據字段解壓縮出副標記及比例標記。副信息解壓縮器308耦接于數據解壓縮器306,用以解壓縮出第二副信息,其中除非設立第二幀的副標記,即第二副信息等于第一幀的第一副信息,否則便從第二幀的副信息字段解壓縮出第二副信息。比例因子解壓縮器310耦接于副信息解壓縮器308,用以解壓縮出第二比例因子,其中除非設立第二幀的比例標記,即第二比例因子等于第一幀的第一比例因子,否則便從第二幀的主要數據字段解壓縮出第二比例因子。解碼單元320耦接于位流解包單元300。解碼單元320從位流解包單元300接收第二副信息、第二比例因子及變長碼而輸出一組解碼后音頻取樣。
解碼單元320包括重建單元(reconstruction unit)322以及反映像單元(inverse mapping unit)324。重建單元322用以解碼變長碼以及依據該組解碼后變長碼、第二副信息及第二比例因子而輸出一組次頻帶取樣。接著,反映像單元324耦接于重建單元322的輸出端,用以將次頻帶取樣從頻域反向映射回時域,并輸出解碼后音頻取樣。
通過使用位流解包單元300,以及比例標記與副標記的協助,由上述實施例所示,能以本實施例的音頻解碼器有效地解碼容量減少的編碼后音頻位流。
為較佳展示本發明的效果,請參照圖4,其示出了依據本發明的較佳實施例的編碼后音頻位流的容量縮小的比率圖。水平軸表示音頻位流中的比例因子及副信息的重復次數,垂直軸表示本實施例的編碼后音頻位流的容量縮小的比率,并于圖中標示為與一首歌的總長度相較的比率。本實施例中,是假定各幀中的副信息及比例因子的重復機率為獨立,且副信息及比例因子于雙通道格式(dual channel format)中的平均長度分別為32字節及54字節。同時,也假定編碼后音頻位流的總長度為3MB,并有128kbps的位速率及44.1kHz的擷取頻率。即可使用公式1導得各幀的容量等于418字節幀容量=(位速率/擷取頻率)*1152 (公式1)于是,已知音頻為3MB的長度,以及每一幀有418字節,可計算出音頻中的幀數量約為7200個,如圖4所示,即為水平軸的最大上限,或更精確地說,副信息或比例因子最多重復7200次。
如圖4所示,分別表示副信息及比例因子的重復情形的上方直線及下方直線顯示出當副信息及比例因子的重復次數增加時,音頻文件的容量同時也有效地減少。
于是,如上所述,本發明藉由上述方法而有效地減少編碼后音頻位流的容量。實際上,若是相較于MP3格式的音頻位流的長度,減少率可達13%。
綜上所述,雖然本發明已以一較佳實施例揭露如上,然其并非用以限定本發明。本發明所屬技術領域中任何具有通常知識者,在不脫離本發明的精神和字段內,當可作各種的更動與潤飾。因此,本發明的保護字段當視后附的申請專利字段所界定者為準。
權利要求
1.一種音頻編碼器,包括一編碼單元,用以編碼一音頻位流并產生一第一組量化取樣及一第二組量化取樣,該第一組量化取樣具有一第一組變長碼、一第一副信息以及一第一比例因子,該第二組量化取樣具有一第二組變長碼、一第二副信息以及一第二比例因子;一幀比較單元,當該第一副信息與該第二副信息相同時,該幀比較單元設立一副標記,當該第一比例因子與該第二比例因子相同時,該幀比較單元設立一比例標記;以及一位流封裝單元,用以依據該副標記及該比例標記產生一幀,該位流封裝單元包括一數據封裝器,用以將該第二組變長碼封裝進該幀的一主要數據字段,以及將該副標記及該比例標記封裝進該幀的一輔助數據字段;一副信息安裝器,當未設立該幀的該副標記時,該副信息安裝器用以將該第二副信息封裝進該幀的一副信息字段;以及一比例因子安裝器,當未設立該幀的該比例標記時,該比例因子安裝器用以將該第二比例因子封裝進該幀的該主要數據字段。
2.如權利要求1所述的音頻編碼器,其中,該輔助數據字段至少包括2位的該副標記及2位的該比例標記。
3.如權利要求1所述的音頻編碼器,其中,該編碼單元包括一映像單元,用以將該音頻位流從一時域轉換至一頻域并產生一組次頻帶取樣;一心理聽覺模型,用以依據該音頻位流產生一頻率屏蔽;以及一量化編碼單元,用以依據該組次頻帶取樣及該頻率屏蔽而產生該第一組變長碼及該第二組變長碼,并輸出該第一組量化取樣及該第二組量化取樣。
4如權利要求1所述的音頻編碼器,其中,該位流封裝單元更包括一同步標記安裝器,用以同步該幀;以及一循環冗余校驗器,視需要用以校驗該幀中的錯誤。
5.如權利要求1所述的音頻編碼器,其中,該第一組變長碼及該第二組變長碼為霍夫曼碼。
6.一種音頻解碼器,包括一位流解包單元,用以依據較早解壓縮出的一第一幀而從一編碼后音頻位流解壓縮出一第二幀,其中該第二幀包括具有一副標記及一比例標記的一輔助數據字段以及具有一組變長碼的一主要數據字段,該位流解包單元包括一數據解壓縮器,用以從該主要數據字段解壓縮出該組變長碼,以及從該輔助數據字段解壓縮出該副標記及該比例標記;一副信息解壓縮器,用以解壓縮出一第二副信息,其中除非設立該第二幀的該副標記,即該第二副信息等于該第一幀的一第一副信息,否則便從該第二幀的一副信息字段解壓縮出該第二副信息;及一比例因子解壓縮器,用以解壓縮出一第二比例因子,其中除非設立該第二幀的該比例標記,即該第二比例因子等于該第一幀的一第一比例因子,否則便從該第二幀的該主要數據字段解壓縮出該第二比例因子;以及一解碼單元,用以接收該第二副信息、該第二比例因子以及該組變長碼而輸出一組解碼后音頻取樣。
7.如權利要求6所述的音頻解碼器,其中,該解碼單元包括一重建單元,用以解碼該組變長碼,并依據該組解碼后變長碼、該第二副信息及該第二比例因子而輸出一組次頻帶取樣;以及一反映像單元,用以將該組次頻帶取樣從一頻域反向映射回一時域,并輸出該組解碼后音頻取樣。
8.如權利要求6所述的音頻解碼器,其中。該位流解包單元更包括一同步標記解壓縮器,用以同步及尋找該第一幀及該第二幀的一標記信息;以及一循環冗余校驗器,視需要用以校驗該第一幀及該第二幀中的錯誤。
9.如權利要求6所述的音頻解碼器,其中,該組變長碼為霍夫曼碼。
10.一種編碼一音頻位流的方法,包括將該音頻位流編碼并產生一第一組量化取樣及一第二組量化取樣,該第一組量化取樣具有一第一組變長碼、一第一副信息以及一第一比例因子,該第二組量化取樣具有一第二組變長碼、一第二副信息以及一第二比例因子;當該第一副信息與該第二副信息相同時,設立一副標記;當該第一比例因子與該第二比例因子相同時,設立一比例標記;以及依據該比例標記及該副標記產生一幀,包括將該第二組量化取樣的該第二組變長碼封裝進該幀的一主要數據字段,以及將該副標記及該比例標記封裝進該幀的一輔助數據字段;當未設立該幀的該副標記,則將該第二副信息封裝進該幀的一副信息字段;和當未設立該幀的該比例標記,則將該第二比例因子封裝進該幀的該主要數據字段。
11.如權利要求10所述的編碼該音頻位流的方法,其中,將該音頻位流編碼的步驟包括將該音頻位流從一時域轉換至一頻域以及產生一組次頻帶取樣;依據該音頻位流產生一頻率屏蔽;以及接收該組次頻帶取樣及該頻率屏蔽而輸出具有該第一副信息及該第一比例因子的該第一組量化取樣及具有該第二副信息及該第二比例因子的該第二組量化取樣。
12.如權利要求10所述的編碼該音頻位流的方法,其中,該編碼該音頻位流的方法更包括同步及尋找該幀的一標記信息;以及視需要以一循環冗余校驗器校驗該幀中的錯誤。
13.一種解碼一編碼后音頻位流的方法,包括自一第二幀的一主要數據字段解壓縮出一組變長碼,以及自該第二幀的一輔助數據字段解壓縮出一副標記及一比例標記;依據較早解壓縮出的一第一幀,解壓縮出一第二副信息,其中,除非設立該第二幀的該副標記,即該第二副信息等于該第一幀的一第一副信息,否則便從該第二幀的一副信息字段解壓縮出該第二副信息;解壓縮出一第二比例因子,其中,除非設立該第二幀的該比例標記,即該第二比例因子等于該第一幀的一第一比例因子,否則便從該第二幀的該主要數據字段解壓縮出該第二比例因子;以及接收該第二副信息、該第二比例因子以及該組變長碼,并輸出一組解碼后音頻取樣。
14.如權利要求13所述的解碼該編碼后音頻位流的方法,其中,該解碼該編碼后音頻位流的方法更包括同步及尋找該第一幀及該第二幀的一標記信息;以及視需要以一循環冗余校驗器校驗該第一幀及該第二幀中的錯誤。
15.如權利要求13所述的解碼該編碼后音頻位流的方法,其中,該組變長碼為霍夫曼碼。
全文摘要
一種編碼音頻位流(audio bitstream)的音頻編碼器。當第一副信息與第二副信息相同時,設立副標記(side flag),當第一比例因子與第二比例因子相同時,設立比例標記(scale flag)。數據封裝器將一組變長碼封裝進幀的主要數據字段,以及將副標記及比例標記封裝進幀的輔助數據字段。當未設立幀的副標記時,將第二副信息封裝進幀的副信息字段,當未設立幀的比例標記時,將第二比例因子封裝進幀的主要數據字段。此外,更提供一種音頻解碼器,用以解碼音頻編碼器產生的編碼后音頻位流。
文檔編號H03M7/30GK1822185SQ20061000617
公開日2006年8月23日 申請日期2006年1月25日 優先權日2005年8月12日
發明者曾文龍 申請人:威盛電子股份有限公司