[FFmpeg-trac] #4020(ffmpeg:new): ffmpeg segment create wrong duration outputs

FFmpeg trac at avcodec.org
Sat Oct 11 10:55:08 CEST 2014


#4020: ffmpeg segment create wrong duration outputs
-----------------------------------+------------------------------------
             Reporter:  qianliang  |                     Type:  defect
               Status:  new        |                 Priority:  critical
            Component:  ffmpeg     |                  Version:  2.4.2
             Keywords:  segment    |               Blocked By:
             Blocking:             |  Reproduced by developer:  0
Analyzed by developer:  0          |
-----------------------------------+------------------------------------
 Summary of the bug:
 How to reproduce:
 {{{
 % ffmpeg -y -i 75.ts -map 0:1 -acodec copy 75_audio.ts -map 0:0 -vcodec
 copy -f segment -segment_time 60 75_video_%d.ts
 ffmpeg version N-66797-gb8a5599 Copyright (c) 2000-2014 the FFmpeg
 developers
   built on Oct 10 2014 22:01:57 with gcc 4.9.1 (GCC)
   configuration: --enable-gpl --enable-version3 --disable-w32threads
 --enable-avisynth --enable-bzlib --enable-fontconfi
 g --enable-frei0r --enable-gnutls --enable-iconv --enable-libass --enable-
 libbluray --enable-libbs2b --enable-libcaca --
 enable-libfreetype --enable-libgme --enable-libgsm --enable-libilbc
 --enable-libmodplug --enable-libmp3lame --enable-lib
 opencore-amrnb --enable-libopencore-amrwb --enable-libopenjpeg --enable-
 libopus --enable-librtmp --enable-libschroedinge
 r --enable-libsoxr --enable-libspeex --enable-libtheora --enable-
 libtwolame --enable-libvidstab --enable-libvo-aacenc --
 enable-libvo-amrwbenc --enable-libvorbis --enable-libvpx --enable-
 libwavpack --enable-libwebp --enable-libx264 --enable-
 libx265 --enable-libxavs --enable-libxvid --enable-zlib
   libavutil      54. 10.100 / 54. 10.100
   libavcodec     56.  4.101 / 56.  4.101
   libavformat    56.  9.100 / 56.  9.100
   libavdevice    56.  1.100 / 56.  1.100
   libavfilter     5.  1.103 /  5.  1.103
   libswscale      3.  1.100 /  3.  1.100
   libswresample   1.  1.100 /  1.  1.100
   libpostproc    53.  1.100 / 53.  1.100
 Input #0, mpegts, from 'f:/videos/ts/75.ts':
   Duration: 00:01:29.38, start: 61533.402456, bitrate: 7475 kb/s
   Program 100
     Stream #0:0[0x1001]: Video: h264 (High) ([27][0][0][0] / 0x001B),
 yuv420p(tv, bt709), 1920x1080 [SAR 1:1 DAR 16:9],
 25 fps, 50 tbr, 90k tbn, 50 tbc
     Stream #0:1[0x1002]: Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
 stereo, s16p, 170 kb/s
 Output #0, mpegts, to 'f:/videos/ts/75_audio.ts':
   Metadata:
     encoder         : Lavf56.9.100
     Stream #0:0: Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz, stereo, 170
 kb/s
 Output #1, segment, to 'f:/videos/ts/75_video_%d.ts':
   Metadata:
     encoder         : Lavf56.9.100
     Stream #1:0: Video: h264 ([27][0][0][0] / 0x001B), yuv420p, 1920x1080
 [SAR 1:1 DAR 16:9], q=2-31, 25 fps, 25 tbn, 25
  tbc
 Stream mapping:
   Stream #0:1 -> #0:0 (copy)
   Stream #0:0 -> #1:0 (copy)
 Press [q] to stop, [?] for help
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous:
 -2, current: -2; changing to -1. This may result
  in incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous:
 -1, current: -1; changing to 0. This may result
 in incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 0,
 current: -1; changing to 1. This may result i
 n incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 1,
 current: 0; changing to 2. This may result in
  incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 2,
 current: 0; changing to 3. This may result in
  incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 3,
 current: 1; changing to 4. This may result in
  incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 4,
 current: 1; changing to 5. This may result in
  incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 5,
 current: 2; changing to 6. This may result in
  incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 6,
 current: 2; changing to 7. This may result in
  incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 7,
 current: 3; changing to 8. This may result in
  incorrect timestamps in the output file.
 [segment @ 03666480] Non-monotonous DTS in output stream 1:0; previous: 8,
 current: 3; changing to 9. This may result in
  incorrect timestamps in the output file.


 ffmpeg version N-66797-gb8a5599
 built on http://ffmpeg.zeranoe.com/builds/

 And here is my video source: http://pan.baidu.com/s/1hqh68Wc
 }}}

 And the duration of my video source is 00:01:29, output 3 segments is
 00:01:01, 00:00:58, 00:00:58, and the total is 00:02:57.

 And I try to do the same operation in old ffmpeg
 version(N-46474-gdb012e1), it came out the right segments 00:01:00,
 00:00:29.

--
Ticket URL: <https://trac.ffmpeg.org/ticket/4020>
FFmpeg <https://ffmpeg.org>
FFmpeg issue tracker


More information about the FFmpeg-trac mailing list