猜你喜欢: mkv, MKV解包, mkv 解包
mkv字幕分离说明
目的: 有些 avi 影片檔是以 mkv 方式包装, 当要以 TMPGEnc Plus 转 mpg, 以
方便烧录成 VCD 时, 会发现无法显示字幕, 如果可将封装于档案内的字幕
档分离出来的话, 便以 avi + 字幕 方式转出有字幕的 mpg 檔 (方法网上
已有广泛讨论, 此处不再描述).
ps : a. 此类 .avi 档案, 可以更名为 .mkv, 一样可以正常操作.
或将 .mkv 档案, 更名为 .avi , 以便利用 TMPGEnc Plus 转 .mpg 档案
b. 若为 .avi 档案, 可利用GSpot软件, 帮忙识别为何种封装方式.
(1) 到以下网站下载 mkvtoolnix软件及mkvtoolnix runtime archive
http://www.bunkus.org/videotools/mkvtoolnix/ Downloads -> Windows ->
1. 下载 MKVToolnix v1.5.0
2. 下载 runtime (mkvtoolnix-runtime.rar)
(2) 两者都要下载, 然后所有档案解压到同一数据夹(例如 C:\MKV)上.
(3) 本文件以该软件所提供命令列操作为主, 不同操作系统进入命令列方式如下
a.(9'x) 开始 -> 程序集 -> 附属应用程序 -> MS-DOS 模式 -> 出现命令列窗口
b.(XP ) 开始 -> 执行 -> 输入 cmd -> 确定 -> 出现命令列窗口
(4) 用 mkvmerge 或 mkvinfo 都可以看到字幕在第几个 tracks
或者使用其提供的 GUI 程序也可以找到字幕所在 track 及使用的语言.
C:\MKV>mkvmerge -i film.avi
File 'film.avi': container: Matroska
Track ID 1: video (V_MS/VFW/FOURCC, XVID)
Track ID 2: audio (A_MPEG/L3)
Track ID 3: subtitles (S_TEXT/SSA) <- 字幕所在 track
Track ID 4: subtitles (S_TEXT/SSA) <- 字幕所在 track
C:\MKV>mkvinfo -g film.avi
...(略)
(MKVInfo) | + A track at 397
(MKVInfo) | + Track number: 3 at 400
(MKVInfo) | + Track UID: 1051997168 at 403
(MKVInfo) | + Track type: subtitles at 410
(MKVInfo) | + Codec ID: S_TEXT/ASS at 413
(MKVInfo) | + CodecPrivate, length 1254 at 425
(MKVInfo) | + Language: chi at 1683 <- 使用的语言
(MKVInfo) | + Lacing flag: 0 at 1690
(MKVInfo) | + A track at 1693
(MKVInfo) | + Track number: 4 at 1696
(MKVInfo) | + Track UID: 449712430 at 1699
(MKVInfo) | + Track type: subtitles at 1706
(MKVInfo) | + Codec ID: S_TEXT/ASS at 1709
(MKVInfo) | + CodecPrivate, length 1254 at 1721
(MKVInfo) | + Default flag: 0 at 2979
(MKVInfo) | + Language: eng at 2982 <- 使用的语言
(MKVInfo) | + Lacing flag: 0 at 2989
(5) 分离字幕的指令
C:\MKV>mkvextract tracks film.avi -c UTF-8 3:film.ssa
Extracting track ID 3 to a SSA/ASS file 'film.ssa'.
progress: 100%
ps : a. 指定所要国家语言的字幕 track: 例如 track 3 <- 国语
b. 在 UTF-8 后面的 3 是 track 位置, 后面是你自己命名的字幕檔名
c. 不加 UTF-8 这个参数, 分离出来的字幕档会变乱码
(6) film.ssa 即为所要的字幕档了.
(7) << 心得 >>
a. 虽然档名都是 .avi 檔, 但档案封装方式却有各种不同方式, 所以必须搭
配各种的不同的 codec 译码, 好让操作系统辨识.
b. avi 影片檔, 可内含各种独立的字幕档, 因此观看时可作选择, 也可利用
软件将其抽离或加入. 而像rmvb影片文件则无此结构, 故其字幕无法作任何
修改.
(8) 以上为仅简要说明, 还望各位同好先进多多指教.