

To disable subtitle output/recording, use -sn. Note that this requires re-encoding, so it will by much slower than using softsubs.

Use the subtitles filter to "burn-in" text based subtitle formats (SRT, ASS, VTT, etc). Hardsubs Text based subtitle format inputs How to use the -map option to choose streams.Same as above but use the -map option to choose the first video stream, second audio stream, and third subtitle stream: ffmpeg -i input.mkv -map 0:v:0 -map 0:a:1 -map 0:s:2 -c:v libx264 -c:a aac -c:s mov_text -metadata:s:s:0 language=eng output.mp4 Same as above but re-encode the video and audio to formats compatible with the MP4 container (H.264 video: ffmpeg -i input.mkv -map 0 -c:v libx264 -c:a aac -c:s mov_text -metadata:s:s:0 language=eng -metadata:s:s:1 language=ipk output.mp4 ffmpeg -i input.mkv -map 0 -c copy -c:s copy -metadata:s:s:0 language=eng -metadata:s:s:1 language=ipk output.mp4 For all formats that support streaming text format subtitles:īasic example using default stream selection behavior while stream copying the audio: ffmpeg -i input.mkv -c copy -c:s copy output.mp4Įxample to stream copy all of the video and audio streams, convert the all text based subtitle input streams (SRT, ASS, VTT, etc) to the streaming text format, and set the language for the first two subtitle streams.
