MP3技術縱覽(中文修訂版 1.3) |
MP3就是*MPEG第1號標準第三資訊層(MPEG 1-Layer 3)的簡稱。
MP3是一個聲音壓縮的新格式﹐這種格式是最新的研究成果﹐目的是以最少的資料去保存最傳真的聲音。 近年來MP3大行其道﹐因為它不但是一個國際認可的標準(ISOStandard)﹐而且還有很完整的編碼(Encode)和解碼(Decode)資料和實例﹐又有硬件廠商支援﹐所以發展得十分迅速。 MP3的內裏技術搏大精深﹐但其實原理不算複雜﹐要理解其運作也不是很難﹐只不過在互聯網上一找之下﹐竟然沒有像樣的中文解釋﹐名詞沒有﹑原理也沒有﹐盜版的MP3軟件及歌曲下載倒是很多!難得找到的資料﹐也是以德國語和英語為主﹐用語亦相當艱深(太多專有名詞)﹐對於一些外語和電腦名詞認識不深的朋友來說閱讀起來很是不便﹐因小弟也閒時在MP3的討論區向外國的板友討論和請教﹐略有心得﹐於是便起了念頭以中文來解釋及翻譯一些MP3技術的文章。 本篇資料大部份取自MP3'Tech及﹐亦有些從http://www.r3mix.net的留言版 (一個數碼音響技術的討論區,已被https://www.hydrogenaudio.org取代),以及 Fraunhofer IIS學院摘下﹐謹此致謝。 |
甚麼是知覺編碼(Perceptual coding)?
所謂的知覺編碼就是以人類耳朵可感覺到的聲音來作為編碼的基礎﹐在MP3內指的就是聽覺訊號。 以下是知覺編碼有關的方法: 1)最小可聆聽範圍(Minimum audition threshold) 人類的聆聽範圍其實並不是線性的﹐其實有不少聲音是聽不到的﹐例如從2Khz到5Khz﹐耳朵聽不到的聲音便可剔除。 2)掩蓋效果(Masking effect) 掩蓋效果是針對人類聽覺的特色『聲音掩蓋』。 當有爆炸的聲音時﹐我們只會聽見爆炸而聽不見其它的聲音﹐因為爆炸聲音的能量太大﹐其它聲音被蓋過了的緣故。例如在演奏交響樂時﹐一些聲音大的樂器會把其它遮蓋了﹐在編碼時只要使用一種『心理聲學(Phycoaucostic Model)』的方法令電腦可以模擬人類耳朵﹐把能量最大的聲音編碼﹐而其它被蓋過了的聲音除掉就可以省去去多儲存空間。 其它以電腦技術節省儲存空間的方法還有: 1)小暫存區(Short reservoir of bytes) 小暫存區的目的是-盡可能在有限的檔案大小﹐保存更多的資料。原理就是﹐當進行MP3壓縮編碼時﹐在指定的bitrate內﹐某些聲音由於簡單﹐聲音在編碼後佔的byte數目較少﹐多出來的空間就可以成為一個暫存區﹐到了遇到一些複雜的聲音要編碼﹐編碼多出來的資料就可以放在暫存區內﹐這樣做的好處是盡量保留數碼化後的音樂資料﹐編碼愈完整則重播時愈傳真。 2)霍夫曼編碼(Huffman coding) 霍夫曼編碼能有效地將MP3內重複出現的數碼音樂進行再壓縮﹐這樣能省下不少硬盤儲存空間﹐同時由於霍夫曼編碼十分有效率﹐不會對讀取MP3及解壓做成延遲及對CPU帶來額外工作負擔。 3)共用式立體聲(Joint stereo) 將左右聲道的資料分析﹐進行**MS-Stereo及Intensity Stereo編碼。 MS-Stereo內容大約是把左右聲道的資料比較﹐將中央聲道[左+右]和兩側聲道[左-右]分開編碼﹐好處是兩側編碼後的byte會較少﹐在播放時只要把所有聲道資料還原就可以。 Intensity Stereo是針對一些特別高或低的聲音頻率作編碼。例子是超低音揚聲器﹐通常都只用一個而不是兩個﹐這是因為人類的耳朵對於某程度上的低音﹐再也分不到音源在左或右。所以把那種頻率的聲音﹐使用單聲道(Monophonic)去編碼﹐再加上很少的左右聲道資料便成。 注: *Motion Picture Experts Group-移動圖像專家小組 **Mid-Side Stereo簡稱MS-Stereo﹐詳細資料可參考PAiA Electronics Inc公司的網頁: https://paia.com/msmicwrk/ |