lisamelton / other_video_transcoding

Other tools to transcode videos.
MIT License
555 stars 26 forks source link

Trouble burning in subtitles from Blu-ray to MP4 #180

Closed wassilywabbit closed 1 year ago

wassilywabbit commented 1 year ago

I am trying to transcode the Criterion Blu-ray of The Piano to MP4 (so it can be in my TV library on my iPad with all my purchased media), and I am unable to get the subtitles to render. According to VLC, there are 2 subtitle streams in the ripped MKV. Stream 4 only shows English subtitles for (some of) the Maori speech, and Stream 5 shows English subtitles for EVERYTHING (English & Maori) for the entire movie.

This is the command that I started with:

sudo other-transcode --mp4 --vt --crop 22:22:0:0 --main-audio 1 --add-audio 3 --add-subtitle 4 /Volumes/Stuff/DVD\ ->\ iPod/The\ Piano/THE\ PIANO_t00.mkv

but I have also tried --add-subtitle 5 / --burn-subtitle 4 / --burn-subtitle 5

do I need to add the =forced switch to --add-subtitle?

I'd love to get a handle on the subtitles, as a lot of the movies I want to rip have subtitles.

Please let me know if you need more information.

The Piano subtitles

lisamelton commented 1 year ago

@wassilywabbit The reason you cannot burn any subtitles is because you're using the wrong track numbers to identify them. In the case of this particular video, your subtitle track numbers are not 4 and 5. Those are the stream numbers. Your subtitle track numbers are simply 1 and 2.

You can always use the --scan option of other-transcode to identify the track numbers of all of your streams, like this:

other-transcode --scan /path/to/input.mkv

That will print out a list of your streams identifying their track numbers and other characteristics.

Does that help?

wassilywabbit commented 1 year ago

That seems to have done the trick. I thought I had tried with subtitle track 1, but that might have been with --add-subtitle, which still doesn't work; it generates this error:

[mp4 @ 0x7f853790a940] Could not find tag for codec hdmv_pgs_subtitle in stream #3, codec not currently supported in container Could not write header for output file #0 (incorrect codec parameters ?): Invalid argument

I think I have a path forward. Thank you so much!

lisamelton commented 1 year ago

@wassilywabbit You are very welcome! I'll close this now since it appears to be resolved.