1. 程式人生 > >MPEG4技術全攻略

MPEG4技術全攻略

說起MPEG4技術,很多朋友熟悉的就是網上那些清晰度極高的MPEG4電影,可是要是認為MPEG4技術只能用來進行一些影音播放,你可就太小瞧它了。

MPEG全稱是Moving Pictures Experts Group,它是“動態圖象專家組”的英文縮寫,該專家組成立於1988年,致力於運動影象及其伴音的壓縮編碼標準化工作,原先他們打算開發MPEG1、MPEG2、MPEG3和MPEG4四個版本,以適用於不同頻寬和數字影像質量的要求。

目前,MPEG1技術被廣泛的應用於VCD,而MPEG2標準則用於廣播電視和DVD等。MPEG3最初是為HDTV開發的編碼和壓縮標準,但由於MPEG2的出色效能表現, MPEG3只能是死於襁褓了。而我們今天要談論的主角——MPEG4於1999年初正式成為國際標準。它是一個適用於低傳輸速率應用的方案。與MPEG1和MPEG2相比,MPEG4更加註重多媒體系統的互動性和靈活性。下面就讓我們一起進入多彩的MPEG4世界。

MPEG4的技術特點

MPEG1、MPEG2技術當初制定時,它們定位的標準均為高層媒體表示與結構,但隨著計算機軟體及網路技術的快速發展,MPEG1.MPEG2技術的弊端就顯示出來了:互動性及靈活性較低,壓縮的多媒體檔案體積過於龐大,難以實現網路的實時傳播。而MPEG4技術的標準是對運動影象中的內容進行編碼,其具體的編碼物件就是影象中的音訊和視訊,術語稱為“AV物件”,而連續的AV物件組合在一起又可以形成AV場景。因此,MPEG4標準就是圍繞著AV物件的編碼、儲存、傳輸和組合而制定的,高效率地編碼、組織、儲存、傳輸AV物件是MPEG4標準的基本內容。

在視訊編碼方面,MPEG4支援對自然和合成的視覺物件的編碼。(合成的視覺物件包括2D、3D動畫和人面部表情動畫等)。在音訊編碼上,MPEG4可以在一組編碼工具支援下,對語音、音樂等自然聲音物件和具有迴響、空間方位感的合成聲音物件進行音訊編碼。

由於MPEG4只處理影象幀與幀之間有差異的元素,而捨棄相同的元素,因此大大減少了合成多媒體檔案的體積。應用MPEG4技術的影音檔案最顯著特點就是壓縮率高且成像清晰,一般來說,一小時的影像可以被壓縮為350M左右的資料,而一部高清晰度的DVD電影, 可以壓縮成兩張甚至一張650M CD光碟來儲存。對廣大的“平民”計算機使用者來說, 這就意味著, 您不需要購置DVD-ROM就可以欣賞近似DVD質量的高品質影像。而且採用MPEG4編碼技術的影片,對機器硬體配置的要求非常之低,300MHZ 以上CPU,64M的記憶體和一個 8M視訊記憶體的顯示卡就可以流暢的播放。在播放軟體方面,它要求也非常寬鬆,你只需要安裝一個 500K左右的 MPEG4 編碼驅動後,用 WINDOWS 自帶的媒體播放器就可以流暢的播放了(下面我們會具體講到)。

MPEG4的應用領域

憑藉著出色的效能,MPEG4技術目前在多媒體傳輸、多媒體儲存等領域得到了廣泛的應用,下面我們就來看看目前在那些領域MPEG4技術得到了大顯伸手的機會。

1、 精彩的視訊世界

精彩的視訊世界是MPEG4技術應用最多也是最為廣大朋友所熟悉的的形式。目前它主要以兩種形式出現,一種是DIVX-MPEG4影碟(國內市面上已出現,且D版居多),另一種是網上MPEG4電影。

(1)、我們先來說說DIVX-MPEG4影碟,DIVX視訊編碼技術實際上就是MPEG4壓縮技術,它由微軟MPEG4V3修改而來,使用的是MPEG4壓縮演算法,並同時分離視訊和音訊。它的核心部分便是由DivX對DVD音視訊進行壓縮,生成Mpeg4視訊格式檔案(也就是AVI格式)。

小提示:筆者也是經常被朋友所問到:“我看到的MPEG4電影片段明明是avi(副檔名)格式檔案,並且Windows的媒體播放器也與之關聯,但就是無法播放”。其實, MPEG4並沒有確定必須用什麼副檔名,它只是一種編碼方法而已。使用avi作為副檔名,是一種習慣性的沿用。

在計算機上播放MPEG4影音檔案的方法目前有兩種:第一種是用諸如DivxPlayer等專門的播放軟體來播放;第二種播放方法是安裝MPEG4(Divx)外掛後,用Windows自帶的媒體播放機來播放。

(2)、隨著網路技術的不斷髮展,網際網路上的視訊流應用也成為了近幾年的熱門話題。目前,在網際網路上比較流行的幾種影像格式包括Quicktime、RealPlay以及微軟的MediaPlayer等。MPEG4技術出現之後,網際網路上又出現了MPEG4格式的電影,不過在觀看前,系統會提示你下載最新的MPEG4解碼軟體。

小提示:大家平時在網上可能經常會看見ASF格式的電影,其實它也是微軟公司開發出的一種可以直接在網上觀看視訊節目的壓縮格式。使用的也是MPEG4的壓縮演算法,但因為它是以網上即時觀看電影的視訊流格式存在的,所以它的影象質量相對要差一些。

2、 低位元率下的多媒體通訊,

目前,MPEG4技術已經廣泛的應用在如視訊電話、視訊電子郵件、行動通訊、電子新聞等多媒體通訊領域。由於這些應用對傳輸速率要求較低,一般在4.8~64kbit/s之間,解析度為176×144左右。因此MPEG4技術完全可以充分的利用網路頻寬,通過幀重建技術壓縮和傳輸資料,以最少的資料量獲得最佳的影象質量。

3、 實時多媒體監控。

多媒體監控領域原來一直是MPEG1技術擔當重任,但近些年來,它們也是“城頭變換大王旗”了。由於MPEG4壓縮技術原本是一種適用在低頻寬下進行資訊交換的音視訊處理技術,它的特點是可以動態的偵測影象各個區域變化,基於物件的調整壓縮方法可以獲得比MPEG1更大的壓縮比,使壓縮碼流更低。因此,儘管MPEG4技術一開始並不是專為視訊監控壓縮領域而開發的,但它高清晰度的視訊壓縮,在實時多媒體監控上,無能是儲存量,傳輸的速率,清晰度都比MPEG1具有更大的優勢。

4、 基於內容儲存和檢索的多媒體系統。

由於MPEG4在壓縮方法上遠遠優於MPEG1技術,更是MJPEG技術所不能比擬的。 經過專家的測試表明,在相同清晰度對應MPEG1(500Kbits/sec)碼流情況下, MPEG4比MPEG1節省了2/3的硬碟空間,在一般活動場景下也節省近一般的容量。因此無論是從內容儲存量,還是從多媒體檔案的檢索速度來說,MPEG4技術都是多媒體系統應用的不二之選。

5、硬體產品上面的應用

目前,MPEG4技術在硬體產品上也已開始逐步得到應用。如日本夏普公司推出的應用在網際網路上的數字攝像機VN-EZ1。這臺網絡攝像機利用MPEG4格式,可把影像檔案壓縮為ASF(高階流格式),使用者只要利用微軟公司的MediaPlayer播放程式,就可以直接在電腦上進行播放。又如,在移動多媒體通訊領域,摩托羅拉公司在今年5月份宣佈開發出用手機看電影的技術。該公司已研製成功通過GPRS(通用資料包無線業務)移動資料網路傳輸MPEG4格式影象的系統。另外,目前市場上還出現了一種MPEG4播放機,它擁有一個TV輸出口,可以向電視機提供高品質的MPEG4圖象,同時它還能支援MP3,可以直接瀏覽JPG,BMP的圖片等等。

