»
MP3的歷史及應用 |
|
其實MP3並不是一個新的技術,早在1987年的德國,Fraunho
fer IIS(或稱為IIS)與Erlangen大學的Dieter Seitzer教授一起參與一項數位語音廣播計畫中開始研究的,研究計畫名為EU147。
當初研究的計畫的目的是希望特定的技術讓語音廣播的內容可以傳送,而且聲音的內容不會有大幅度的衰減.IIS最後研究出可以透過音覺性編碼技術(Perceptual
Coding Techniques)的特演算法來達到這樣的目的,而這個演算法就是現在大家所熟知國際標準組織(ISO:InternationalOrganization
for Standardization)當中的-MPEGAudio Layer-3(IS
13818-3)聲音壓縮技術標準所以MP3技術的演算法開發完成是在十幾年前;
不過當初開發的時候,由於電腦環境並不是那麼成熟,而且電腦速度並不夠快因此當初只有在特定環境中才能夠使用,但是沒想到現在的電腦速度進步如此快,使得MP3這項因為速而受限的技術可以開始實現化,所以現在才會有如多產品。
MP3的功用就像是一個壓縮工具,可以各種聲音的檔案壓縮成十分之一以上.而利用MP3技術所壓縮出來的檔案副檔名就叫做“.mp3”,再加上在網際網路上面傳輸音樂最酷的檔案格式就是.mp3,因此您會發現有些地方會把MP3這三個字都大寫,以表示是使用MP3的技術,而有些地方會把mp3這三個字都小寫,表示可以壓縮/播放副檔名為.mp3的檔案.也就是因為如此,到後來MP3這三個字要大寫還是小寫就變成都可以通融了。 |
»
MP3簡介 |
|
在電腦的數位世界中,其聲音格式都是以數位編碼的方式儲存,一般可分為聲波資料和合成音效也就是所謂的音樂數位介面(MIDI)兩種,聲波資料是經由類比數位轉換器來取樣轉換成數位格式在儲存在電腦儲存媒體之中,而合成音效則是由電腦內建的音源所組合而成.。
聲波資料的轉換成數位格式儲存在電腦中的大因取樣頻率(一般以Hz為單位)和取樣的解析度(一般以bits為單位)有所不同,取樣頻率越高所需要的儲存空間也越大,同樣的取樣的解析度越高所需要的儲存空間也越大。在電腦中最常見的聲波格式資料就屬於Wave資料,其一般以*.wav檔儲存,但是wave檔格式所需要的儲存空間以一分鐘的聲波資料就將近需要佔用10幾MB的儲存空間大小,相當消耗儲存空間,為了解決此問題故有MP3的產生。 |
»
Winamp撥放程式介紹 |
|
|
|
在瞭解基本的MP3常識後,現在就來看看如何來好好欣賞MP3音樂,當然囉!工欲善其事,必先利其器,以下就為您介紹如何使用常用的播放軟體Winamp
目前最常見的MP3播放軟體為Winamp如圖(一)所示,其基本的播放功能請參考圖(一)的說明 |
|
|
|
參考圖(一
). |
|
|
|
切換撥播放顯示為如圖(三)的頻率域響應圖或
如圖(四)時域脈波響應圖,只要在面版上面按滑鼠左鍵即可. |
|
|
|
|
|
|
|
調整音質等化器:由於各種音樂的特性和個人對聲音的喜好不同,經由等化器可以調整你所需要的高低音量的大小,如圖(五)所示 |
|
|
|
|
|
|
|
在按了如圖(一)所是的歌取列表選單按鍵即會開啟如圖(六)的畫面,您可以將經由排序,刪除,增添,和改變播放順序與將所選的歌曲存成歌曲列表檔等等的處理功能;
各功能說明如圖(七)到圖(九)所示. |
|
|
|
|
|
|
|
|
|
»
如何製作MP3音樂 |
|
|
|
一般製作音樂mp3的流程如下: |
|
|
»
如何將WAV轉換成MP3 |
|
要將WAV檔轉換成MP3檔可以使用下列軟體工具:
MPlifier
/ MP3 Compressor |
|
|
|
MP3 Compressor 報告 (1) - 基本比較: |
|
引起大家好奇的 MP3 Compressor(以下簡稱
MC),無非是因為它壓縮 MP3 的速度,比起傳統的 l3enc 要快上三倍,又是
Win95/WinNT 的程式碼,自然得到大家的喜愛;然而,這隻新的 MP3 encoder,和之前的
L3ENC 有什麼不同呢?壓縮出來的 MP3 檔,又有什麼不同呢?
主機板:ASUS T2P4 V3.1
CPU :Intel Pentium 166 (83Mhz * 2)
歌曲長度:04:45(優客李林的"認錯")
檔案長度:50,363,420 bytes
|
|
L3ENC |
MC Quick |
MC noQuick |
檔案長度 |
4,568,711 |
4,557,264 |
4,557,264 |
壓縮時間 |
17:08 |
06:42 |
18:15 |
MP3 還原成 wav 的檔案長度 |
50,365,440 |
50,356,224 |
50,356,224 |
MP3 frame 數 |
10930 |
10928 |
10928 |
MP3 時間 |
04:45 |
04:44 |
04:45 |
|
|
首先我們先來看看大家最關心的壓縮時間。的確,MC
的時間約為 l3enc 的 1/3,不過事實上不到 1/3,也就是 MC 的壓縮速度是比
L3ENC 快許多,但是不到三倍。
在檔案長度方面,MC 的兩種模式所產生出來的 MP3 檔案,都比 l3ENC
要來得小。比較 MP3 frame 數也是相同的情況,MC 少了兩個 frame。
將壓縮好的 MP3 用 L3DEC 還原成 wav 檔後,可以發現 L3ENC
做出來的 MP3 經過還原,反而比原本的 wav 檔還大,而 MC 兩個模式作出來的則都比原本的小,這點和
MP3 frame 數可能有關係。
拿出 CoolEdit 96 來分析這些 wav 檔,也的確顯示 sample
的數目和檔案大小呈現正相關,而且沒有一個壓縮模式做出來的 MP3 檔還原後,可以和原本的
wav 檔一樣大。這到底是壓縮程式的問題,還是 L3DEC 還原的問題,就不得而知了。
MC 用的演算法是 IIS(L3ENC 的發源地) 所公佈的最後一個 MPEG
Audio Layer 3 版本,所以聲音的品質不但和之前的 L3ENC 一樣好,甚至會更好。
|
|
|
|
|
|
MP3 Compressor 報告 (2) - 進階報告: |
|
接著我們來談談 MP3 Compressor 的幾個重點,基本的就不討論了,大家摸摸就懂。
MC 壓縮 MP3 時,和 L3ENC 不同的最大地方是,他們壓縮規格的指定方法。L3ENC用的是
bit rate,MC 用的是赫茲(Hz)。當你用 L3ENC 指定較低的 bit
rate 時,L3ENC 於壓縮時也會顯示較低的 Hz 值。
L3ENC 的內定壓縮率是 112000bps,而 MC 的內定壓縮率則是 44100Hz(128000bps)。事實上,人耳就可以輕易的分辨
112Kbps & 128Kbps 的 MP3 差異,112Kbps 真的不太好,而
128Kbps 就可以應付大多數的人耳了,這也是 MC 的作者將 MC 的內定值定於此的原因吧!
由於 MC 是一隻 Win95/WinNT 的 32 位元程式,所以可以提供
priority 的調整。priority 就是"優先權"。Priority
越高的程式,在多工處理時,就可以得到越多的 CPU 時間。
但是並非只要把 priority 提高,就可以大幅度減少壓縮時間。如果在壓縮
MP3 時,你的電腦沒有在做其他的工作,則不管 priority 是高是低,所花的時間幾乎不會有差別;相反的,如果你在壓縮
MP3 時,還有在做其他的工作,則 priority 高的 MC 將會比 priority
低的 MC 先完成工作:然而,MC 的 priority 越高,表示你另外的工作將會被分配到越少的
CPU 時間,情況嚴重時你自己都會有感覺。
MC 所提供的 priority 調整,最高的就是 Time Critical
模式,你的電腦將幾乎無法再做其他的工作;此時 MC 的壓縮進度長條圖也會停止,並且說明這不是
bug。停止長條圖的原因是系統也沒有許多的 CPU 時間去處理長條圖的繪製,還不如不要去處理,這樣
MC 可以更快的工作。
最低的 priority 則是 idle 模式,也就是只要有一個程式在工作,MC
就會暫停壓縮,直到所有的工作都結束,MC 才會繼續壓縮。
要用哪一種 priority,就端看您自己的需要;也許在壓縮 MP3 的同時,你還想用電腦做其他的事情,這時候
priority 就不適合太高,以免影響其他程式的順暢。
MC 還有提供 command line 模式,也就是你可以在 DOS 視窗下於輸入
mp3comp.exe 的後面再接一些參數,來達到直接控制的目的。想要看參數說明的話,輸入
mp3comp /? 就可以得到簡易的參數表,或是看 MP3 Compressor
的 help,可以得到更詳盡的解說;在此舉個範例:
mp3comp j:test.wav /outputMP3
不管你 mp3comp 放在那個硬碟的目錄下,所產生出來的 mp3 檔也會放在
j: 下。而檔名應該是 test!.mp3。
|
|
|
|
MP3 Compressor 報告 (3) - MP3 格式的 WAV 檔: |
|
MC 有一個困擾問題就是他會產生 MP3 格式的
WAV 檔,在此要說明一下。
安裝好 MC 後,你可以在以下位置:
[控制台] => [多媒體] => [進階] => [音效壓縮
Codecs]
找到一個 [Fraunhofer IIS MPEG Layer-3 Codec
(professional)]。
這是 MC 提供的 MP3 解碼程式。這樣做的原因是 WAV 檔的檔頭,可以提供一些資訊,告知系統這個
WAV 檔有被編碼,要用對應的解碼程式來解。所以表面上看起來是 WAV 檔,骨子裡則還是
MP3 檔,拿這種 WAV 檔到沒有安裝 MC 的機器上,一定什麼都聽不到,而且還會得到錯誤訊息。
這種 WAV 檔,比起相同程序做出來的 MP3 檔,多了 72 bytes,我想這
72 bytes 就是檔頭,提供此 WAV 檔的壓縮編碼資訊。
把這 72 bytes 的檔頭,獨立出來,然後添加在普通的 MP3 檔前,並將檔名改成
.WAV,交給媒體播放程式,果然可以當作 WAV 檔來播放了。但是這 72 bytes
的檔頭內容還包括了歌曲長度,這樣的作法,會造成檔案時間長度的誤判,也就是原本 72
bytes 的來源歌曲有多少時間,做出來的 WAV 檔時間就有多長。至於從第 73
byte 開始的資料,普通的 MP3 檔。換句話說,這種 WAV 檔,就是 72
bytes + 原本的 MP3 = 新的 WAV 檔。
而這種變形的 MP3 檔案,它帶來的最大好處是已經不用再拘泥於以前那幾個 MP3
Player,你可以拿出你喜愛的 WAV player 程式,痛快的播放 MP3。當然,你還是不能拿
WAV player 去播放沒有 72 bytes 檔頭的純種 MP3,一定是什麼都聽不到的。
另外一個好處是 WWW 的瀏覽器不需要為了 MP3 做特別的設定,只要大家都有裝
MC,就可以在瀏覽網頁時順利的聽到 MP3 音樂。對於網頁的管理者來說,要在網頁上播放
MP3 音樂,只要用這種變形的 MP3 檔案就可以了。
最後談談這個 Fraunhofer IIS 的解碼程式。既然都已經寫出是來自
Fraunhofer IIS,我想它的系統耗用度應該會和 WinPlay3 相當的接近才是,因為
WinPlay3 就是來自 Fraunhofer IIS,而事實上也的確如此,播放變形
MP3 檔時,觀察系統耗用率,和 WinPlay3 不相上下。在 Pentium
166 上,WinPlay3 播放 MP3 時,系統耗用率會起起伏伏,而 Fraunhofer
IIS 的這個解碼程式在佔用率上就比較穩定,幾乎維持相同的佔用率,而且就是介於
WinPlay3 起伏的範圍之間。
所以,將 MP3 做成變形的 MP3 檔,也就是骨子裡是 MP3 的 WAV
檔,交給任何一個可以播放 WAV 的程式,應該都不會佔用太大的系統資源。直到目前,還沒有一支程式可以以明顯低於
WinPlay3 的系統佔用率來播放 MP3 檔,而 MC 的解碼程式來自和 WinPlay3
相同的 Fraunhofer IIS,自然也於系統佔用率上得到很好的成績。
|
»
為什麼要抓取
CD 音軌? |
|
想要製作 MP3 檔,傳統的方法是先要抓取 WAV
檔,再轉換成 MP3 檔。
因為這個工作原理,所以轉換成 WAV 檔的過程,就顯得格外重要。在以前,如果我們想要將
CD 音樂錄成電腦檔案,無疑的是將 CD-ROM 的音源接上音效卡的 CD-In
或是 Line-In 插座,接著於 CD 音樂播放的同時,使用音效卡將音樂錄下來。
這種方法,第一個問題就是錄出來的品質不可靠;就像使用錄音機一樣,好的錄音機可以錄出高品質、低雜音的錄音帶,便宜的錄音機就只能錄出普通的品質,甚至還有背景雜音等令人難受的成分。音效卡也是如此,專業的錄音卡當然能夠表現得很好,但是我們用的都是普通音效卡,錄音不是主要的功能訴求,所以這方面的品質就不可能很好;再加上電腦機殼內的訊號干擾,錄出來的品質可想而知。相信有些人曾經使用過一些很爛的音效卡,只要硬碟有動作,甚至動動滑鼠,都可以從音效卡傳出對應的雜音。像這樣的音效卡,怎麼能夠錄出品質優良的
WAV 檔?
第二個問題是,這種錄音的方式,很花費時間。傳統觀念上,聲音進行多久,就花多久的時間錄音,乃是天經地義的事情,不容懷疑;但是想一想,在
CD 唱片上的資訊,不是已經數位化了嗎?再加上現在的光碟機都超過一倍速以上,難道不可能用更快的方式將這些資料以數位化的方式讀取出來,變成
WAV 檔?
是的,抓取 CD 音軌就是這樣來的。在電腦用的光碟機剛出現時,這個功能並不被重視,只有當時一些高階的
SCSI 光碟機有提供此功能,但是隨著電腦越來越快,容量越來越大,MP3 的發明,使得此一功能受到重視,於是光碟機紛紛開始支援此功能(CD-DA
Extracting),只不過各廠牌各型號的光碟機在此功能上,所下的功夫不同;有的隨便做做,能抓取但是品質很爛;有的做得很用心,抓得又快又正確;有的很踏實,慢慢的抓,但是也抓的很正確;當然,還是會有完全不支援此功能的光碟機,遇到這種光碟機,任何程式都不可能抓得了音軌。
所以,如果能夠使用一台好的光碟機,不但抓得正確,還抓得迅速,那不是皆大歡喜嗎?而且在製作
MP3 的過程下,就可以省下大半的時間了;反過來,如果使用了一台爛爛的光碟機,不但抓得慢,還抓得不正確,有雜音、爆音、跳軌等情況,那不是氣死人了?
|
»
MP3 檔案在不同機器上面壓縮的時間 |
|
使用以下長度的檔案:48559258 jenny.wav (44.1Khz 16bit),播放時間大約
4:15。
壓縮後的檔案長度 :3854628 jenny.mp3 (112Kbps)
壓縮程式的版本:l3enc 2.61
壓縮時的指令 :l3enc jenny.wav jenny.mp3
UltraSparc 200Mhz under
Solaris,256MB RAM : 12 分 38 秒
Pentium 120Mhz under Linux,32MB RAM : 25
分 53 秒
Pentium 120Mhz under DOS,32MB RAM : 24 分
10 秒
要說明的是,這個 l3enc 2.61 的 encoder,有
SunOS Linux DOS SGI NeXTSTEP 等不同平台的執行檔。Solaris
作業系統可以跑 SunOS 的執行檔,不過效率會差一些些,如果有 Solaris
專用的 l3enc,速度應該可以更快。
UltraSparc 200Mhz RAM 有
256MB,而且因為 RAM 很多,/tmp 就是直接使用記憶體,而非 HD。這個測試也是在
/tmp 下做的,所以等於全部都是在記憶體內完成。 |
»
將MP3轉成CD音樂片(Audio
CD) |
|
MP3檔雖然有高壓縮容量小的優點,但由於目前大家使用的音樂播放工具仍然是CD音響,所以若能將mp3檔案轉換成一般的音樂CD那就可以到任何地方播放了!
而要還原成一般的音樂CD可以使用winamp的輸出轉向到檔案即可!
其執行步驟如下:
(1)先選取要還原的.MP3檔
(2)使用winamp的\Options\Preferences
(3)將winamp的輸出轉向成檔案,Output設成為.WAV file output
(4)選擇輸出檔案的路徑
(5)最後按PLAY鍵,唱完後(由於輸出到檔案所以就不會有聲音)便多了一個.wav檔
(6)再來就是利用光碟燒路機的燒製Audio CD的方式,將WAV檔案燒錄成Audio
CD。
|