8

I'm looking for a way that burning subtitles to mp4 videos with ffmpeg.

I used the following command to convert and burn subtitle but its not worked !

ffmpeg -i subtitle.vtt subtitle.srt
ffmpeg -i video.mp4 -i subtitle.vtt -c copy -c:s mov_text out.mp4
Stream mapping:
Stream #0:0 -> #0:0 (copy)
Stream #0:1 -> #0:1 (copy)
Stream #1:0 -> #0:2 (webvtt -> mov_text)
Press [q] to stop, [?] for help
[mp4 @ 0x80aee0] Encoder did not produce proper pts, making some up.
frame= 2692 fps=1139 q=-1.0 Lsize=    2416kB time=00:01:29.83 bitrate= 220.3kbits/s
video:1264kB audio:1053kB subtitle:2 global headers:0kB muxing overhead 4.178210%
unbl0ck3r
  • 213

1 Answers1

11

Your command is muxing the subtitles (putting into the video file, so client can turn them on and off); not burning them to the video.

Since you want to burn them into the video, you should first convert your .vtt to .ass (note: your ffmpeg must have been built with libass):

ffmpeg -i subtitle.vtt subtitle.ass

Then burn the subtitles to the video:

ffmpeg -i video.mp4 -vf ass=subtitle.ass out.mp4

Now out.mp4 will have burned subtitles.

Iskar
  • 351
  • I used these commands but still subtitle does not show up – unbl0ck3r Dec 27 '16 at 16:25
  • Did you get any errors? Are you sure your vtt subtitles are proper? I just tested the commands again and it worked for me. – Iskar Dec 28 '16 at 08:07
  • I download a auto generated subtitle from youtube video as webvtt format(using youtube-dl). then with ffmpeg -i subtitle.vtt subtitle.ass convert in and after that burn subtitle to video. but thats not worked. – unbl0ck3r Dec 28 '16 at 13:24