I'm told it's possible to embed subtitles (.srt) into video files (.avi) using ffmpeg, but I can't find any mention of it in the man page. Is this possible? What command do I use?


3 Answers 3


From Pier's link, specifically:

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

This creates a hard-sub ("burns" the subtitles into the video images) so you can't hide the subtitles and the change is irreversible!

I've used this successfully with the current static git ffmpeg release.

  • Doesn't work. "Output file #0 does not contain any stream"
    – Rubi Shnol
    Apr 8, 2018 at 9:53
  • This filter requires ffmpeg to be compiled with --enable-libass, according documentation.
    – Nakamoto
    Mar 26, 2021 at 2:33
  • Thx, resulting subtitles was smaller than i am used to, i would increase 50%. Someone mention: subtitles=subtitle.srt:force_style='Fontsize=20' ffmpeg.org/ffmpeg-all.html
    – 16851556
    Jan 14, 2022 at 16:24

From man ffmpeg:

Subtitle options:

-scodec codec Force subtitle codec ('copy' to copy stream).

-newsubtitle Add a new subtitle stream to the current output stream.

-slang code Set the ISO 639 language code (3 letters) of the current subtitle stream.

So: ffmpeg -newsubtitle subtitles.srv -i video.avi ...

  • If I use instead of ... result.avi this command does not work At least one output file must be specified
    – xralf
    Oct 27, 2011 at 11:01
  • 3
    Of course, ... means "and whatever other options you need". Oct 27, 2011 at 11:09
  • Sufficient is ffmpeg -newsubtitle subtitles.srt -i video.avi result.avi but this ends with the message above. I hoped that result.avi is output file. I tried it with -o result.avi too but without success.
    – xralf
    Oct 27, 2011 at 11:22
  • 1
    I don't know why this didn't work for me (maybe wrong file or problem with ffmpeg). I tried this command instead mencoder movie.avi -sub movie.srt -o movie.hardsubs.avi -oac copy -ovc lavc -lavcopts vbitrate=1200
    – xralf
    Nov 8, 2011 at 10:07
  • @ShawnJ.Goff: This did not work for me either. What version of ffmpeg are you using, and what OS? Apr 7, 2012 at 20:52

ffmpeg developers are working with subtitle support, but as far as I know it's only working in the latest ffmpeg. mencoder will burn subtitles instantly, if you want to try that instead.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .