本文將介紹將DVD格式的影片轉換成H.264的視訊檔的方法.
注意事項:
- 本文所用的轉檔方式是採用x264獨立的轉檔程式, 搭配MeGUI, 並非透過vfw, 因此照著本教學進行下去, 並不會影響系統裡現有的vfw codec, 適合不喜歡裝一大堆雜七雜八codec的人用.
- 一些轉檔的參數設定是作者的喜好, 每個人對畫質, 音質的喜好, 儲存空間的要求和願意花在轉檔時間的長短並不相同. 本文僅提供一個方向讓讀者學會如何轉檔, 希望讀者們在多次嘗試之後, 找出適合自己的轉檔參數和方式.
- 複製有版權保護的DVD可能會觸犯您所在地區的法律.
準備軟體:
- DVD Decrypter: 用來將DVD格式的影音光碟的內容複製到硬碟, 由於這軟體的官方網站已關閉, 且本身不再更新, 因此請自行尋找. 安裝過程很簡單, 但安裝程式若詢問是否連上官方網站檢查更新, 記得回答「否」.
- MeGUI: 主要用來轉檔的軟體, 此軟體需配合.NET Framework 2.0才能正常運作, 記得一併安裝.
- mkvtoolnix: 將轉檔完的視訊, 音訊和字幕打包成.mkv檔的軟體, 雖然MeGUI已內建此功能, 不過無法滿足較特殊的需求(例如視訊縱橫比微調等等), 因此打包的部份, 另外用它來做.
- VobSub: 用來從DVD當中抽取字幕用, 若不打算處理字幕則可以不用安裝. 官方網站沒有提供它的binary, 得自行尋找. 安裝過程當中請選擇自訂安裝, 所有的元件都「不要」打勾, 因為只是要用它抽取字幕, 用它裝的.dll檔就夠了.
- AviSynth: 以frameserver型式來作視訊檔處理的軟體, MeGUI當中的影片裁切, 去雜訊, 去交錯等等功能都靠它運作, 下載時只需要下載主程式即可, 安裝時不用更改任何選項.
- 若您還有XviD轉檔的需求, 不妨考慮直接安裝AutoGK, 它包含了VobSub和AviSynth這兩個軟體.
將DVD影音光碟的內容複製到硬碟:
- 執行DVD Decrypter, 在Source裡選擇DVD光碟所在的光碟機, 接著從功能表中選Mode→IFO(或者直接按鍵盤上的「I」鍵).
- 右邊會以樹狀結構現此光碟所有的標題(Title)和章節(Chapter), 如果光碟內容是連續劇之類的影片, 可以預先替每一個章節各建立一個空資料夾, 方便作業. 接著右邊將要複製的標題選取起來, 左邊Destination則點資料夾的圖示, 出現瀏覽資料夾的視窗時選擇要存放的資料夾, 並按下方按鈕開始將DVD的內容複製到硬碟.
- 接著會出現進度畫面
- 完成時會出現此畫面
- 重覆步驟2至4, 將DVD光碟裡所有要轉檔的標題都複製到硬碟.
更新MeGUI:
- 第一次啟動MeGUI時會作更新, 主要是更新MeGUI用到的其他軟體(畢竟MeGUI只是個frontend, 很多動作都是呼叫外部程式來完成), 以及轉檔用到的設定值以及AviSynth用到的Plugins.
- 啟動MeGUI之後若出現「Updates Available」的視窗時, 選「是」進行更新.
- 點Update更新.
- 更新過程當中若出現選擇設定值的畫面, 請全部選取(選第一個, 再按Shift點最後一個), 並按Import匯入所有的設定值.
- 更新完的畫面應該是這個樣子, 可以再點「Update」確認所有的檔案都正確地更新了.
影音分離及前置處理:
- 在MeGUI主畫面下, 選「Tools」→「D2V Creator」.
- 點「Video Input」右邊的按鈕, 出現開啟舊檔畫面時, 選擇第一個.VOB檔開啟.
- 接著選擇「Demux al Audio Tracks」, 按一下「Queue」, 接著將此視窗關閉.
- 切換到「Queue」頁面, 並按「Start」開始執行抽出音軌及建立.d2v檔的動作.
- 若您是第一次使用MeGUI, 會看到此畫面, 回答「是」, 並輸入Worker的名稱, 建立新的Worker(可隨意輸入).
- 轉檔時會出現像這樣的進度畫面, 請等它跑完, 畫面的「Priority」是調整轉檔工作的優先權, 作者實驗的結果發現調這裡對轉檔快慢與否影響不大, 反而是調到「HIGH」時電腦整個動彈不得.
- 完成時剛才那個進度畫面會消失, 「Worker」畫面會像下圖這樣, 而「Queue」畫面裡剛才的工作會顯示「done」字樣.
- 回到MeGUI主畫面, 選擇「Tools」→「AviSynth Script Creator」.
- 點「Video Input」右邊的按鈕, 選擇剛才建立的.d2v檔.
- 檔案開啟之後會另外出現畫面預覽的視窗:
- 「Input DAR」右邊的下拉式選單這裡通常會偵測影片的格式和縱橫比, 若偵測錯誤的話再修改即可(台灣通常是NTSC, 若是片源是16:9加上下黑邊之後形成的4:3, 也選擇4:3, 稍後再做處理).
- 接下來將「Crop」打勾, 再按「Auto Crop」按鈕自動裁切影片黑邊(若影片本身就是以暗畫面為主, 這裡可能會偵測錯誤, 請手動調整中間的數字.)
- 接下來將「Resize」打勾, 再調整影片畫面的寬度和高度, 注意寬度和高度必須為16的倍數, 若您的影片不是4:3, 請參考本文下方關於畫面縱橫比的說明.
- 接著切換到「Filters」的頁面, 按「Analyse」鈕開始分析影片, 它會找出這影片適合用哪一種方式去交錯(拉絲的現象).
- 以下針對此畫面的選項一一說明
- 去交錯偵測完成時使用它偵測出來的設定值即可, 但有時候會出現它偵測的結果說不需要去交錯, 但卻很明顯在預覽畫面裡看到拉絲現象時, 請將「Deinterlace」打勾, 「Source type」選「Interlaced」.
- 若片源是卡通, 「Source is Anime」請務必打勾.
- 若片源大量用柔焦效果, 或者是用DV拍攝成的影片, 「Resize Filter」可以選「Bicubic(Neutral)」, 否則盡量選「Lanczos(Sharp)」.
- 「Noise Filter」打勾, 右邊選「Minimal Noise」, 若片源雜訊情況嚴重, 可以試著調整這裡的設定值看是否能改善.
- 若片源是DVD, 「Mpeg2Deblocking」通常是不勾的, 除非片源有嚴重到很離譜的方塊出現(像衛星電視或數位電視訊號變差時的那種樣子)才需要打勾.
- 「Colour Correction」通常要打勾, 可以改善影片顏色上的一些問題(卡通會比較明顯)
- 接著按「Preview AVS Script」看看輸出的影片的樣子, 若覺得滿意, 就按「Save」存檔.
- 接著回到主畫面, 點「Audio Input」右邊的按鈕, 開啟之前抽出的音訊檔(可能是.wav或.ac3).
- 只有左右聲道的音訊, 作者是習慣壓成.ogg, 在「Codec」這裡選「Ogg Vorbis」, 點「Config」之後, 會出現調整音訊品質的畫面, 在這裡把品質調到3.0, 並按「New」建立一個自己的設定檔.
- 回到主畫面時按「Enqueue」.
- 接著按「Audio Input」右邊的按鈕選擇另一個音訊檔, 「Audio Profile」就直接選剛才建立的設定檔, 按「Enqueue」排進排程即可.
- 接著按「Queue」切換到排程工作頁面, 按「Start」開始音訊壓縮的工作.
- 音訊都壓縮好之後回到「Input」頁面, 確認「AviSynth Script」是剛才建立的檔案, 「Codec」是「x264」, 「File format」是「MKV」之後, 「Video profile」這裡選「HQ-Slower」(若片源是卡通, 請選「AE-Goodquality」).
- 主畫面選「Tools」→「Bitrate Calculator」:
- 在Bitrate Calculator畫面裡, 選擇「Audio1」裡頭的「Select」, 開啟剛剛「壓縮好的」音訊檔.
- 接著在「Audio1」這個頁籤上點右鍵, 選「Add track」, 並一樣按「Select」選另一個壓縮好的音訊檔.
- 確認「Video」, 「Codecs」, 「Container」裡的數值都跟目前要轉檔的影片符合, 點「Total Size」裡的箭頭, 選擇或輸入這個影片轉檔之後希望的大小(若要燒錄成光碟, 為了預留字幕或其他檔案的空間, 可以稍微降低一點大小), 選好之後記下「Result」裡的Bitrate值, 並按「Apply」離開此畫面.
- 回到主畫面之後按「Config」, 先檢查「Bitrate」裡的值是否跟剛剛在Bitrate Calculator 計算的是否一樣, 接著按「Profiles」裡的「New」, 替這個設定檔取一個名字, 往後片源相同的轉檔就直接用這個設定值.
- 按「Enqueue」把視訊轉檔的工作排進排程.
- 接著切換到「Queue」頁面, 按「Start」開始漫長的轉檔時間.
- 都完成之後會像下圖這個樣子
從DVD當中抽取字幕:
- 在Windows工作列中, 點「開始」→「執行」, 輸入「rundll32.exe vobsub.dll,Configure」
- 出現VobSub視窗之後, 點左下角的「Open」, 檔案類型選「*.ifo」, 接著找到由DVD Decrypter複製到硬碟的.ifo檔並開啟它.
- 選擇字幕檔要放在哪個資料夾, 建議存放在轉檔時存的資料夾以方便作業.
- 參考下圖所示選擇要抽取的字幕軌(要抽取的字幕軌要在右邊), 並按「Ok」開始抽取字幕.
- 字幕抽取完成時會是這個畫面
將視訊, 音訊和字幕合併:
- 執行mkvtoolnix附帶的mkvmerge GUI, 點右上角的「add」, 開啟轉檔好的視訊檔.
- 接著按照相同的步驟, 依序加入音訊檔和字幕檔, 第一個加入的音訊和字幕會成為預設值, 因此請留意加入的順序.
- 全部都加好之後畫面會像下面這個樣子.
- 接下來在「Tracks」裡點選視訊(找「type: video」這個), 並點下方的「Format specific options」, 選擇「Display width/height」, 右邊輸入影片的長度和寬度(參考本文下方關於畫面縱橫比的說明):
- 按「Start Muxing」開始產生合併的檔案.
- 合併完之後畫面會像下面這個樣子, 接下來就試試檔案能不能正常播放吧.
關於畫面縱橫比:
- 在進行x264轉檔時有畫面的寬度和高度必須為16的倍數的限制, 但是.mkv可以在播放時進行縮放(使用與原本視訊資料不同的解析度), 若是轉16:9的影片, 在建立AviSynth Script這個步驟時, 可以先輸入一個接近16:9比例的數字, 到最後包成.mkv檔時再調整到正確的比例, 整理如下:
畫面比例 4:3 16:9 16:9Letterbox成4:3 建立AviSynth Script時用的解析度 640×480 704×400 640×368 包成.mkv時調整成 640×480(不用調整) 711×400(左右拉寬)或704×396(上下壓扁) 654×368(左右拉寬)或640×360(上下壓扁) 您也可以去下載 Aspect這個專用的計算程式來找出適合的解析度, 雖然這軟體的計算方式是以.avi為基礎, 不過還是有參考的價值.
補充說明:
- 事實上MeGUI還有更自動化和更方便的使用方式(例如AutoEncode和One Click Encoder等), 本文是針對初次使用MeGUI以及尚未熟悉轉檔原理的使用者而編寫, 因此未加以說明, 若您有重覆壓製相同片源的需求(例如連續劇), 而且相關設定檔也都建立過了, 不妨嘗試看看.
- 關於轉檔時用的設定值和參數必須隨著影片內容而作調整, 作者的經驗和建議如下:
- 一般影片以2-pass, 1200kbps為基準, 影片內容要是有大量動態畫面和特效則增加bitrate值, 要是以靜態畫面為主則減少.
- 靜態畫面為主的卡通以2-pass, 750kbps為基準, 要是動態畫面或特效用很多, 則增加bitrate值.
- 音訊的部份, 要是只有立體聲則一律壓成ogg vorbis, 品質設定在3.0~5.0之間.
- 音訊的部份, 要是影片本身就是以音樂演奏為主的影片, 就考慮不做壓縮, 直接將抽出的音軌包進.mkv裡.
- 無法忍受漫長轉檔時間的人, 可以考慮Single Pass Quantizer或Single Pass Quality的方式轉檔, 注意Single Pass Quantizer模式下quantizer值越高, 品質越差.
- MeGUI也可以用在DVD以外的片源轉檔, 視訊部份只要能讓AviSynth處理即可, 音訊部份可以先還原成.wav, 再讓MeGUI處理即可.
- 字幕的部份, 本文的作法是直接將DVD抽出的字幕包進.mkv, DVD的字幕其實是一張張的圖檔, 若有需要辨識成文字再進一步編輯, 不妨去找相關教學, 轉成文字格式(.srt, .ssa或.ass)後的字幕一樣可以用本文裡的方式包進.mkv裡.
參考資料:
- http://forum.doom9.org/showthread.php?t=96032
- http://forum.doom9.org/showthread.php?t=101813
- http://mewiki.project357.com/wiki/Guides:Basic_Guide
- http://www.digital-digest.com/articles/x264_options_page2.html
廣告