将视频和字幕文件合并为一个视频?

将视频和字幕文件合并为一个视频?

我有一个视频文件(格式为 .mp4、.mkv、.avi 或其他格式)和一个字幕文件 (.srt)。我想将字幕文件嵌入视频文件,这样我就只有一个文件 - 视频文件,而不是视频和字幕文件。

有可能吗?怎样做?

答案1

MKVtoolnix是另一个易于使用的选项,因为您已经拥有所需的文件。您可以将它们合并到 MKV 容器中,而无需对原始文件进行任何更改。它有一个不错的 GUI 来指导您完成合并过程。

我看到 user1301428 提到了 Handbrake,这也是一款非常常见/流行的工具。我不太熟悉它,但如果它不会重新编码源 AVI,那么它应该很棒。

答案2

一个免费的跨平台解决方案,FFmpeg,它会进行比特流复制,因此即使对于大文件,也不会花费超过几秒钟的时间:

ffmpeg -i input.mp4 -i subtitles.srt -c:s mov_text -c:v copy -c:a copy -map 0 output.mp4

这适用于 MP4。请注意,某些字幕格式可能不会自动与所选的输出格式兼容,因此您必须在之后更改编解码器-c:s

  • MP4:使用mov_text字幕编解码器(如上例所示),它实现了MPEG-4 第 17 部分

  • MKV:使用srtsubripssa。MKVass不支持mov_text

  • 视频:嵌入字幕非常成问题。理论上它们支持 SubRip 和 SSA/ASS 字幕,但只能通过第三方软件。

请参阅维基百科容器及其支持的字幕格式列表

使用 Handbrake 等专用视频编码程序会重新编码你的视频,这会降低视频质量,并可能导致小时进行编码——这就是为什么您应该检查工具是否支持复制视频和音频比特流。

答案3

您可以使用手刹。在“字幕”选项卡中,您只需选择字幕文件,然后启动编码。

答案4

ffmpeg -i video.avi -vf subtitles=subtitle.srt out.avi

相关内容