PCDVD數位科技討論區
PCDVD數位科技討論區   註冊 常見問題 標記討論區為已讀

回到   PCDVD數位科技討論區 > 數位影音討論群組 > DVD 討論區 > 軟體字幕討論區
帳戶
密碼
 

回應
 
主題工具
tabo001
New Member
 

加入日期: Sep 2005
文章: 1
[分享]二個使用TheFilmMachine做DVD時加字幕的小心得

我在翻舊帖時看到,有關使用TheFilmMachine做DVD時,字幕出現問題的相關文章。及後經過一翻測試後,得出一個不必使用srt檔及避免出現亂碼的方法 — 就是直接的使用ssa字幕檔!

我想不少人應該也留意到,TFM其實是以一次過用一按式運行其他外掛程式的方法去作DVD。從log中看到它第一步作的就像是以下的步驟:

Writing C:Program Files\The FilmMachine\Output\TFM_Subtitle_File.ssa
Saving Subtitle File

它將srt轉換成ssa檔。問題就在這裡。從前NY_Piz大大的文章中也指出過這一點。

既然如此,為何我們不將已經編輯好的ssa字幕檔直接用到裡面?相信大家都知道,在ssa中,我們是可以先行設定好編碼。用文本處理器打開ssa字幕檔,不難找到像下面的字串:

Style: Default,华文细黑,30,&Hffffe8,&H6a0000,&H6a0000,&H6a0000,-1,0,1,1,0,2,20,20,0,0,134

最尾的那個數字就是決定編碼的代號。134是GB,136則是Big5,可按自己須要先行設定。

接著存檔後,把那個ssa字幕檔,從新命名為TFM_Subtitle_File.ssa。然後開始使用TLM。當可以選擇字幕的時間,隨便用一個srt字幕放進去。這個時間放什麼也沒差,反正接著我們便要改回來。

打開TLM的目錄,看著Output的資料夾,當我們按下TLM中的Make DVD按扭後,你便會立刻發現生出幾個檔。TFM_Avisynth_Script_File.avs 和 TFM_Subtitle_File.ssa 也在其中。

TFM_Avisynth_Script_File.avs 先不用理會,下面另有一個心得會用到這個。

現在Output中的這個 TFM_Subtitle_File.ssa 是一個沒用的檔案 (別忘了這個檔是用你那個隨便加進的srt生成) 那麼我們現做的就是把先前做好的那個 TFM_Subtitle_File.ssa 直接貼進去取代原有的那個就成了。有一點要注意的是,一定要在Encoder開始前取代好,不然便會失敗讀到沒用的檔案。但用CCE的朋友不用擔心,我自己試驗過,利用CCE轉檔時,它會先彈出設定窗。大可利用那個空檔慢慢做。利用其他Encoder的我沒試過,所以也不清楚會不會不夠時間,有興趣的同好可以試一下。

另外一個心得,則是在做字幕時,會發現字幕老是會走進畫面裡。在做DVD時,假設一般都用16:9的形式來看吧?反正上下還有那麼多空間,就像我們用外掛字幕看DivX時一樣,字幕不會擋著畫面才看的清楚。那麼我們怎麼利用那些沒用的地方去放字幕?

首要是我們先用文本調好想要的字幕大小及位置。(一般其實若然字幕在MPC上看的爽的話都不用再改了,覺的不好才需要再修改。)

這次我們需要用到Output資料夾內的
TFM_Avisynth_Script_File.avs了。用文本處理器打開這個檔,會看到像下面的東西:

# 4:3 encoding
Import("C:Program Files\The FilmMachine\AviSynth\ResampleAudio.avs")
LoadPlugin("C:Program Files\The FilmMachine\VSFilter.dll")
AviSource("E:\test.avi", false)
TextSub("C:Program Files\The FilmMachine\Output\TFM_Subtitle_File.ssa")
ConvertToYUY2()
LanczosResize(720,356,0.0,0.6)
AddBorders(0,62,0,62)

ResampleAudio(44100)

紅色的是要注意的地方。其實這個檔是像一般程式一樣是有從上到下依序運行的。從上面看到,它叫先呼叫Textsub插叫弄好字幕再轉換尺寸及加上下黑邊。從邏輯去想的話,可以想到,若然我們先叫它轉換尺寸及加上下黑邊再弄字幕上去,不正是我們想要的效果嗎?

這樣子的話,我們只需要叫TLM這樣做便成。那麼我們就把次序改一下,像下面的樣子:

# 4:3 encoding
Import("D:\The FilmMachine\AviSynth\ResampleAudio.avs")
LoadPlugin("D:\The FilmMachine\VSFilter.dll")
AviSource("E:\test.avi", false)
LanczosResize(720,356,0.0,0.6)
AddBorders(0,62,0,62)
TextSub("D:\The FilmMachine\Output\TFM_Subtitle_File.ssa")
ConvertToYUY2()

ResampleAudio(44100)

那樣我們便可充份做到我們在VirtualDub中用Textsub和Resize所做到的效果。不用再局限在TLM自己寫的程序上面。

TLM的確是一個好東東,方便易用,省掉很多麻煩,只是在字幕上面的限制有點給他Orz,不過用這個方法的話,應該可以解決到這方面的問題。

希望這兩個小心得會對大家有用。
     
      

此文章於 2005-10-01 01:16 AM 被 tabo001 編輯.
舊 2005-10-01, 01:14 AM #1
回應時引用此文章
tabo001離線中  


回應


POPIN
主題工具

發表文章規則
不可以發起新主題
不可以回應主題
不可以上傳附加檔案
不可以編輯您的文章

vB 代碼打開
[IMG]代碼打開
HTML代碼關閉



所有的時間均為GMT +8。 現在的時間是02:40 AM.


vBulletin Version 3.0.1
powered_by_vbulletin 2025。