FFmpeg 是一个非常强大的多媒体框架,可以用来处理音频、视频以及字幕文件。要将 WebVTT(.vtt)字幕文件添加到视频文件中,你可以使用 ffmpeg 的 subtitles 过滤器。以下是基本的命令格式:
ffmpeg -i input_video.mp4 -vf "subtitles=subtitle.vtt" -map 0:v -map 0:a -c copy output_video.mp4
这里的参数解释如下:
- -i input_video.mp4:指定输入视频文件。
- -vf "subtitles=subtitle.vtt":使用- subtitles过滤器来添加字幕文件- subtitle.vtt。
- -map 0:v:映射输入文件的第一个流(通常是视频流)到输出文件。
- -map 0:a:映射输入文件的音频流到输出文件。
- -c copy:复制原始视频和音频流,不进行重新编码。
- output_video.mp4:指定输出文件名。
请注意,这个命令会将字幕烧录到视频上,这意味着字幕将不可关闭。如果你想要生成一个包含单独字幕流的文件,可以使用以下命令:
ffmpeg -i input_video.mp4 -i subtitle.vtt -c:v copy -c:s mov_text output_video.mkv
在这个命令中:
- -i input_video.mp4和- -i subtitle.vtt:分别指定视频和字幕文件作为输入。
- -c:v copy:复制视频流,不进行重新编码。
- -c:s mov_text:指定字幕编码为- mov_text,这是一种常见的字幕编码格式。
- output_video.mkv:输出文件,这里使用了- .mkv扩展名,因为它支持多个视频、音频和字幕流。
确保你安装了最新版本的 FFmpeg,因为不同版本的 FFmpeg 可能支持的功能有所不同。如果你遇到任何问题,可以查看 FFmpeg 的官方文档或寻求社区的帮助。