RSS   



  可打印版本 | 推薦給朋友 | 訂閱主題 | 收藏主題 | 純文字版  


 


 
主題: [求助] [求助]有什麼軟體可以編輯Vobsub字幕(sub,idx)   字型大小:||| 
Acute
論壇第一大毒王
等級: 18等級: 18等級: 18等級: 18等級: 18
論壇第一小神童

 . 積分: 3281
 . 精華: 8
 . 文章: 11574
 . 收花: 14037 支
 . 送花: 3260 支
 . 比例: 0.23
 . 在線: 323 小時
 . 瀏覽: 2250 頁
 . 註冊: 8162
 . 失蹤: 5514
#1 : 2005-1-22 03:13 PM     全部回覆 引言回覆

版主 innison : 阿Q好專業喔,幫叔叔加分

評分:+1   
IDX/SUB 字幕, 要編輯, 應該得找DVD 製作軟體嘗試 (必須能編輯字幕的那種)
直接編輯恐怕不可行, 因為SUB 檔案裏面的字幕, 直接是DVD 的字幕抽出, 所以含有字幕ID
直接改變IDX file, 將無法得到正確的ID, 所以還是不會被解釋出來

程式我沒有, 但是我知道如何手動修改, 如果你不怕麻煩的話
DVD 字幕編號從0x20 - 0x3F 最多32 個, 編號位置會變動, 但是, 可以人工解釋, 方法如下:
00 00 01 BA 44 07 0C CE 85 D9 01 89 C3 F8 00 00
01 BD
07 EC 81 81 08 21 01 C3 E7 37 1E 60 3A 20
0E 10 0D F2

00 00 01 BA 表示他是MPEG1/MPEG2 的封包, 每個封包起點位於2048的位置
00 00 01 BD 表示他是字幕 (基本上, SUB 檔案內, 一定是字幕, so, 每2K 出現一次, 呵呵)
重點來了, 00 00 01 BD 往後算第五個bytes, 也就是上面標示08 的位置, 表示header長度, 從該位置往後加該數值+1 的位置, 就是字幕的編號, 也就是藍色標示"20" 的那一個
20 表示字幕ID=0, 21表示字幕ID=1以此類推

例如, 假設你的IDX 內容是:
# Korean
id: ko, index: 0   這個是編號0, 資料用0x20 表示
# Decomment next line to activate alternative name in DirectVobSub / Windows Media Player 6.x
# alt: Korean
# Vob/Cell ID: 1, 1 (PTS: 0)
timestamp: 00:01:21:948, filepos: 000000000
timestamp: 00:01:27:153, filepos: 000001000
timestamp: 00:01:33:059, filepos: 000002000
:
:
# English
id: en, index: 1   這個是編號1, 資料用0x21 表示
# Decomment next line to activate alternative name in DirectVobSub / Windows Media Player 6.x
# alt: English
# Vob/Cell ID: 1, 1 (PTS: 0)
timestamp: 00:00:33:666, filepos: 000247800
timestamp: 00:00:38:271, filepos: 000248800
:
:

現在, 我假設要把Korean 前兩個字幕放到英文裏面的最前面, 所以, IDX 改變的部份是: (注意, 我更動時間了喔, 不然字幕時間重疊會出問題的)
# English
id: en, index: 1
# Decomment next line to activate alternative name in DirectVobSub / Windows Media Player 6.x
# alt: English
# Vob/Cell ID: 1, 1 (PTS: 0)
timestamp: 00:00:21:948, filepos: 000000000
timestamp: 00:00:27:153, filepos: 000001000

timestamp: 00:00:33:666, filepos: 000247800
timestamp: 00:00:38:271, filepos: 000248800
:
:

然後我需要變更檔案0x0000 - 0x1FFF 這8K 的內容(因為第三個起點是0x2000), 每2K 一個單位, 所以, 總共需要改四個
我把四個內容都列出來給你看:
第一個原始資料: (檔案位置: 0x0000)
00 00 01 BA 44 07 0C CE 85 D9 01 89 C3 F8 00 00
01 BD
07 EC 81 81 08 21 01 C3 E7 37 1E 60 3A 20
0E 10 0D F2
變更後的第一個:
00 00 01 BA 44 07 0C CE 85 D9 01 89 C3 F8 00 00
01 BD
07 EC 81 81 08 21 01 C3 E7 37 1E 60 3A 21
0E 10 0D F2

第二個原始資料: (檔案位置: 0x0800)
00 00 01 BA 44 07 0C D3 1C 2B 01 89 C3 F8 00 00
01 BD
06 34 81 00 00 20
變更後的第二個資料:
00 00 01 BA 44 07 0C D3 1C 2B 01 89 C3 F8 00 00
01 BD
06 34 81 00 00 21
PS: 這兒因為header size = 0, 所以, 下一個bytes 就是subtitle ID

