G'day Ferdi,

I added the analyzeduration and probesize options as you suggested (which added 
about 3.5 minutes to the total time for a 48 minute TV episode before encoding 
started) but it didn't change anything. Note that I also had changed the 
subtitle codec from dvdsub to copy. That's not to say it wouldn't have worked, 
because there is a strange issue. Since changing the subtitle codec from dvdsub 
to copy I went from getting an empty subtitle track to now getting the wrong 
subtitle track in the output. I mapped stream 6 (the regular English subtitle 
track that also contains the tagged forced subtitles) but instead I am getting 
stream 7 (the English SDH subtitle track). Stream 7 very likely won't have any 
tagged forced subtitles in it (in which case you'd think you'd end up with an 
empty track given the "-forced_subs_only 1" specification.

This is the command and the output I see at the terminal (with a couple 
comments that I added):

ffmpeg -forced_subs_only 1 -analyzeduration 10000000M -probesize 10000000M \
-i combined.VOB \
-vsync cfr \
-map 0:1 -c:v hevc_videotoolbox -b:v 1500k -color_primaries:v smpte170m 
-color_trc:v bt709 -colorspace:v smpte170m -metadata:s:v title\= -disposition:v 
default \
-map 0:2 -c:a:0 copy -metadata:s:a:0 title\= -disposition:a:0 default \
-map 0:6 -c:s:0 copy -disposition:s:0 default \
-metadata:g title\= -default_mode passthrough \
-y crap.mkv



Input #0, mpeg, from 'combined.VOB':
  Duration: 00:48:19.62, start: 0.280633, bitrate: 5575 kb/s
  Stream #0:0[0x1bf]: Data: dvd_nav_packet
  Stream #0:1[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, progressive), 
720x480 [SAR 32:27 DAR 16:9], 5000 kb/s, 29.97 fps, 59.94 tbr, 90k tbn
    Side data:
      cpb: bitrate max/min/avg: 7600000/0/0 buffer size: 1835008 vbv_delay: N/A
  Stream #0:2[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
  Stream #0:3[0x81]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
  Stream #0:4[0x82]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
  Stream #0:5[0x83]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
  Stream #0:6[0x21]: Subtitle: dvd_subtitle    ----> (This is the regular 
English subtitle track that also contains the tagged forced subtitles)
  Stream #0:7[0x25]: Subtitle: dvd_subtitle    ----> (This is the SDH subtitle 
track)
  Stream #0:8[0x26]: Subtitle: dvd_subtitle
  Stream #0:9[0x27]: Subtitle: dvd_subtitle
  Stream #0:10[0x20]: Subtitle: dvd_subtitle
  Stream #0:11[0x22]: Subtitle: dvd_subtitle
  Stream #0:12[0x23]: Subtitle: dvd_subtitle
  Stream #0:13[0x24]: Subtitle: dvd_subtitle
Stream mapping:
  Stream #0:1 -> #0:0 (mpeg2video (native) -> hevc (hevc_videotoolbox))
  Stream #0:2 -> #0:1 (copy)
  Stream #0:6 -> #0:2 (copy)
Press [q] to stop, [?] for help
Output #0, matroska, to 'crap.mkv':
  Metadata:
    encoder         : Lavf59.16.100
  Stream #0:0: Video: hevc, yuv420p(tv, smpte170m/smpte170m/bt709, 
progressive), 720x480 [SAR 32:27 DAR 16:9], q=2-31, 1500 kb/s, 29.97 fps, 1k 
tbn (default)
    Metadata:
      encoder         : Lavc59.18.100 hevc_videotoolbox
  Stream #0:1: Audio: ac3 ([0] [0][0] / 0x2000), 48000 Hz, 5.1(side), fltp, 448 
kb/s (default)
  Stream #0:2: Subtitle: dvd_subtitle ([255][255][255][255] / 0xFFFFFFFF) 
(default)
More than 1000 frames duplicated   37888kB time=00:02:44.03 
bitrate=1892.2kbits/s dup=985 drop=0 speed=13.6x    
More than 10000 frames duplicated 395264kB time=00:27:42.04 
bitrate=1948.2kbits/s dup=9963 drop=0 speed=13.8x    
frame=86902 fps=415 q=-0.0 Lsize=  690877kB time=00:48:19.59 
bitrate=1951.9kbits/s dup=17382 drop=0 speed=13.8x    
video:529401kB audio:158534kB subtitle:1427kB other streams:0kB global 
headers:0kB muxing overhead: 0.219704%


Regards,

Mick


> On 2022.0428, at 17:50, Ferdi Scholten via ffmpeg-user 
> <ffmpeg-user@ffmpeg.org> wrote:
> 
> 
>> Anybody know what's going on here? How come ffmpeg respects 
>> "-forced_subs_only 1" for an MKV but not for a VOB?
>> 
>> 
>> 
>> _______________________________________________
>> ffmpeg-user mailing list
>> ffmpeg-user@ffmpeg.org
>> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
>> 
>> To unsubscribe, visit link above, or email
>> ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".
> In the VOB structure the subtitle track may begin at the first time where it 
> is needed. When you only have the VOB files, the forced subtitles might not 
> be at the beginning of the structure so will not be found by ffmpeg when it 
> analyzes the first 5 seconds (default) of the VOB file. You can force ffmpeg 
> to analyze a bigger part of the VOB file to find additional streams by adding 
> -analyzeduration and -probesize in your command. Both default to 5000000 
> meaning it wil scan the first 5000000 microseconds of the first 5000000 bytes 
> of the file. Specify large values here to analyze a much bigger part of the 
> file for a longer duration.
> for example:
> 
> ffmpeg -analyzeduration 10000000M \
> -probesize 10000000M \
> -forced_subs_only 1 \
> -i combined.vob \
> -vsync cfr \
> -map 0:1 -c:v hevc_videotoolbox -disposition:v default \
> -map 0:2 -c:a:0 copy -disposition:a:0 default \
> -map 0:6 -c:s:0 dvdsub -disposition:s:0 default \
> -default_mode passthrough \
> compressed.mkv
> 
> 
> Greetings
> Ferdi Scholten
> 
> _______________________________________________
> ffmpeg-user mailing list
> ffmpeg-user@ffmpeg.org
> https://ffmpeg.org/mailman/listinfo/ffmpeg-user
> 
> To unsubscribe, visit link above, or email
> ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

_______________________________________________
ffmpeg-user mailing list
ffmpeg-user@ffmpeg.org
https://ffmpeg.org/mailman/listinfo/ffmpeg-user

To unsubscribe, visit link above, or email
ffmpeg-user-requ...@ffmpeg.org with subject "unsubscribe".

Reply via email to