MPEG影片全攻略

對我們更多的讀者來說,精彩的DIVX-MPEG4影碟和網上MPEG4電影是我們最熟悉,也是最感興趣的,下面筆者就來重點談談它們。

MPEG4播放篇

一、播放軟體

MPEG4是深受人們喜愛的電影檔案格式,它以其優品質畫面與高壓縮比而吸引著眾多的“平民電影迷”。可是要想在電腦上正常播放MPEG4影片,我們就需要專門的播放軟體了。

儘管目前市場上支援MPEG4格式的播放軟體並不少見。但依筆者的經驗,Windows系統自帶的Windows Media Player(WMP)和 DXN(DivXNetworks, Inc.)公司開發的DiVX Player是最好,也是最少出現問題的MPEG4播放軟體。由於DIVX PLAYER就是為MPEG4技術量身開發的,它本身整合了DivX Codec,因此在播放上一般不需要什麼設定。筆者這裡就羅嗦幾句,談談WMP的設定使用。

WMP要想成功的播放MPEG4影片,必須在播放前安裝MPEG4外掛(在下面的製作MPEG4影片環節我們會具體談到),它們是:

(1) 音訊外掛: AC3filters;OggDS;mmswitch(用於解決雙聲道語音問題);

(2) 視訊編碼解碼外掛:divx_311;divx 5.02;XviD;ffdshow MPEG-4 Video Decoder;

(3) 字幕外掛:VobSub 2.16或VobSub 2.18 ;

