《分享》MP3/MP3Pro 音質分析測試

討論MP3、WAV、MIDI、WMA甚至其他數位音訊的播放、製作、轉換等。

版主: DearHoney

adelies
初學者
文章: 21
註冊時間: 2002-04-09 08:00

文章 adelies »

對不起因為這邊的 Code 比較少,但小弟又用了好多 Code,所以如果想看彩色版請大家到「1bits 討論區」,對不起先。

一、前言
MP3 已經成為音樂的一種標準了,但大家在壓或聽 MP3 時,是不是有時候可以一聽就聽出來是 MP3,但有時候您幾乎無法分辨在聽 MP3 還是原版 CD 呢?沒錯,這就是壓縮時 Bit Rate 的魔力!Bit Rate 越高,就越接近原因重現。還有,您覺得最近流行的 MP3Pro 真的好用嗎?在這篇短文裡也將提供給您一個建議。

(被 Kimo 氣死,圖形改放 Tripod,如果顯示有問題請 Refresh,因論壇限制無法把所有圖貼上,敬請體諒!請點選看圖。)


二、測試條件
  1. 測試一:White Noise 波形。
    (1)波形檔:WAVE 格式檔案 (173K)
    (2)頻譜圖:請點選看圖
  2. 測試二:自己定一個左右聲道正好分佈在 2K/4K/6K/8K/10K 與 12K/14K/16K/18K/20K 的頻譜波形。
    (1)波形檔:WAVE 格式檔案 (188K)
    (2)頻譜圖:請點選看圖
三、壓縮方式
  1. MP3PRo:96 Kbps,445100Hz,Stereo (14.7:1),使用 High Qualiy Codec。
  2. MP3:用 LAME 3.92 版壓縮,僅使用 -b xxx -m s 參數 (xxx 代表 bit rate),分別以 96/128/192/256/320 Kbps 壓縮。
