More Related Content More from Chui-Wen Chiu (20) Dvd轉Avi1. 由於之前有些人向我請教轉檔的問題,我就乾脆直接 PO 教學吧
這是參考某論譠的文章寫的,因為他寫的較艱深,我把他簡化一下
所需軟體都能在這公事包下載到(XVID 除外)
http://hk.f2.pg.briefcase.yahoo.com/
breezer1472000、147852
第一步:從 DVD 抽出影片
所需軟體(SmartRipper)
打開 SmartRipper 進入主畫面後可以看到 Chapters 清單,用 Movie 模式擷取,此模式是根據此 DVD 在
DVD 撥放程式裡所顯示的章節把檔案擷取出來!選好之後,按下面的[none]按鈕,再挑選你要的章節或
檔案打勾,指定好存放路徑[Target]後 再按左下角的[Start]就開始擷取成 VOB 檔了。注意在 SmartRipper
v2.41 版 Source 那分為 Input 和 Stream Processing 兩個頁面,在 Input 頁面按上面教學的去作就行了。
而在 Stream Processing 頁面要勾選 Enable Stream Processing,否則擷取出來的影音檔案可能會出問題!
第二步:製作*.d2v 專案檔及*.ac3 音軌檔(*代表你設定的檔名,可自行決定)
所需軟體(DVD2AVI)
開啟 DVD2AVI,導入 VOB!
影像部分設定(Video):
1.iDCT Algorithm 部分設為 IEEE-1180 Reference
2.Color Space 設為 YUV 4:2:2
3.YUV->RGB 設在 PC Scale
4.Field Operation 設在 none
聲音部分設定(Audio):
1.Track Number,選擇你要的聲道,如 5.1 聲道在 Track 2 就選 Track 2,日文發音在 Track 3 就選
Track 3
2.Channel format 選在 Auto Select
3.Dolby Digital 選擇 Demux,MPEG Audio 選擇 Demux,這樣就會匯出 *.AC3
4.在 48 -> 44.1KHz 的設定選 OFF
一切設定好後,到 Save Project 匯出 *.d2v 專案檔及 *.ac3 音軌檔!
第三步:下載程式庫、設定參數
所需軟體:
AviSynth_252(下載後需完全安裝)
解碼 mpeg2 plugin
自動 24fps 補正 plugin
解壓後將這兩個*.dll 檔(MPEG2DEC.dll IT.dll)複製到 C:Program FilesAviSynth 2.5plugins 裡
2. 然後打開記事本將下面虛線內的文字存成一個*.avs 檔(該分行的一樣要分行!)
----------------------------------------------------------------
LoadPlugin("C:Program FilesAviSynth 2.5pluginsMPEG2DEC.dll")
MPEG2Source("C:1.d2v")
LoadPlugin("C:Program FilesAviSynth 2.5pluginsIT.dll")
IT(fps=24,ref="TOP",blend=false)
Crop(8,0,704,480)
LanczosResize(640,360)
----------------------------------------------------------------
其中 MPEG2Source("C:1.d2v")是你*.d2v 放置的路徑,請自行修改!
注意上面的 Crop(8,0,704,480)LanczosResize(640,360)這兩行是給 16:9 的影片用的
4:3 影片請用 Crop(8,0,704,480)LanczosResize(640,480)
2.35:1 的影片請用 Crop(8,60,704,360)LanczosResize(640,272)
FPS 需自行判斷
一般影片都是 24 格...少數是 30 格(如電腦動畫片)
如果你是說改 30 格的話只要把下面這行(其他 fps 沒試過)
IT(fps=24,ref="TOP",blend=false)
的 fps=24 改成 fps=30 即可!
但是你要搞清楚該影片適不適合 30fps...
否則轉出來很慘...影像會頓
一般判斷方法是先設定 fps=30...
然後用 VirtualDubMod 讀取 avs 檔後預覽影像
在隨便找幾段畫面持續動作的場景(最好是多找幾段較保險)
用鍵盤的左右方向鍵一格一格預覽...
如果連按 10 格都沒有任何一格畫面有停止的情形(就是每格都會動)
那就是 30fps 製作的影片...設定 fps=30 就沒問題
如果有靜止畫面的話...就是 24fps 製作的影片
必需設定 fps=24...不然轉出來的影片會頓!
不過也有影片是有些地方 24ftp 製作有些是 30ftp 製作(比方說櫻花大戰巴黎篇)
那就看你如何取捨...因狀況而異...
如果你是那種會為了少數幾個 30fps 場景去換取多數 24fps 場景會頓的話...
你可以用 30fps 去壓^^"
第四步:下載影音結合軟體、影像壓縮軟體、影像編碼軟體
所以需軟體:
Nandub 1.0RC2
解壓縮 Nandub 的檔案之後,雙擊其中的 AuxSetup.exe 檔,點擊[install Handler]按鈕。
安裝 XviD Code(到此下載最新版安裝)
3. http://roeder.goe.net/~koepi/xvid.shtml
目前最新是 XviD-24062003-1.exe,在第四格,別以為最上面就是最新
下載 VirtualDubMod
打開 VirtualDubMod 後,將剛剛做好的 *.avs 檔拉進 VirtualDubMod 視窗,接著[video]-->選[Fast
recompress],確認[AVI]-->[Audio]項下是[NO Audio],然後[Video]-->[Compression]-->[XviD MPEG-4
Codec]-->[Configure]進入 XviD 設定,按那個 "Default" 按鈕,所有設定就會自動使用最佳的預設值,在
[Encoding Mode]選項中選擇[2 Pass - 1st pass],連按 2 次 ok 後按下 F7 來儲存第一個 pass 的 avi 檔案
(容量極小隨便放),另外下面的 Don't run this job now; add it to job control so I can run it in batch mode.
也要勾選。接下來再回到 codec 設定的部分,這一次選擇[2 Pass - 2nd pass Int],在 Desired size 那格填
上你想要壓出來的容量大小值。連按 2 次 ok 後再按 F7 來儲存 AVI,為它取個另一個跟 1st pass 不同的名
稱,並且也要勾選 Don't run this job noe; add it to job control so I can run it in batch mode.,接下來按 F4
帶出工作列表,你要做的只有按下 Start 鈕,兩個 pass 將會自動執行不需要再有任何手動操作,一旦編碼
過程完成後你的 XviD 檔就完成了。(VHQ mode 絕對要設定為 4,可以同時提高畫質跟減少大小,只是要
多花時間,而且還不少)
如果最終目的是壓成 RMVB,不是 AVI,那壓 AVI 時請選最高畫質設定,且不需二次編碼
參考如下
按 Configure 後,用以下的設定
4. 接下來按 Advanced optionsi 後,作用以下設定
(1)
如果影片是電影而非動畫的話,Quantization type 請設定為 mpeg
這樣畫面會比較好,如果是動畫就圖片來設定就行了
第五步:把影像和聲音合成
經過一連串的努力終於壓好影像部分,接下來只要再跟聲音做個結合就完成了!注意不要用
VirtualDubMod 結合聲音檔,好像有問題,所以我們改用 Nandub,打開 Nandub 將剛剛做好的 *.avi 檔拉
進 Nandub 視窗,[Audio]-->[AC3 audio]選 *.ac3 檔,不過你會發現 *.ac3 音效檔檔名上會標個"DELAY
-xxms"值,那是指影音兩者間的偏差值,是要填到 Nandub 的[Audio]-->[Interleave…]-->[Delay audio track
by ?? ms]裡的!音效檔檔名上 DELAY 值是多少就填多少(正負號也要填相同!)設定好後按 OK 離開!輸
入的聲音檔都設定好後,確認[Video]項跟[Audio]項下都是[Direct stream copy],點擊[File]-->[Save as
AVI...]即大公告成!
(1)
有些 DVD 聲音不一定是 ac3 檔,請自行作選擇
5. 第六步:字幕結合
所需軟體:
VobSub
首先打開 VobSub Configure,之後去找你抽 DVD 時存放的資料
找副檔名為 ifo 的檔案,那就是字幕檔
打開後,他會叫你選存放的位罝,就選你放 AVI 的地方
選取你要的章節,他會自動幫你分離好
之後把主檔名改成跟你的做好的 AVI 一樣,就會播放出來了
(1)
如果發現字幕跟影片不同步
安裝了 VobSub 後就可找到 subresync 的圖示,啟動軟件。
將由 VobSub 抽出的 .idx 拖入 subresync 內
即可看到每句字幕的出現時間及顯示的字幕
之後再作調整
這樣做出來的 avi 檔,畫面不會變模糊(有作 IVTC 所以不用去拉絲),也不會因 YUV 跟 RGB 之間的轉換
而失真,而且是採用地表上頂級的 Lanczos3 Resize 法,是畫面銳利度和檔案最好的平衡點,既銳利又
清晰
市上有許多那種只要點下一步就能把 DVD 轉成 AVI 的軟體
(像 Super DVD Ripper、1st DVD Ripper、DVDx、InterVideo DVD Copy、豪杰視頻通)
但小弟每個都測試過,沒有一套能勝過這個轉檔方法
因為原始 MPEG 資料是 YUV 4:2:0 的格式,那些軟體做 DivX/XviD 壓縮的時候,處理流程是:
DVD/VCD(YUV 4:2:0) -> DVD2AVI(YUV 4:2:0 -> YUV 4:2:2 -> YUV 4:4:4 -> RGB24) -> VFAPI(RGB24)
-> TMPGEnc/AviUtl/VirtualDub(RGB24) -> DivX/XviD Codec(RGB24 -> YUV 4:2:0) -> MPEG-4(YUV
4:2:0)
所以處理流程中間要經過好幾次 YUV <-> RGB 的轉換。這個轉換是有損的,做得越多次,原始的色彩資
訊就損失的越嚴重。
而寫這軟體的人就想到,反正最後轉成 MPEG 都要存成 YUV 4:2:0 的格式,那麼為什麼不乾脆一路到底,
全程都以 YUV 處理,這樣
1. 處理的資料量少。(YUV 的資料比 RGB 24/32 少非常多)
2. 不用轉換計算
所以速度快。再加上又可以避免 YUV <-> RGB 轉換的損失,豈不是一舉兩得?所以支援 YUV 的 Avisynth
2.5 就誕生了,但是目前 VirtualDub 還是不支援 YUV,所以要得到全程 YUV 處理的好處,必須使用
VirtualDubMod 這個軟體才行,這個改版才有支援 YUV(要選 Fast recompress)。
而 Avisynth 用法很簡單
寫好的 avs 可以重複拿來使用,不用每次都重頭做一次,只要改改檔名、路徑,馬上就可以全自動做好所
有需要做的處理,適合大量轉檔的時候使用。想想看,MPEG Decode, IVTC, Crop, Resize, 濾雜訊,全部
6. 所有的處理只要寫數行文字,存成 .avs,然後用 VirtualDub 開啟這個 avs,所有的工作就做好了,你只
需要選好 Codec,就可以開始壓縮了。而且下次要再壓縮時,不用重新在軟體中一個一個設置這些設定,
不必用好多個軟體連來連去,只要改這個 avs 檔,改改處理的檔名和路徑,用 VD 開啟,謝天謝地,所有
的工作又都完成了 ^^
1. Avisynth 的 filter 非常多,功能很強;例如 IVTC 吧,TMPGEnc 要做個半死,AviUtl 速度慢,如果用
Avisynth 的 IT plugin,只要寫短短數個字,IVTC 這個工作就完了,而且效果比 TMPGEnc 的自動補正還
好,這麼省力,老實說實在是非常好用。
2. 可以模組化,寫好的 function 可以重複載入使用;提供許多運算、條件判斷的操作,善用的話可以做出
非常變態的處理,這是其他軟體做不到的。
大家第一次看一定以為 3、4 步很麻煩,我第一次也是這麼認為
但第二次做時發現,第一次做的設定可以直接拿來用,更本不用做改變
接下來就做的非常輕鬆
像我大概玩第三、四次轉檔時,就連文章都不用看了
直接點一點,拉一拉就完成了,輕鬆的很
而壓出來的畫質直逼 DVD,如果 DVD 是 100 分
這壓的至少有 95 分(選最高畫質設定)
如果不是抓圖片下來比較,根本分不出的出來那個是 AVI,那個是 DVD
而檔案大小只有原始大小的 2/3~1/2 左右
相信我,第一次做不要怕麻煩,因為以後就很輕鬆
而你用過這方法後,相信你不會再用其他軟體了
因為根本沒有比這更好的壓縮軟體
想再把 AVI 轉 RMVB 的人請看這裡吧
http://swordfish.cool.ne.jp/cgi-bin/topic.cgi?forum=7&topic=1357&show=0
常見問題:
1) 我做到*.avs 這步後下面就無法繼續下去了我照您說的存成*.avs 檔了裡面的檔案路徑我都有對應我的目
錄位置可是我把用好的*.avs 拉到 VirtualDubMod 卻一直失敗...出現以下訊息:
Avisynth open failure
Evaluate : Unrecognized exception !
(C:d2vtest.avs,line2)
Solution:
載入 avs 檔時發生錯誤在我剛開始學的時候也是常發生
7. 後來我是如何解決的呢?
簡單的說就是一步一步檢查!
就以我提供的 avs 為例好了
LoadPlugin("C:Program FilesAviSynth 2.5pluginsMPEG2DEC.dll")
MPEG2Source("C:1.d2v")
LoadPlugin("C:Program FilesAviSynth 2.5pluginsIT.dll")
IT(fps=24,ref="TOP",blend=false)
Crop(8,0,704,480)
LanczosResize(640,360)
事實上可以拆成 4 個部分
LoadPlugin("C:Program FilesAviSynth 2.5pluginsMPEG2DEC.dll")
MPEG2Source("C:1.d2v")
LoadPlugin("C:Program FilesAviSynth 2.5pluginsIT.dll")
IT(fps=24,ref="TOP",blend=false)
Crop(8,0,704,480)
LanczosResize(640,360)
第一部份的意思就是先解碼 mpeg2 檔案:
LoadPlugin("C:Program FilesAviSynth 2.5pluginsMPEG2DEC.dll")-->先呼叫 Plugin
MPEG2Source("C:1.d2v")-->讀取 mpeg2 檔案
第二部分的意思就是對影片做 IVTC(也就是做 24fps 補正):
LoadPlugin("C:Program FilesAviSynth 2.5pluginsIT.dll")")-->先呼叫 Plugin
IT(fps=24,ref="TOP",blend=false)-->設定 Plugin 參數
如果你的 d2v 檔是用非 dvd2avi 1.76 版做的話...載入 avs 時就會錯誤!
因為 MPEG2DEC.dll 只吃 dvd2avi 1.76 版做的 d2v
第三部分的意思就是對影片做裁減畫面的動作:
Crop(8,0,704,480)-->(左右各砍 8 點,上下各砍 0 點,左右砍完的解析度,上下砍完的解析度)
因為 d2v 解出來的解析度是 720x480
所以數字 1,3 加起來一定 720,2,4 加起來一定是 480...一定要填對!
8. 第四部分的意思就是對影片做 resize 的動作:
LanczosResize(640,360)-->將上一行處理後的 704x480 畫面縮小成為 640x360 大小
這裡亂填倒是不會影響^^"...
當你把 avs 檔拉進 VirtualDubMod 視窗時...
VirtualDubMod 會檢查你的 avs 檔是否格式正確
而檢查時他是採由上而下檢查
也就是假設第一步就錯了...後面就不用玩了
所以我建議你...一步一步檢查!
LoadPlugin("E:AviSynth 2.5pluginsMPEG2DEC.dll")
MPEG2Source("E:RECPvr000go2.d2v")
LoadPlugin("E:AviSynth 2.5pluginsIT.dll")
IT(fps=30,ref="TOP",blend=false)
Crop(8,0,720,480)
LanczosResize(720,480)
把你的 avs 檔拆成 4 部分
LoadPlugin("E:AviSynth 2.5pluginsMPEG2DEC.dll")
MPEG2Source("E:RECPvr000go2.d2v")
LoadPlugin("E:AviSynth 2.5pluginsIT.dll")
IT(fps=30,ref="TOP",blend=false)
Crop(8,0,720,480)
LanczosResize(720,480)
接著先留第一部份就好...然後把 avs 拉進去看有沒有錯誤!
有錯誤那後面就不用玩了...
若拉進去沒問題...第一步就沒錯了...
接下來再改成載入第一跟第二部分...以此類推
這樣就能找出問題出在哪?
這樣才知道如何解決!
請你回去試試看吧!