To my inexperienced eyes this looks like a DTC stream issue. Ffmpeg reports the 
DTS audio time is not continuous and ffmpeg is, in the example shown, replacing 
the time markers with continuous markers. 

Paul Yurt // Media Technologist // 310-439-8009  

On Apr 3, 2015, at 5:10 PM, [email protected] wrote:

Is there any way to get past this error and have ffmpeg complete the copy?

If I copy all or at least one subtitle stream from an mpeg file, eg:

 $ ffmpeg -i movie.vob -map 0 -codec copy -f vob movie-COPY-ALL.vob
 $ ffmpeg -i movie.vob -map 0:0 -map 0:11 -map 0:7 -codec copy -f vob 
movie-COPY-SPECIFIC.vob

ffmpeg aborts with a message like this:

 [vob @ 0x8789560] Application provided invalid, non monotonically increasing 
dts to muxer in stream 2: 325576251 >= 0
 av_interleaved_write_frame(): Invalid argument

If no streams are selected or only the video and one or more audio streams, 
then it works, even though a similar warning message is displayed, which 
appears to apply to the audio stream.  If more then one audio stream is 
selected, this message is repeated once for each audio stream:

 [vob @ 0x9dd6560] Non-monotonous DTS in output stream 0:1; previous: 
333573120, current: 333571738; changing to 333573121. This may result in 
incorrect timestamps in the output file.

I assume this must be an issue with one/more of the subtitle streams, but from 
what I can tell by viewing them, they're fine.  If I look at the original movie 
right at the point where ffmpeg aborts, all of the subtitles are there.  ffmpeg 
seems to "fix" this issue with the audio streams, can it do the same for the 
subtitle streams?

I've included output from the "at least one subtitle" case and the default (no 
streams selected) case.  The 2nd command is pruned a little, but it's using the 
exact same ffmpeg and input file.

FYI.  movie.vob duration is actually 02:11:44.02 and not 01:09:57.66 as it's 
initially reported.  ffmpeg shows the correct duration for 
"movie-COPY-DEFAULT.vob" after it's completed copying the video and one audio 
stream.

-------------------------------------------------------------------------------

 $ ffmpeg -i movie.vob -map 0:0 -map 0:11 -map 0:7 -codec copy -f vob 
movie-COPY-SPECIFIC.vob
 ffmpeg version N-71237-g5b97681 Copyright (c) 2000-2015 the FFmpeg developers
   built with gcc 4.5.1 (GCC) 20100924 (Red Hat 4.5.1-4)
   configuration: --enable-gpl --enable-version3 --enable-nonfree 
--disable-static --enable-shared --disable-debug --enable-libass 
--enable-libfdk-aac --enable-libmp3lame --enable-libtheora --enable-libvorbis 
--enable-libvpx --enable-libx264 --enable-x11grab
   libavutil      54. 22.100 / 54. 22.100
   libavcodec     56. 33.100 / 56. 33.100
   libavformat    56. 29.100 / 56. 29.100
   libavdevice    56.  4.100 / 56.  4.100
   libavfilter     5. 13.101 /  5. 13.101
   libswscale      3.  1.101 /  3.  1.101
   libswresample   1.  1.100 /  1.  1.100
   libpostproc    53.  3.100 / 53.  3.100
 Input #0, mpeg, from 'movie.vob':
   Duration: 01:09:57.66, start: 0.207756, bitrate: 13209 kb/s
     Stream #0:0[0x1e0]: Video: mpeg2video (Main), yuv420p(tv, smpte170m), 
720x480 [SAR 32:27 DAR 16:9], max. 9800 kb/s, 29.50 fps, 59.94 tbr, 90k tbn, 
59.94 tbc
     Stream #0:1[0x20]: Subtitle: dvd_subtitle
     Stream #0:2[0x21]: Subtitle: dvd_subtitle
     Stream #0:3[0x22]: Subtitle: dvd_subtitle
     Stream #0:4[0x23]: Subtitle: dvd_subtitle
     Stream #0:5[0x24]: Subtitle: dvd_subtitle
     Stream #0:6[0x25]: Subtitle: dvd_subtitle
     Stream #0:7[0x26]: Subtitle: dvd_subtitle
     Stream #0:8[0x27]: Subtitle: dvd_subtitle
     Stream #0:9[0x28]: Subtitle: dvd_subtitle
     Stream #0:10[0x29]: Subtitle: dvd_subtitle
     Stream #0:11[0x80]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 448 kb/s
     Stream #0:12[0x81]: Audio: ac3, 48000 Hz, 5.1(side), fltp, 384 kb/s
     Stream #0:13[0x82]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
     Stream #0:14[0x83]: Audio: ac3, 48000 Hz, stereo, fltp, 192 kb/s
 Output #0, vob, to 'movie-COPY-SPECIFIC.vob':
   Metadata:
     encoder         : Lavf56.29.100
     Stream #0:0: Video: mpeg2video, yuv420p, 720x480 [SAR 32:27 DAR 16:9], 
q=2-31, max. 9800 kb/s, 29.50 fps, 59.94 tbr, 90k tbn, 29.97 tbc
     Stream #0:1: Audio: ac3, 48000 Hz, 5.1(side), 448 kb/s
     Stream #0:2: Subtitle: dvd_subtitle
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:11 -> #0:1 (copy)
   Stream #0:7 -> #0:2 (copy)
 Press [q] to stop, [?] for help
 [vob @ 0x8789560] Application provided invalid, non monotonically increasing 
dts to muxer in stream 2: 325576251 >= 0
 av_interleaved_write_frame(): Invalid argument
 frame=88864 fps=590 q=-1.0 Lsize= 2807088kB time=01:01:46.40 
bitrate=6204.3kbits/s
 video:2569383kB audio:202694kB subtitle:86kB other streams:0kB global 
headers:0kB muxing overhead: 1.259862%
 Conversion failed!

 $ ffmpeg -i movie.vob -codec copy -f vob movie-COPY-DEFAULT.vob
 ...
 Output #0, vob, to 'movie-COPY-DEFAULT.vob':
   Metadata:
     encoder         : Lavf56.29.100
     Stream #0:0: Video: mpeg2video, yuv420p, 720x480 [SAR 32:27 DAR 16:9], 
q=2-31, max. 9800 kb/s, 29.50 fps, 59.94 tbr, 90k tbn, 29.97 tbc
     Stream #0:1: Audio: ac3, 48000 Hz, 5.1(side), 448 kb/s
 Stream mapping:
   Stream #0:0 -> #0:0 (copy)
   Stream #0:11 -> #0:1 (copy)
 Press [q] to stop, [?] for help
 [vob @ 0x9dd6560] Non-monotonous DTS in output stream 0:1; previous: 
333573120, current: 333571738; changing to 333573121. This may result in 
incorrect timestamps in the output file.
 frame=189508 fps=479 q=-1.0 Lsize= 5986400kB time=02:11:44.01 
bitrate=6204.5kbits/s
 video:5479975kB audio:432254kB subtitle:0kB other streams:0kB global 
headers:0kB muxing overhead: 1.254550%
_______________________________________________
ffmpeg-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user
_______________________________________________
ffmpeg-user mailing list
[email protected]
http://ffmpeg.org/mailman/listinfo/ffmpeg-user

Reply via email to