簡介介紹 MP3是利用 MPEG Audio Layer 3 的技術,將音樂以1:10 甚至 1:12 的
壓縮率 ,壓縮成容量較小的file,換句話說,能夠在音質丟失很小的情況下把檔案壓縮到更小的程度。而且還非常好的保持了原來的音質。正是因為MP3體積小,音質高的特點使得
MP3格式 幾乎成為網上音樂的代名詞。每分鐘音樂的MP3格式只有1MB左右大小,這樣每首歌的大小只有3-4兆位元組。使用MP3播放器對MP3檔案進行實時的解壓縮(解碼),這樣,高品質的MP3音樂就播放出來了。
格式利弊 優點 MP3的優點有許多,主要有三點:一是由於大大壓縮了檔案的體積,所以相同的空間能存儲更多的信息;二是由於沒有機械元件,全部是電子元件,所以不存在防震問題,更加適合運動時欣賞音樂;三是可以隨心所欲編輯自己喜愛的歌。
缺點 有一利便有一弊,MP3也有一些缺點。MP3音頻壓縮技術是一種失真壓縮,因為人耳只能聽到一定頻段內的聲音,而其他更高或更低頻率的聲音對人耳是沒有用處的,所以MP3 技術就把這部分聲音去掉了,從而使得檔案體積大為縮小。雖然聽上去MP3音樂仍舊具有接近CD的音質,但畢竟要比CD稍遜一些。而且,由於技術比較落後,同樣碼率下音質會比AAC、OGG差一些。
音頻質量 因為MP3是一種有損格式,它提供了多種不同“位速”的選項—也就是用來表示每秒音頻所需的編碼數據位數。典型的速度介於每秒128和320kb之間。與此對照的是,CD上未經壓縮的音頻位速是1411.2 kbit/s(16 位/採樣點 × 44100 採樣點/秒 × 2 通道)。
使用較低位速編碼的MP3檔案通常回放質量較低。使用過低的位速,“壓縮噪聲(:en:compression artifact)”(原始錄音中沒有的聲音)將會在回放時出現。說明壓縮噪聲的一個好例子是壓縮歡呼的聲音:由於它的隨機性和急劇變化,所以編碼器的錯誤就會更明顯,並且聽起來就象回聲。
除了編碼檔案的位速之外,MP3檔案的質量也與編碼器的質量以及編碼信號的難度有關。使用優質編碼器編碼的普通信號,一些人認為128kbit/s的MP3以及44.1kHz的CD採樣的音質近似於CD音質,同時得到了大約11:1的壓縮率。在這個比率下正確編碼的MP3能夠獲得比調頻廣播和卡式磁帶更好的音質,這主要是那些模擬介質的頻寬限制、信噪比和其它一些限制。然而,聽力測試顯示經過簡單的練習測試聽眾能夠可靠地區分出128kbit/s MP3與原始CD的區別。在許多情況下他們認為MP3音質太低是不可接受的,然而其他一些聽眾或者換個環境(如在嘈雜的車中或者聚會上)他們又認為音質是可接受的。很顯然,MP3 編碼的瑕疵在低端計算機的揚聲器上比較不明顯,而在連線到計算機的高質量立體聲系統,尤其是使用高質量的headphone時則比較明顯。
Fraunhofer Gesellschaft(FhG)在他們的官方網站上公布了下面的MPEG-1 Layer 1.2和3的壓縮率和數據速率用於比較:
⊙ Layer 1: 384 kbit/s,壓縮率 4:1
⊙ Layer 2: 192...256 kbit/s,壓縮率 8:1...6:1
⊙ Layer 3: 112...128 kbit/s,壓縮率 12:1...10:1
不同層面之間的差別是因為它們使用了不同的心理聲學模型導致的;Layer 1的算法相當簡單,所以透明編碼就需要更高的位速。然而,由於不同的編碼器使用不同的模型,很難進行這樣的完全比較。
許多人認為所引用的速率出於對Layer 2和Layer 3記錄的偏愛而出現了嚴重扭曲。他們爭辯說實際的速率如下所列:
* Layer 1: 384 kbit/s 優秀。
* Layer 2: 256...384 kbit/s 優秀,224...256 kbit/s 很好,192...224 kbit/s 好。
* Layer 3: 224...320 kbit/s 優秀,192...224 kbit/s 很好,128...192 kbit/s 好。
當比較壓縮機制時,很重要的是要使用同等音質的編碼器。將新編碼器與基於過時技術甚至是帶有缺陷的舊編碼器比較可能會產生對於舊格式不利的結果。由於有損編碼會丟失信息這樣一個現實,MP3算法通過建立人類聽覺總體特徵的模型儘量保證丟棄的部分不被人耳識別出來(例如,由於noise masking),不同的編碼器能夠在不同程度上實現這一點。
可能編碼器 * LAME Mike Cheng在1998年早些時候首次開發的LAME。 與其它相比,它是一個完全遵循LGPL的MP3編碼器,它有良好的速度和音質,甚至對MP3技術的後繼版本形成了挑戰,是編碼器的標準。
LAME編碼器 有許多的早期編碼器現在已經不再廣泛使用:
* Fraunhofer Gesellschaft:有些編碼器不錯,有些有缺陷。
* Xing
* BladeEnc
* ACM Producer Pro.
好的編碼器能夠在128到160kbit/s下達到可接受的
音質 ,在160到192kbit/s下達到接近透明的音質。所以不在特定編碼器或者最好的編碼器話題內說128kbit/s或者192kbit/s下的音質是容易引起誤解的。一個好的編碼器在 128kbit/s下生成的MP3有可能比一個不好的編碼器在192kbit/s下生成的MP3音質更好。另外,即使是同樣的編碼器同樣的檔案大小,一個不變位速的MP3可能比一個變位速的MP3音質要差很多。
需要注意的一個重要問題是音頻信號的質量是一個主觀判斷。Placebo effect is rampant,with many users claiming to require a certain quality level for transparency。許多用戶在A/B測試中都沒有通過,他們無法在更低的位速下區分檔案。一個特定的位速對於有些用戶來說是足夠的,對於另外一些用戶來說是不夠的。每個人的聲音感知可能有所不同,所以一個能夠滿足所有人的特定心理聲學模型並不明顯存在。僅僅改變試聽環境,如音頻播放系統或者環境可能就會顯現出有損壓縮所產生的音質降低。上面給出的數字只是大多數人的一個大致有效參考,但是在有損壓縮領域真正有效的壓縮過程質量測試手段就是試聽音頻結果。
如果你的目標是實現沒有質量損失的音頻檔案或者用在演播室中的音頻檔案,就應該使用無損壓縮算法,目前能夠將16位PCM音頻數據壓縮到38%並且聲音沒有任何損失,這樣的壓縮工具有Lossless Audio LA、Apple Lossless、TTA、FLAC、Windows Media Audio 9 Lossless (wma) 和Monkey’s Audio 等等。對於需要進行編輯、混合處理的音頻檔案要儘量使用無損格式,否則有損壓縮產生的誤差可能在處理後無法預測,多次編碼產生的損失將會混雜在一起,在處理之後進行編碼這些損失將會變得更加明顯。無損壓縮在降低壓縮率的代價下能夠達到最好的結果。
一些簡單的編輯操作,如切掉音頻的部分片段,可以直接在MP3數據上操作而不需要重新編碼。對於這些操作來說,只要使用合適的軟體(mp3DirectCut和MP3Gain),上面提到的所關心的問題可以不必考慮。
相關位速 位速對於MP3檔案來說是可變的。總的原則是位速越高則聲音檔案中包含的原始聲音信息越多,這樣回放時聲音質量也越高。在MP3編碼的早期,整個檔案使用一個固定的位速。
MPEG-1 Layer 3允許使用的位速是32.40、48.56.64.80、96.112.128.160、192.224.256和320 kbit/s,允許的採樣頻率是32.44.1和48kHz。44.1kHz是最為經常使用的速度(與CD的採樣速率相同),128kbit/s是事實上“好品質”的標準,儘管192kbit/s在對等檔案共享網路上越來越受到歡迎。MPEG-2和[非正式的]MPEG-2.5包括其它一些位速:6.12.24.32.40、48.56.64.80、96.112.128.144.160kbit/s。
可變位速(VBR)也是可能的。MP3檔案的中的音頻切分成有自己不同位速的幀,這樣在檔案編碼的時候就可以動態地改變位速。儘管在最初的實現中並沒有這項功能,VBR現在已經得到了廣泛的套用。這項技術使得在聲音變化大的部分使用較大的位速而在聲音變化小的部分使用較小的位速成為可能。這個方法類似於聲音控制的磁帶錄音機不記錄靜止部分節省磁帶消耗。一些編碼器在很大程度上依賴於這項技術。
高達640kbit/s的非標準位速可以使用LAME編碼器和自由格式來實現,但是幾乎沒有MP3播放器能夠播放這些檔案。
設計局限 MP3格式有一些不能僅僅通過使用更好的編碼器繞過的內在限制。一些新的壓縮格式如Vorbis和AAC不再有這些限制。
按照技術術語,MP3有如下一些限制:
* 位速最大是320 kbit/s
* 時間解析度相對於變化迅速的信號來說太低
* 對於超過15.5/15.8 kHz的頻率沒有scale factor band
* Joint stereo 是基於幀與幀完成的
* 沒有定義編碼器/
解碼器 的整體時延,這就意味著gapless playback缺少一個正式的規定
然而,即使有這些限制,一個好好的調整MP3編碼器能夠非常有競爭力地完成編碼任務。
音頻編碼 MPEG-1標準中沒有MP3編碼器的一個精確規範,然而與此相反,解碼算法和檔案格式卻進行了細緻的定義。人們構想編碼的實現是設計自己的適合去除原始音頻中部分信息的算法(或者是它在頻域中的修正離散餘弦(MDCT)表示)。在編碼過程中,576個時域樣本被轉換成576個頻域樣本,如果是瞬變信號就使用192而不是576個採樣點,這是限制量化噪聲隨著隨瞬變信號短暫擴散。
這是聽覺心理學的研究領域:人類主觀聲音感知。
這樣帶來的結果就是出現了許多不同的MP3編碼器,每種生成的聲音質量都不相同。有許多它們的比較結果,這樣一個潛在用戶很容易選擇合適的編碼器。需要記住的是高位速編碼表現優秀的編碼器(如LAME這個在高位速廣泛使用的編碼器)未必在低位速的表現也同樣好。
音頻解碼 另一方面,解碼在標準中進行了細緻的定義。
多數解碼器是bitstream compliant,也就是說MP3檔案解碼出來的非壓縮輸出信號將與標準文檔中數學定義的輸出信號一模一樣(在規定的近似誤差範圍內)。
MP3檔案有一個標準的格式,這個格式就是包括384.576.或者1152個採樣點(隨MPEG的版本和層不同而不同)的幀,並且所有的幀都有關聯的頭信息(32位)和輔助信息(9.17或者32位元組,隨著MPEG版本和立體聲或者單通道的不同而不同)。頭和輔助信息能夠幫助解碼器正確地解碼相關的霍夫曼編碼數據。所以,大多數的解碼器比較幾乎都是完全基於它們的計算效率(例如,它們在解碼過程中所需要的記憶體或者CPU時間)。
ID3和其它標籤 “標籤”是MP3(或其它格式)中保存的包含如標題、藝術家、唱片、音軌號或者其它關於MP3檔案信息等添加到檔案的數據。最為流行的標準標籤格式目前是ID3 ID3v1和ID3v2標籤,最近的是APEv2標籤。
APEv2最初是為MPC 檔案格式開發的(參見 APEv2規範)。APEv2可以與ID3標籤在同一個檔案中共存,但是它也可以單獨使用。
音量歸一化 音量歸一化(normalization),由於CD和其它各種各樣的音源都是在不同的音量下錄製的,在標籤中保存檔案的音量信息將是有用的,這樣的話回放時音量能夠進行動態調節。
人們已經提出了一些對MP3檔案增益進行編碼的標準。它們的設計思想是對音頻檔案的音量(不是“峰值”音量)進行歸一化,這樣以保證在不同的連續音軌切換時音量不會有變化。
最流行最常用的保存回放增益的解決方法是被簡單地稱作“Replay Gain”的方法。音軌的音量平均值和修剪信息都存在元數據標籤中。
可選技術 有許多其它的有損音頻編解碼存在,其中包括:
* MPEG-1/2 Audio Layer 2 (MP2),MP3的前輩
* MPEG-4 AAC, MP3的繼承者,Apple的iTunes Music Store和iPod使用
* Foundation的Ogg Vorbis,自由軟體和沒有專利的編解碼器
* MPC,也稱作Musepack(以前叫MP+),由MP2派生出來
* Thomson Multimedia的MP3和SBR的組合mp3PRO
*
AC-3 ,Dolby Digital和DVD中使用
* ATRAC,Sony的Minidisc使用
* Windows Media Audio(WMA)來自於微軟公司
* QDesign, 用於低速QuickTime
* AMR-WB+ 針對蜂窩電話和其它有限頻寬使用進行了最佳化的增強自適應多速寬頻編解碼器;(Enhanced Adaptive Multi Rate WideBand codec)
* RealNetworks的RealAudio,經常用於網站的流媒體
* Speex,基於CELP的專門為語音和VoIP設計的自由軟體和無專利編解碼器。
mp3PRO、MP3.AAC、和MP2都是同一個技術家族中的成員,並且都是基於大致類似的心裡聲學模型。Fraunhofer Gesellschaft擁有許多涵蓋這些編解碼器所用技術的基本專利,Dolby Labs、索尼公司、Thomson Consumer Electronics和AT&T擁有其它一些關鍵專利。
在網際網路上有一些其它無損音頻壓縮方法。儘管它們與MP3不同,它們是其它壓縮機制的優秀範例,它們包括:
** ape 網路上最紅的無損音樂
* FLAC 表示‘自由無損音頻編解碼(Free Lossless Audio Codec)’
* Monkey’s Audio
* SHN,也稱為Shorten
* TTA
* Wavpack
* Apple Lossless