第三個原始資料: (檔案位置: 0x1000)
00 00 01 BA 44 07 7E 0F AC 2B 01 89 C3 F8 00 00
01 BD
07 EC 81 80 05 21 01 E1 33 1F 20 08 4A 08
2C
變更後的第三個資料:
00 00 01 BA 44 07 7E 0F AC 2B 01 89 C3 F8 00 00
01 BD
07 EC 81 80 05 21 01 E1 33 1F 21 08 4A 08
2C

第四個原始資料: (檔案位置: 0x1800)
00 00 01 BA 44 07 7E 14 3C D7 01 89 C3 F8 00 00
01 BD
00 6B 81 00 00 20 6D 67
變更後的第四個資料:
00 00 01 BA 44 07 7E 14 3C D7 01 89 C3 F8 00 00
01 BD
00 6B 81 00 00 21 6D 67

這樣子, 就可以在英文字幕撥放時, 看見韓文字幕跑出來嚕
當然, 這個方法絕對是在你只希望讓另一個語文字幕, 有幾個出現的條件下
不然每2K 的位置都得人工改一次, 保證把你累死, 呵呵
另一個方法, 就是自己寫個小程式根據上面的規則, 去變更字幕的編號即可
有程式輔助, 想改幾個字幕都可以 ^^"

IDX/SUB 只要ID 不匹配, 就不會顯示, 所以, 上述改法改過之後的SUB file
韓文字幕將會缺少兩句, 而英文字幕跑出兩句韓文字幕
沒有方法可以讓同一個字幕影像代表兩種或多種字幕的編號!!!!

Acute.

[Acute 在 2005-1-22 03:40 PM 作了最後編輯]



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Acute
論壇第一大毒王
等級: 18等級: 18等級: 18等級: 18等級: 18
論壇第一小神童

 . 積分: 3281
 . 精華: 8
 . 文章: 11574
 . 收花: 14037 支
 . 送花: 3260 支
 . 比例: 0.23
 . 在線: 323 小時
 . 瀏覽: 2250 頁
 . 註冊: 8162
 . 失蹤: 5514
#2 : 2005-1-22 05:09 PM     全部回覆 引言回覆


引用:
lovelegend寫到:

引用:
Acute寫到:
程式我沒有, 但是我知道如何手動修改, 如果你不怕麻煩的話
DVD 字幕編號從0x20 - 0x3F 最多32 個, 編號位置會變動, 但是, 可以人工解釋, 方法如下:
00 00 01 BA 44 07 0C CE 85 D9 01 89 C3 F8 00 00
01 BD
07 EC 81 81 08 21 01 C3 E7 37 1E 60 3A 20
0E 10 0D F2


不明... 是用 Hex Editor 來開 .sub 檔嗎?


對阿, 那些都是Hex 資料
用UE32 打開, 就會自動進入Hex 模式
如果沒有進入Hex 模式, 自己去選單選Hex 模式即可 ^^"

Acute.



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記
Acute
論壇第一大毒王
等級: 18等級: 18等級: 18等級: 18等級: 18
論壇第一小神童

 . 積分: 3281
 . 精華: 8
 . 文章: 11574
 . 收花: 14037 支
 . 送花: 3260 支
 . 比例: 0.23
 . 在線: 323 小時
 . 瀏覽: 2250 頁
 . 註冊: 8162
 . 失蹤: 5514
#3 : 2005-1-22 05:17 PM     全部回覆 引言回覆


引用:
innison寫到:

引用:
Acute寫到:
另一個方法, 就是自己寫個小程式根據上面的規則, 去變更字幕的編號即可
有程式輔助, 想改幾個字幕都可以 ^^"

阿Q叔叔真厲害,給大家寫一個吧!


innison 叔叔, 你怎反而叫我叔叔, 搞錯了吧

最近半年都剛好在寫跟MPEG1/MPEG2/MPEG4 相關的程式
這個月恰好在寫解釋DVD title 的程式
所以, 剛好知道那些東西的含意
這個問題早一個月出現, 我也是不知道答案的, 哈哈

Acute.



[如果你喜歡本文章,就按本文章之鮮花~送花給作者吧,你的支持就是別人的動力來源]
本文連接  
檢閱個人資料  發私人訊息  Blog  快速回覆 新增/修改 爬文標記

   

快速回覆
表情符號

更多 Smilies

字型大小 : |||      [完成後可按 Ctrl+Enter 發佈]        

溫馨提示:本區開放遊客瀏覽。
選項:
關閉 URL 識別    關閉 表情符號    關閉 Discuz! 代碼    使用個人簽名    接收新回覆信件通知
發表時自動複製內容   [立即複製] (IE only)


 



所在時區為 GMT+8, 現在時間是 2024-9-29 03:33 PM
清除 Cookies - 連絡我們 - TWed2k © 2001-2046 - 純文字版 - 說明
Discuz! 0.1 | Processed in 0.024590 second(s), 8 queries , Qzip disabled