四、測試一
  1. 原始聲音檔 (White Noise) 頻譜圖:請點選看圖
  2. MP3Pro (96 Kbps,445100Hz,Stereo (14.7:1),High Qualiy Codec)
    (1)波形檔:MP3Pro 格式檔案
    (2)頻譜圖:請點選看圖
  3. MP3 (96 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖 (X 軸距離較寬)
  4. MP3 (128 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
  5. MP3 (192 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
  6. MP3 (256 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
  7. MP3 (320 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
五、測試一觀察結果
  1. 由不同 bit rate 的 MP3 的頻譜圖可明顯看出 320K 最能保存所有的頻率,96K 在測試中表現最差,這點當然不覺得意外,因為低的 bit rate 會把高頻通通濾掉!
  2. MP3 Pro 的頻譜好像和原始檔案一樣,都是不滿整個可聽範圍,但實際聆聽壓出來的 MP3 檔案,會覺得變低沈一點點。但是否 MP3Pro 這麼強呢?我們再來看看下一個測試。
六、測試二
  1. 原始聲音檔 (自己做具有奇怪頻譜的聲音) 頻譜圖:請點選看圖
  2. MP3Pro (96 Kbps,445100Hz,Stereo (14.7:1),High Qualiy Codec)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
  3. MP3 (96 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖 (X 軸距離較寬)
  4. MP3 (128 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
  5. MP3 (192 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
  6. MP3 (256 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
  7. MP3 (320 Kbpsz,Stereo,LAME 3.92)
    (1)波形檔:MP3 格式檔案
    (2)頻譜圖:請點選看圖
七、測試二觀察結果
  1. 由不同 bit rate 的 MP3 的頻譜圖可明顯看出 320K 最能保存所有的頻率 (左右各五個頻譜高峰皆能完整回復),96K 在測試中表現最差 (只有低頻 (<10K) 的頻譜高峰能完整回復),還是證明低的 bit rate 會把高頻訊號通通濾掉!
  2. 這次 MP3 Pro 就掛點了!小於 10K 的頻譜高峰能回復,但大於 10K 的部分就顯得心有餘力不足了。對高頻訊號的處理能力還是 MP3Pro 目前最大的缺陷!但這也不能怪他,因為他只用了 96Kbps,和同 bit rate 的 MP3 (整個 10K 以上通通掛彩) 比較已經好多了。
八、結論
  1. 再來看兩個圖形,是小弟把所有波形的頻譜都放在一起比,由左至右分別是:原始 WAVE 檔、MP3Pro、96K、128K、192K、256K 與 320K。
    (1)White Noise 頻率響應比較圖:[url=http://]請按我[/url] (因圖太大所以沒直接貼)
    (2)測試二頻率響應比較圖:[url=http://]請按我[/url] (因圖太大所以沒直接貼)
    大家應該可以清楚看出來低的 Bit Rate 真的是高頻殺手 (有頻率的地方就會有顏色,沒顏色救代表在 MP3 壓縮時犧牲掉了。) 附帶說明,各個 Sample 的橫軸代表時間、縱軸代表頻率 (Hz)。
  2. MP3Pro 不適合拿來保存音樂用!但適合網路作為 Sample、背景音樂等等使用。可惜 MP3Pro 沒有超過 96K 的 Bit Rate 模式可供選擇。 :(
  3. MP3 比較:
    (1)要獲得比較好的音質應該至少採用 192K,128K 的高頻濾波效應太嚴重! :(
    (2)192K 大致高頻可撐到近 19K (由 White Noise 測試看的比較出來),對一般人聆聽大致夠了。 ;)
    (3)如果不介意空間存放問題,最好還是採用 256K 來壓縮 (高頻超過 20K,大概是人耳的極限)! :D
    (4)至於 320K 只針對愛樂成癡、完美主義的人了!(高頻超過 21K,已突破人耳極限了,所以聽起來沒啥差別) 國外有做過測試,沒有人能真正分辨 256K 與 320K 的 MP3 (網站在此)。
  4. 針對 ComputerDIY 2002/4 雜誌 (台灣的雜誌) 對於 MP3 一文中的「128K 與 256K (還是 192K) 兩者並無太大差別」,由以上實驗結果,各位應該知道原作者可能犯了一個嚴重的錯誤,可能是採用高頻不足的來源聲音檔,才讓他有這樣的誤會 ,這點就順便在這裡說明之。
  5. 小弟對 MP3 研究其實也不深,只是把知道的寫下來而已。以上如有謬誤懇請告知,大家一起討論,謝謝!(by Adelies@南極大陸) (轉載請著名出處)
九、相關網路連結
  1. LAME 官方網頁
  2. RazorLame 官方網頁:
  3. LAME 檔案下載 (Dmitry Kutsanov aka mitiok 版)
  4. DearHoney 數位工作室
  5. LukeLo「目前所知CD轉MP3的最高品質搭配」
  6. 網友 Tiberius 的 LAME 使用/參數說明(LAME 中文參數解釋)
  7. R3MIX.net,進入後選左邊的「Quality」和「Analysis」(LAME 參數分析與不同軟體使用之 Codec 音質比較,英)
  8. YaBB 論壇 (專門討論 MP3 等壓縮的論壇,英)
  9. 一篇國外人是做的 MP3Pro 頻率響應比較 (只有圖)
  10. 本篇使用之 WAVE、MP3 試聽
  11. 本篇使用之頻譜圖表一本篇使用之頻譜圖表二
<!-- Edit Notice Start -->

<font size=-1>[ 這篇文章在 2002-04-24 01:41 被 adelies 編輯過 ]</font><!-- Edit Notice End -->
adelies
初學者
文章: 21
註冊時間: 2002-04-09 08:00

文章 adelies »

剛又逛了一下,這裡已經有類似的文章,新人試貼,莫見笑... :)
<!-- Edit Notice Start -->

<font size=-1>[ 這篇文章在 2002-04-24 16:38 被 adelies 編輯過 ]</font><!-- Edit Notice End -->
TMNEXT
神人
文章: 271
註冊時間: 2002-01-02 08:00
來自: 人畜同樂促進會

文章 TMNEXT »

辛苦了 :tup:
[b07] [b07] [b07]

原來 mp3PRO 對這種高頻峰值的訊號會破功啊,\r
難怪他對三角鐵、Bell 這些樂器都壓不好。
Jeter945
大師
文章: 142
註冊時間: 2001-06-20 08:00
來自: 新竹

文章 Jeter945 »

謝謝你的心得分享阿... :roll:
很久沒看到這麼用心的文章了.. :D
頭像
Barlos
神人
文章: 1838
註冊時間: 2001-01-04 08:00
聯繫:

文章 Barlos »

[b07] * 999 :)
頭像
kouyoumin
神人
文章: 1612
註冊時間: 2001-01-05 08:00
來自: 中正紀念堂
聯繫:

文章 kouyoumin »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>(4)至於 320K 只針對愛樂成癡、完美主義的人了!(高頻超過 21K,已突破人耳極限了,所以聽起來沒啥差別) 國外有做過測試,沒有人能真正分辨 256K 與 320K 的 MP3 (網站在此)。
</FONT><!-- BBCode Quote End -->
哈哈,這讓我想到某些Encoder的insane參數,是否對使用者帶有"字面上"的警告 :P
(壓這種東西,你是不是忘記吃藥啦.... [XD] )
光光
初學者
文章: 21
註冊時間: 2001-07-10 08:00
來自: 新竹

文章 光光 »

使用white noise可能會有盲點!
我以前也做過類似測試其實256 bps CBR是最佳的
而我測試的sample是用一個實際CD上的音軌與曲子
這樣才能表現出CBR在某些具有較高亂度(high entropy)的聲音時捨棄高頻的狀況!
簡單說 就是有些frame段聲音壓後空間有餘 有些段聲音需捨棄高頻後才能壓進該frame中
雖然lame的CBR可以利用前面一個frame剩餘的空間(若前一個frame仍有空間的話)但是要模擬出壓縮率的變化量(variance)最好還是用實際的音樂
如大編製的交響樂當作sample比較好

white noise隱含emtropy是一個固定值
所以壓縮率的變化量可能很小
造成不是總是捨棄高頻就是總是仍有剩餘空間

無論如何 上面的結果仍是對的(誤差已經很小了)
只是條件設定較理想化而已


<!-- Edit Notice Start -->

<font size=-1>[ 這篇文章在 2002-04-26 12:59 被 光光 編輯過 ]</font><!-- Edit Notice End -->
adelies
初學者
文章: 21
註冊時間: 2002-04-09 08:00

文章 adelies »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>使用white noise可能會有盲點!
我以前也做過類似測試其實256 bps CBR是最佳的
而我測試的sample是用一個實際CD上的音軌與曲子
這樣才能表現出CBR在某些具有較高亂度(high entropy)的聲音時捨棄高頻的狀況!
簡單說 就是有些frame段聲音壓後空間有餘 有些段聲音需捨棄高頻後才能壓進該frame中
雖然lame的CBR可以利用前面一個frame剩餘的空間(若前一個frame仍有空間的話)但是要模擬出壓縮率的變化量(variance)最好還是用實際的音樂
如大編製的交響樂當作sample比較好</FONT><!-- BBCode Quote End -->

感謝大大指出不足的部分!因為偷懶就沒有用真實的聲音... :)

可是我有用過讓 LAME 在 256K 跑 VBR,卻發現他大部分還是用 256K,幾乎沒有用到超過 256K,還是我的參數有問題?!

小弟作這測試只是要證明「ComputerDIT 2002/4」根本在亂寫!所以貼了一些地方希望大家不要被誤導。至於他寫啥,大家可以翻翻 (四月快過了,快下架了),大意說用 128 和 256 (還是 192 我忘了) 壓起來差不多,所以用 128 就好了... 真是一個令人訝異又覺得無奈的結論... >_<"
Tiberius
神人
文章: 931
註冊時間: 2001-01-03 08:00

文章 Tiberius »

我最近不相信頻響圖了 ... (雖然以前有一陣子我貼了非常多 :-.-: )
做了頻響圖,也祇能當作參考而已,一切還是要靠聆聽測試才能論斷 ...

"好的心理音響模型會砍掉該砍的東西" ... 別忘記心理音響模型最初的設計理念啊!

128K 要壓全頻然後讓 CoolEdit 顯示得很漂亮是辦得到,但是一聽就知道罩門在哪裡 ... :-.-:
...
光光
初學者
文章: 21
註冊時間: 2001-07-10 08:00
來自: 新竹

文章 光光 »

<!-- BBCode Quote Start --><FONT COLOR=GREEN>
128K 要壓全頻然後讓 CoolEdit 顯示得很漂亮是辦得到,但是一聽就知道罩門在哪裡 ... :-.-:
</FONT><!-- BBCode Quote End -->

如何辦到? 可否教一下 謝謝!
回覆文章