Board logo

主題: [教學][轉貼] AviSynth+VobSub 5 秒鐘加上字幕! [打印本頁]

發表人: arkio    時間: 2003-8-12 05:42 AM     主題: [教學][轉貼] AviSynth+VobSub 5 秒鐘加上字幕!

[教學] AviSynth+VobSub 5 秒鐘加上字幕!
by:沈晟

AviSynth 是一件非常奇怪的事物。既可以說它十分難,也可以說他非常簡單。
不會用的人對她摸不著頭腦,用過她的人則對她愛不釋手。
到底AviSynth十個什麼樣的東西?我們就拿 avi 加上字幕編輯的問題,
來見識一下5秒鐘完成為Avi原文件貼上字幕的功能吧。

很多人在為視頻文件加上字幕的處理上,
採用了通過DirectShow + DVobSub 自動調用avi文件和同目錄下的同名文件的方法。
不過,坦白地說,這樣的調用方法不但效率低速度慢,
而且並不能保證在所有的系統或者任何情況下都能穩定。

那麼有沒有更好的辦法?這裡有一個答案:AviSynth。

AviSynth是一種腳本話的視頻處理工具。
與常見的Win32程序不同,她完全沒有GUI或者Consol界面,
所有的操作全部取決於你用notepad的時候,鍵入的寥寥幾個參數。
其特點是效率高,速度快,接口和源代碼開放,穩定。

首先,可以到 http://sourceforge.net/projects/avisynth2/下載安裝最新版本 AviSynth。
現在2.5.2中還包括一個ffvfw包,可以讓你的系統把avs(AviSynth腳本文件)當成普通的視頻文件打開甚至播放。

接著,可以到 http://sourceforge.net/projects/guliverkli/下載安裝最新版本的VSFliter,
並確認將包中VSFliter.dll複製到 %Windir%\System32 目錄下,
並運行了 regsvr32 VSFilter.dll 進行註冊。

現在用Notepad建立一個空白的文本文件,並將之命名為 xxx.avs。

接下來在這個文本文件中鍵入這樣3行文字:
-------------------

AVISource("C:\Video\BDTH-YFdrG.avi")
LoadPlugin("VSFilter.dll")
VobSub("C:\Video\BDTH-YFdrG.idx")

-------------------
現在隨便你用什麼軟件,Tmpgenc、CCE或者是VD來打開這個avs文件,
你都可以看 vobdub 已經準確地出現在視頻文件之中。

當然,用文本字幕時,語句需要些許變化:
-------------------

AVISource("C:\Video\BDTH-YFdrG.avi")
LoadPlugin("VSFilter.dll")
TextSub("C:\Video\BDTH-YFdrG.srt")

-------------------
現在,文本字幕也會出現在視頻圖像中了。

那麼,這簡單的三行文字代表什麼?
第一行 AVISource() 命令軟件將右側括號中的文件當作avi標準文件來打開編輯;
第二行 LoadPlugin 命令,要求AviSynth在處理時調入括號中的插件,
本例中打開了VSFilter.dll插件,就可以令AviSynth支持vobsub字幕;
第三行 VobSub() 或者 TextSub() 命令,則是Vobsub插件自定義的命令,
可以將括號中的字幕文件加入視頻匯總流,最終輸出到任何打開avs文件視頻編輯軟件上。

神奇的 AviSynth 就是這樣的簡單。
不過目前調入字幕時還沒有使用到VobSUB()或者TextSub()命令中的高級部分,
所有字幕的顯示設定將依賴於Vobsub的默認設置。
語種選擇取決於idx文件中的 langidx: 指數。
您也可以通過rundll32 VSFilter,DirectVobSub 可進入設定面板。
發表人: mysheros    時間: 2006-11-7 10:57 AM

請問,為什麼我會開啟AVISource錯誤??

顯示AVIFileSource:couldn't open file 'H:\xxx.avi'  (H:\xxx.avs , line 1)

請問我該怎麼解決呢?




歡迎光臨 TWed2k (http://twed2k.org/) Powered by Discuz! 4.1.0