聽起來挺複雜,其實安裝起來很簡單的:一般現在的MPEG4電影光碟,都會自帶有MPEG4外掛或獨立的播放程式。開啟光碟,我們會看到一個Core目錄與Mpeg4.exe檔案,執行這個可執行檔案後,DivX通用解碼器就安裝上了。另外,您還可以通過線上下載來安裝解碼器。(http://www.tryhear.com/download/mpeg4-divX.zip)

二 、常見播放問題解決

由於MPEG4影片的播放不像VCD那麼簡單,播放過程中還可能出現這樣或那樣的問題,因此我們在使用時還必須掌握一些解決這些問題的技巧。

症狀 ①有聲音無影象

一般說來這是由字幕外掛引起的。如果你在不用字幕情況下,就可以正常顯示影象,那麼試試降低顯示器的重新整理頻率或調整螢幕解析度大小。

症狀②有影象無聲音

首先,你要確認AC3 Filter是否已經正常安裝。通常AC-3解碼器需要微軟的DirectX 8.0或更高的版本與之配合,用DirectX診斷工具檢查是否安裝。另外,不穩定的音效卡驅動也可能導致影片無聲,試著下載最新的或最穩定的音效卡驅動。

症狀③畫面不連貫

如果你機器配置不夠高,那麼只能犧牲部分播放質量來減輕CPU的負擔了。一般我們可通過調節視訊播放軟體的影象質量來解決。

MPEG4製作篇

製作MPEG4檔案是將自己的視訊、影像和音訊素材經過編輯加工後,儲存為MPEG4電影格式,在視訊編輯軟體中, Ulead 的MediaStudio Pro和 Adobe的Premiere可以算作是最專業的視訊製作軟體了。不過對我們廣大不同的家庭使用者來說,它們都過於複雜,因此不在本文討論之列。

一、VCD轉MPEG4

儘管現在許多朋友都看上了DVD影片,但對一些“平民使用者”來說,CD-ROM還是他們電腦不可缺少的標配,用CD-ROM看VCD也成了他們最愛的影音娛樂方式,不過VCD電影動輒幾百兆的體積實在是讓人受不了。由於MPEG4有著很高的壓縮比,而且對原畫質影響很小,因此將VCD轉成 MPEG4 就可以為我們省下不少硬碟空間。

小提示:經測試,雙碟的VCD可以在不損畫質的情況下轉成單碟的MPEG4,而一首 45 兆的MTV轉成MPEG4,如果用 600 的位元速率的話,生成的 MPEG4 檔案是 8.4 兆,差不多有 5 倍的壓縮率。

對我們很多“電腦碟友”來說,超級解霸是我們最熟悉的視訊播放軟體了,下面筆者就以超級解霸中自帶的轉換工具為例,為您詳細介紹一下怎樣將VCD轉換成MPEG4格式。

首先,我們選擇“開始選單/程式/豪傑超級解霸3000/實用工具集,選中“常用工具”選項裡的“MPEG轉AVI(MPEG4)。單擊後彈出一個視窗,在檔案選單中開啟你想轉換的VCD檔案,在這裡,你還可以根據自己的需要來定義各種引數,選擇壓縮區域,範圍等(圖mpeg1)。



1、開啟檔案:點選“開啟”圖示匯入你需要轉換的VCD視訊檔案(字尾名為DAT)。在Preview預覽選框,你還可以進行影片預覽、選取壓縮區域、設定開始點、設定結束點等操作。

2、在“視訊流(Video Stream)”選項裡設定輸出視訊檔案的屬性(圖mpeg2)。這裡主要是用來選擇壓縮的方式,預設是MPEG4的壓縮方式。 

3、 “寬/高度”選項裡調整輸出視訊影象的寬高比例,要想感受DVD的效果,你可以將寬高比例設定為16:9(預設為原輸入視訊的寬/高度)。

4、 在“ 音訊流”選項裡,適度調整輸出檔案的音訊屬性。預設的是MPEG Layer-3 Codec(即MPG4的音訊壓縮程式),一般無需改動。

5、 一切都設定好後,我們就可以選擇好輸出目錄,開始壓縮了。不過壓縮的時間可是比較長哦,沒耐性的你可以先去泡杯茶,看看報紙嘛!



DVD轉換成MPEG4

其實,通過上述的超級解霸3000實用工具,我們也可以將DVD轉換成MPEG4格式,不過據實踐證明,超級解霸在轉換DVD影片效果不是太好,而且還容易出現一些莫名其妙的問題,筆者這裡就不敢妄自推薦了。好在視訊轉換軟體種類還很多,下面就為您介紹一種“準專業”製作方法。 

一、從DVD中複製VOB檔案

由於目前許多編碼軟體都不能從DVD光碟中直接讀取VOB檔案,進行轉換,因此我們只有將DVD中的影音檔案複製到硬碟當中。為了大家都能製作出高清晰,精良的MPEG4影片,筆者還是要冒著騙稿費的罵名,將DVD影碟的檔案結構先羅嗦幾句。

1、前期提示: 

DVD影片是存放在DVD光碟中的“VIDEO_TS”目錄內,其中VOB檔案是儲存的影音資料,這些資料不僅包含影片本身,而且還有供選單和按鈕用的畫面以及多種字幕的子畫面流。IFO檔案則是控制VOB檔案播放的,在這個檔案中可以找到如何以及何時播放VOB檔案中資料的控制資訊。

DVD光碟中的VMG檔案是視訊管理器,它存放在“VIDEO_TS.IFO”檔案中,儲存光碟的全域性資訊,比如光碟可以在哪個地區播放等。除了目錄資訊部分以“VIDEO_TS.VOB”為檔名以外,主要檔案都以“VTS_xx_y”格式作為檔名。xx是標題編號(從01到99);y是區段編號(從0到9)。

由於DVD所使用的MicroUDF檔案系統中單個檔案最大隻能有1GB,因此大多數影片都是儲存在多個檔案中的。某些DVD碟片中除了有電影正片之外,還可能有其他的節目,如新片預告、拍攝花絮等。記錄正片資料的檔案都擁有相同的標題編號,檔案大小也最大。只有正片的VOB和IFO檔案才是製作MPEG4影片時要用到的檔案。

2.複製VOB檔案

由於DVD使用的是CSS(Content Scrambling System,內容不規則系統)加密演算法,因此我們首先要利用工具對它進行破解。SmartRipper是我們最常用的來破解複製軟體。它的操作相當簡單,執行SmartRipper後,它會自動對DVD碟片進行分析,分析完成後進入程式主介面,首先點選“Files”按鈕,然後在“Source”欄中點選“All”按鈕選擇所有的檔案,在“Target”欄中設定好檔案儲存的目錄,最後點選“Start”按鈕即可將VOB檔案複製到硬碟中指定的目錄(圖mpeg3)。





二、視訊轉換

上面的工作完成後,我們就可以開始MPEG4影片的製作了。下面介紹MPEG4製作中最重要的環節──用 FlaskMPEG將VOB檔案編碼為MPEG4。

小提示:FlaskMPEG是目前較流行的DVDrip編碼軟體,作為一種開放原始碼軟體它有很多的變種及第三方外掛,建議在安裝FlaskMPEG後再安裝Miha iDCT Plugin和FlasKMPEG Thunder.Mism外掛(解壓至FlaskMPEG的目錄中即可),前者有助提高編碼的速度及改善編碼的質量,後者可讓你通過開啟第一個IFO檔案來匯入整部DVD影片。 

1.匯入VOB檔案

執行FlaskMPEG,點選“檔案→開啟檔案”選單命令,瀏覽至已解密的DVD檔案所存放的目錄,如果只有VOB檔案,則開啟第一個VOB檔案。如果有IFO檔案,則選擇開啟“檔案型別”為“Thunder dvd MISM”即可開啟記錄DVD導航資訊的IFO檔案,FlaskMPEG會自動匯入全部相關的VOB檔案,選擇好後在開啟的“FlaskMPEG DVD選擇”視窗中選擇正確的時間段和音軌(通常使用預設),然後點選“Flask這張DVD”按鈕即可將DVD影片匯入進來。

2.設定具體引數

(1)視訊設定:點選OPIONS/Advance opions的“Video”按鈕,在開啟的選項設定對話方塊中選擇“視訊”選項卡,將寬度與高度及幀率調整到與原始檔一致。在“iDCT(反離散餘弦函式轉換)”選項中取消選中“Auto Select”選項,點選“iDCT Selection”按鈕,在開啟的對話方塊中選擇iDCT為“Miha′s X87 Fast iDCT”(即前面裝入的外掛)。在“視訊構建”欄中選擇“去除隔行掃描視訊”選項,會有效的消除隔行視訊產生的拉絲現象。(圖MPEG5)

(2)音訊設定:點選Options/Advance options的“Audio”按鈕可選擇“音訊解碼”,然後根據需要設定取樣頻率,通常48KHz比44.1KHz在高頻方面表現力會更好一些。如果要採用AC3音效可選擇“直接資料流複製”,可單獨將AC3音訊輸出為一個AC3檔案。(圖MPEG6)

(3)調整畫面:很多DVD影片畫面使用寬銀幕格式,畫面上下部都有一些黑邊(16:9格式中必要的部份),對於這類DVD影片建議使用修剪模式。你可設定只對有畫面的地方進行編碼,把其他黑色部份去掉。

畫面裁剪在“Post Processing”選項卡中進行設定。去掉“NO Crop(不要修剪)”模式選項,然後在輸出面板的“Crop”處調整高度、寬度、上部位移、左部位移的數值,將保留的畫面(虛線框內)調整到一個合適的位置。調整好點選“OK”儲存退出。(圖mpeg7)

3.音視訊編碼設定

點選調節面板中的“Select Output”按鈕,選擇“AVI Output”命令,然後點選“Configure Output Module”設定輸出AVI檔案的音視訊編碼。Audio部分選擇MPEG Layer-3格式,屬性選擇96或128kbps,如果使用AC3音訊,此處設定為PCM、48KHz、16位立體聲即可。Video部分可供選擇的編碼器(Codec)很多,但必須使用MPEG4型別的編碼器來製作,常見的編碼有:DivX 3.11、DivX Pro 5.02 Codec和XviD MPEG-4 Codec,這幾個Codec是目前最為流行的MPEG4類編碼器,建議使用後兩種,選擇好後點擊“配置”按鈕,在開啟的對話方塊中進行具體的配置,音訊視訊編碼設定好後,返回到調節面板中點選“Flask it!”按鈕即開始編碼生成MPEG4檔案。

提示:這樣編碼出來的AVI檔案是一個大的檔案,也許一張光碟放不下,這樣就要把分割成二個或三個檔案,分割可使用Nandub或VirtualDub工具,限於篇幅,這裡就不做介紹了。 

4、製作字幕

使用上面方法轉換的MPEG4檔案通常是沒有字幕的,(不過是國語影片這步就可以省去了)。因此,我們還應將DVD的字幕提取出來並製作成MPEG4的外掛字幕,播放時我們就可以藉助VobSub軟體得到中文字幕。

小提示: 常見的MPEG4外掛字幕有SUB、SSA、SRT等格式,其中SUB是圖形格式的,在任何語言的作業系統下都有很好的相容性;後兩者則是文字格式的字幕,檔案非常小並且可以很方便的進行調整。這幾種字幕都能被VobSub直接支援。VobSub不僅用來支援字幕的播放,而且它還可用於製作SUB格式的MPEG4外掛字幕。

下載並安裝好VobSub程式,點選“開始/程式/VobSub/VobSub Configure”。在彈出的視窗中選擇“開啟”命令,選擇好檔案型別,在指定檔案儲存位置後進入“選擇段落”對話方塊,點選“全部”按鈕確定,即開始生成字幕的索引。完成後點選“確定”按鈕返回到程式主介面。

在主介面中選擇所需字幕的語言(如Chinese),點選“確定”後即可生成SUB格式的字幕檔案(包括一個IDX檔案和一個SUB檔案),將它們的改為與AVI相同的檔名(字首)就可播放了。(圖mpeg8)

5、合併AC3音訊

現在來到了我們製作的最後一個步驟:合併AC3音訊。由於AVI規格的開放性,它在視訊和音訊型別的組合上是比較自由的,因此我們可以將AC3音訊組合到AVI檔案中以得到與DVD同等的音響效果。我們可以用Nandub軟體很方便的將mpeg4視訊和AC3音訊合併成AVI格式。

(1)分離

在上面編碼部分設定FlaskMPEG時,我們已經在“音訊”選項中選擇“直接資料流複製”,然後在“檔案”選項卡中設定AC3檔案的輸出路徑。編碼後,我們已經得到了一個AC3檔案和一個無聲音的AVI檔案。

(2)合併

使用Nandub合併AC3音訊合併到AVI檔案中的步驟是:在Nandub視窗中選擇“File→Open Video file”選單命令,匯入上一步中生成的無聲的AVI檔案,然後選擇“Video→Direct stream copy(直接流複製)”選單命令,在“Audio”選單中同樣也設定成“Direct stream copy”選項,再點選“AC3 audio”會彈出“Open AC3 file”視窗,此時將前面生成的AC3檔案匯入進來。然後選擇“File→Save as AVI”選單命令輸出mpeg4檔案,由於是採用直接流複製,輸出的速度應該非常快。

通過上面的介紹,相信你對MPEG4技術有個大致瞭解了吧,那就趕快去用自己學到的知識,DIY一張個性的MPEG4光碟吧