用 mkvextract 提取 MKV 内嵌字幕

把 MKV 里的字幕轨导出成独立 .srt 文件,方便播放器外挂或翻译。

Linux视频字幕命令行MKV 工具低风险
先用 mkvmerge -i movie.mkv 查看各轨道编号,再运行 mkvextract tracks movie.mkv 3:subtitles.srt 把 3 号轨导出为 SRT 字幕。

01命令

命令
$ mkvextract tracks movie.mkv 3:subtitles.srt

02作用说明

MKV 把字幕作为独立轨道封装,mkvextract(mkvtoolnix 套件的一部分)可以把轨道、附件、章节、标签等都重新分离成独立文件,源文件不受影响。SRT/ASS 文本字幕和 VobSub/PGS 图形字幕都支持,图形字幕想要纯文本还需要 OCR。一条命令可以同时导出多条轨道,后面接着写 '编号:文件名' 即可。

03风险

风险低风险
使用条件mkvtoolnix package; use mkvmerge -i or mkvinfo to find track numbers first
!注意: 轨道编号以 mkvmerge -i 的输出为准,不是播放器界面上显示的序号——编号选错会静默导出错误的轨道或直接报错。

04撤销

✓无需撤销——该命令不会改变持久状态。

05来源

  • mkvextract(1) — Debian man page (mkvtoolnix)
    Debian manpages · community · 2026-09-17
    依据: Man page header 'mkvextract — extract elements from Matroska files into other files' and the tracks mode with TID:dest-name syntax appear in the text.
  • mkvextract(1) — extract elements from Matroska files
    Ubuntu manpages · community · 2026-09-17
    依据: Man page documents the 'tracks' extraction mode ('tracks source-file [options] TID1:dest-name1...') and SRT subtitle output; confirms 'mkvextract' and 'tracks' appear in the text.

最后验证: 2026-09-19 · 分类: 媒体