用 FFmpeg 给视频添加 SRT 字幕轨道
把外挂 .srt 字幕封装进 MP4,作为可开关的软字幕轨道,不重新编码、不损失画质。
执行 ffmpeg -i movie.mp4 -i movie.srt -c copy -c:s mov_text -metadata:s:s:0 language=eng output.mp4 即可将字幕内嵌为可开关轨道。
01命令
命令
$ ffmpeg -i movie.mp4 -i movie.srt -c copy -c:s mov_text -metadata:s:s:0 language=eng output.mp402作用说明
该命令把 .srt 文件作为第二个输入,同时用 -c copy 原样复制视频和音频流,几秒钟即可完成且无损画质。字幕会被转换为 MP4 容器支持的 mov_text 格式,并打上语言标记,方便播放器显示轨道名称。由于是软字幕,观众可在播放器里随时开关字幕,画面本身不会被改动。
03风险
!注意: 部分电视盒子和独立播放器不支持 mov_text 字幕;如果需要任何设备都能看到字幕,请改用硬字幕(烧录)方式。
04撤销
✓无需撤销——该命令不会改变持久状态。
05来源
- ffmpeg(1) — Linux manual page依据: Documents multiple inputs, per-stream codec selection with -c:s, and stream-specific metadata such as language tags.
- FFmpeg Formats Documentation (mov_text subtitle codec)依据: The MP4 container stores subtitles as mov_text; ffmpeg maps a second input to a subtitle stream with -c:s mov_text.
最后验证: 2026-09-18 · 分类: 媒体