1

The main reason for this post is that I have movie.mp4 that I have downloaded an SRT for. When I manually add the SRT VLC uses its settings to change the font/size etc of the SRT. But if I Embed the subtitle file, it no longer works. I have found this is an issue with mp4/mov_text!

It is possible to Embed subtitles into MP4 BUT I have found out that VLC ignores subtitle Settings for MP4 and Can't see soft-coded subtitles of MP4

I want to convert

movie.mp4

to

movie.mkv

Without re-encoding (LossLess) & Add subtitles.

  • I am pretty ridiculous, I hate having 2 files (srt and mp4), so my only solution is too convert to MKV. The simple matter is that embedded mp4 subtitles don't work well and you are better off just adding them manually from downloaded SRT or following my guide to convert to MKV loselessly – FreeSoftwareServers Oct 15 '15 at 5:49
3

This command will not work with a mp4 with embedded subtitles & extracting subtitles from an Mp4 will result in MOV_TEXT style subtitle file, which is not what you want. Basically, google for an SRT, test it out and then we are ready to go.

If you have embedded SRT you also need a seperate file with just video and audio. To strip the srt streams, leaving the just video and audio you want.

Example:

ffmpeg -i movie.mp4 -map 0:0 -vcodec copy -map 0:1 -acodec copy movienosubs.mp4

So lets assume you now have

subtitle.srt
movienosubs.mp4

The FFMPEG command would be this: (Note this only copies the first audio stream, you may need to mess around with mapping streams if you wan't to get more complicated, but you get the idea)

ffmpeg -i movienosubs.mp4 -i subtitle.srt -c:v copy -c:a copy -c:s copy movieFINAL.mkv
3

MKV file is a container in which you may put video, audio and text(subtitle). If you have difficulty with command line ffmpeg tool (as already suggested), you may try GUI tools such as MKVToolnix. There is no re-encoding during this proces, it's practically copying only.

  • +1. Not because it is a proper answer, but because it touches a key issue. Namely the title asks something not possible. Maybe it should read 'convert MP4 to same MP4 (in a different container)'. – Hennes Oct 15 '15 at 12:12
  • Changed to your Title, I get what you are saying, I am wrapping the MP4 in another container basically, but hey, it gets the job done! I only have one file! – FreeSoftwareServers Nov 29 '15 at 1:30
0

You can use my program dmMediaConverter (which is a FFmpeg GUI exposing some of its features), it does just that, you can copy all the streams without transcoding. http://dmsimpleapps.blogspot.ro/2014/04/dmmediaconverter.html

enter image description here

  • 1
    You might want to add that dmMediaConverter actually uses FFmpeg. It is merely (a handy!) frontend for some of its features. – Hennes Oct 15 '15 at 12:14
  • Yes you are right, i have corrected my post....btw that was stated on my site in the first line. ;) – mdalacu Oct 15 '15 at 12:56
  • 1
    I know, I looked. And the logo in the right lower corner was also a rather big hint. Still, we try to avoid link rot on the SE sites, which means putting all relevant details in the answer rather than 'see this site' or 'google on this'. – Hennes Oct 15 '15 at 13:00

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.