close

http://www2.ee.ntu.edu.tw/~b9901105/mp3.htm
MP3歷史:

MP3所使用之演算法乃1987年由德國的整合研究發展機構Fraunhofer IIS與University of Erlangen合作研發出來。至今,Fraunhofer的編碼程式,依舊被視為MP3編碼的工業級標準。MP3其實是MPEG1 Audio Layer3之縮寫,即MP3原本是定義在MPEG(Moving Picture Expert Group)中的一項聲音壓縮標準。

下表為MPEG1中各Layer之比較:

MPEG
 Layer-1
 Layer-2
 Layer-3
 
取樣率
 384 kbps
 192~256 kbps
 <128 kbps
 
CD音質輸出時   壓縮比
 1 : 4
 1 : 6~8
 1 : 12
 

可以發現,隨著Layer(相當於版本之意)之更新,聲音之壓縮比愈來愈高,而品質卻未隨之下降。

 

MP3技術:

編碼流程:

 

(Generated By SmartDraw)

(1)    Polyphase Filter Bank(32 subbands):在MPEG Layer-1中,這項濾波器的作用是將聲音訊號分成頻寬大小相同的32個頻帶(Subband),但等寬的32個subband,對聲音的壓縮效果並不是非常好,且並不完全符合人體的聲學頻率系統,因此在Layer-3中進而採用Critical Band,即配合模擬人體之Psychoacoustic Model,將人耳較敏感的中低頻之subband變窄,較不敏感的高頻之subband變寬。此步驟資料會有極微小之失真。

(2)    MDCT(Modified Discrete Cosine Transform):MDCT的18個channel乘上來源的32個subband,共會有576個輸出點,且為非失真。此步驟主要將上步驟之資料再次細分,以利分析及量化轉換,並可減小上步驟造成之疊頻效應(Aliasing),改善資料之重建品質。

(3)    FFT(Fast Fourier Transform):即使用快速傅立葉轉換將訊號從Time Domain轉換到Frequency Domain。因為分析訊號時,頻譜上之數值可清楚地展現出訊號的特性,所以一般會將訊號轉換到頻率軸上分析。又FFT是等時間間隔取樣的離散時間傅立葉轉換,可以大幅減低計算上之複雜度。此步驟主要將波形資料轉換為若干種不同的頻率,其中主頻帶有最多之資料特性,愈後之頻率則因較不重要,可以被捨棄以增加壓縮比。

(4)    Psychoacoustics:即MP3之最主要技術,Perceptual Audio Coding(知覺性聲音編碼)。為人體聲學模擬的部分,主要原則即將人耳在聽覺上較不敏感或是聽不到的部分(高頻與極低頻)過濾刪除,使聲音選擇性的變差,以減少資料量。

(5)    Huffman Encoding:霍夫曼編碼,為無失真壓縮,統計各字元出現頻率以決定Huffman’s Tree,主要原則即將較常出現的字元,給予位元較少的編碼。在MP3的編碼應用中,乃先將MDCT輸出的576個點依頻率大小做排序,則高頻部分會被排在最後,且數值均為零或極接近零之數,故不需編碼。其餘數值較大的低頻部分,也可依其資料之分布特性,切割為數個區域再做Huffman encoding。主要目的在於將壓縮比盡量提昇。

解碼流程:

即將編碼過程反過來運作,主要流程為Huffman Decoding,Descaling,IMDCT(Inverse Modified Discrete Cosine Transform),Inverse Filter Bank。執行上比起壓縮時簡單許多,目前已經可以達到Real Time撥放之解碼速度。

下表為MP3之壓縮比與品質間關係:

聲音品質
 聲音頻寬
 取樣率
 模式
 壓縮比
 
電話
 2.5 kHz
 8 kbps
 單聲道
 1 : 96
 
無線電
 4.5 kHz
 16 kbps
 單聲道
 1 : 48
 
AM調幅廣播
 7.5 kHz
 32 kbps
 單聲道
 1 : 24
 
FM調頻廣播
 11 kHz
 56~64 kbps
 立體聲
 1 : 24~16
 
近似CD音質
 15 kHz
 96 kbps
 立體聲
 1 : 16
 
CD音質
 >15 kHz
 112~128 kbps
 立體聲
 1 : 12~14
 

 

MP3安全機制:

主要可分為硬體撥放協定上之限制(SDMI)與軟體本身之加密(電子浮水印),在此將對於軟體之檔案加浮水印(Watermarking)做討論。

首先,浮水印必須具有以下幾點性質:

(1)    Imperceptible:所加之浮水印應對聲音品質影響極小,且不易被人耳察覺。

(2)    Nonremovable:浮水印應不可被輕易地移除。

(3)    Decodable:經合法授權之使用者應該能輕易將浮水印解碼去除,而非再去取得原始檔案。

(4)    Periodic:所加入之浮水印必須有週期性,才能易於偵測、辨別。

(5)    Rebustness:即使經過再次編碼或壓縮,浮水印應該仍存在資料中。

而MP3之檔案格式,因為定義了許多檔頭(Header)及Side Information,故有許多空間可存放浮水印資料,且不會影響聲音品質,但由於可輕易地被了解MP3檔案格式的人移除,不符合上述之Nonremovable性質,故並不適用。所以一般來說是將浮水印資料,直接隨機地加在聲音資料中。所應用的原理是另一種人體聲學現象:Masking Effect(遮蔽效應),即兩個頻率相近的聲音,其中聲音較大者(Masker)會將聲音較小者(Maskee)蓋過去,造成人耳幾乎完全聽不到較小聲的聲音。故若將聲音來源先作快速傅立葉轉換,再將Sound Press Level(聲壓)對頻率作圖,則可得到Masking Threshold曲線,而在此曲線之下的聲音就幾乎聽不到了。利用此特性,則可以將適量的浮水印資料加入聲音中,形成控告非法侵權的證據,而不會被發現了。

 

MP3測試:

現在已經有許多的非失真壓縮法,可以提供資料的強力壓縮,一般而言,將資料壓縮至三分之一大小,是很普通的。但是對於聲音檔(*.wav),一般的非身真壓縮軟體,即是搭配上一些對於多媒體最佳化的演算法,還是無法將壓縮比提昇的太多,而且壓縮速度也相當緩慢。反觀現在的MP3編碼演算法,不僅速度相當快,且壓縮比非常高,也幾乎無法聽出與原本的差異,用在頻寬有限的網路傳輸上相當有利。

下表為以孫燕姿.愛情證書為原始檔加以各種壓縮測試:

未壓縮
 WinZip最大壓縮
 WinRAR 最大壓縮         (配合多媒體壓縮演算法)
 WinAce最大壓縮 (配合多媒體壓縮演算法)
 Blade’s MP3 Encoder (128 kbps)
 Mplifier (128 kbps)
 
100%
 93%
 69%
 69%
 9%
 9%
 

接著將聲音原始檔之波形與經編碼後之波形取出並做比較,可以發現兩者幾乎完全一樣,這就是人耳幾乎無法分辨出MP3音樂(經過壓縮編碼後再重建之波形)與一般音樂(原始波形)差別的原因。

 

 

資料來源:第三波雜誌、逢甲大學資訊工程學系專題報告

作者:B89901105 蔡雋永

arrow
arrow
    全站熱搜

    強尼 發表在 痞客邦 留言(0) 人氣()