我有一个带有多个字幕流的 mkv。我知道我可以使用 mkvextract 将这些字幕流之一提取到文件中,例如 sub.srt。然后我可以使用 ffmpeg 将这些字幕刻录到新视频中,如下所示:
ffmpeg -i video.mkv -vf subtitles=sub.srt out.mp4
Run Code Online (Sandbox Code Playgroud)
我也知道我可以使用 -map 来选择视频、音频和字幕轨道并将它们编码到新视频中,就像这样:
ffmpeg -i video.mkv -map 0:0 -map 0:1 -map 0:4 -c:v copy -c:a copy -c:s copy out.mp4
Run Code Online (Sandbox Code Playgroud)
但是,我无法弄清楚如何将视频转码并将字幕刻录到新文件中(不仅仅是添加字幕轨道,而是将它们刻录到视频中),而不是从字幕文件中读取它,而是直接从旧的视频流本身。
有任何想法吗?