[FFmpeg-trac] #2471(FFmpeg:new): FFMpeg unable to determine video length with streams outside of programs

FFmpeg trac at avcodec.org
Tue Apr 16 02:21:29 CEST 2013


#2471: FFMpeg unable to determine video length with streams outside of programs
------------------------------------+----------------------------------
             Reporter:  nbollom     |                     Type:  defect
               Status:  new         |                 Priority:  normal
            Component:  FFmpeg      |                  Version:  1.2
             Keywords:  No Program  |               Blocked By:
             Blocking:              |  Reproduced by developer:  0
Analyzed by developer:  0           |
------------------------------------+----------------------------------
 Summary of the bug:
 FFMpeg is unable to determine the length of a mpegts stream when there are
 streams detected outside of programs.

 It seems that having 1 tiny section of the stream that has these streams
 outside of programs can causes the whole stream to be effected.

 I have split a 8.39gb stream with the problem into 31.5mb chucks and was
 able to find a specific chuck with the problem (all the other chunks
 reported fine).

 I have attached the effected part, but can provide other parts if
 necessary.

 How to reproduce:
 {{{
 ffmpeg -i part.ts
 ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers
   built on Mar 31 2013 21:55:33 with Apple clang version 4.1
 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
   configuration: --prefix=/opt/local --enable-swscale --enable-avfilter
 --enable-libmp3lame --enable-libvorbis --enable-libopus --enable-libtheora
 --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug
 --enable-libvpx --enable-libspeex --enable-libfreetype
 --mandir=/opt/local/share/man --enable-shared --enable-pthreads
 --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable-
 postproc --enable-libx264 --enable-libxvid
   libavutil      52. 18.100 / 52. 18.100
   libavcodec     54. 92.100 / 54. 92.100
   libavformat    54. 63.104 / 54. 63.104
   libavdevice    54.  3.103 / 54.  3.103
   libavfilter     3. 42.103 /  3. 42.103
   libswscale      2.  2.100 /  2.  2.100
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  2.100 / 52.  2.100
 [mpegts @ 0x7fe31c022800] max_analyze_duration 5000000 reached at 5000000
 microseconds
 [mpegts @ 0x7fe31c022800] Could not find codec parameters for stream 3
 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
 Consider increasing the value for the 'analyzeduration' and 'probesize'
 options
 [NULL @ 0x7fe31c04ec00] start time is not set in estimate_timings_from_pts
 [mpegts @ 0x7fe31c022800] PES packet size mismatch
 Input #0, mpegts, from 'part.ts':
   Duration: N/A, start: 38349.680033, bitrate: N/A
   Program 544
   Program 545
   Program 546
   Program 547
   Program 548
   Program 550
   Program 551
   Program 1057
     Stream #0:5[0x207]: Video: mpeg2video ([2][0][0][0] / 0x0002), 90k tbn
     Stream #0:6[0x2d0](eng): Audio: mp3 ([4][0][0][0] / 0x0004), 0
 channels
     Stream #0:4[0x247](eng): Subtitle: dvb_teletext ([6][0][0][0] /
 0x0006)
     Stream #0:7[0x901]: Unknown: none ([11][0][0][0] / 0x000B)
   Program 1058
   Program 1059
   Program 1060
   No Program
     Stream #0:0[0x200]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
 yuv420p, 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
     Stream #0:1[0x28a](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
 stereo, s16p, 256 kb/s
     Stream #0:2[0x240](eng): Subtitle: dvb_teletext ([6][0][0][0] /
 0x0006)
     Stream #0:3[0x1388]: Unknown: none ([11][0][0][0] / 0x000B)
 At least one output file must be specified
 }}}

 The original file reports as:

 {{{
 ffmpeg -i 750283017.ts

 ffmpeg version 1.2 Copyright (c) 2000-2013 the FFmpeg developers
   built on Mar 31 2013 21:55:33 with Apple clang version 4.1
 (tags/Apple/clang-421.11.66) (based on LLVM 3.1svn)
   configuration: --prefix=/opt/local --enable-swscale --enable-avfilter
 --enable-libmp3lame --enable-libvorbis --enable-libopus --enable-libtheora
 --enable-libschroedinger --enable-libopenjpeg --enable-libmodplug
 --enable-libvpx --enable-libspeex --enable-libfreetype
 --mandir=/opt/local/share/man --enable-shared --enable-pthreads
 --cc=/usr/bin/clang --arch=x86_64 --enable-yasm --enable-gpl --enable-
 postproc --enable-libx264 --enable-libxvid
   libavutil      52. 18.100 / 52. 18.100
   libavcodec     54. 92.100 / 54. 92.100
   libavformat    54. 63.104 / 54. 63.104
   libavdevice    54.  3.103 / 54.  3.103
   libavfilter     3. 42.103 /  3. 42.103
   libswscale      2.  2.100 /  2.  2.100
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  2.100 / 52.  2.100
 [mpegts @ 0x7ff2d9022800] max_analyze_duration 5000000 reached at 5016000
 microseconds
 [mpegts @ 0x7ff2d9022800] Could not find codec parameters for stream 3
 (Unknown: none ([11][0][0][0] / 0x000B)): unknown codec
 Consider increasing the value for the 'analyzeduration' and 'probesize'
 options
 [NULL @ 0x7ff2d904ec00] start time is not set in estimate_timings_from_pts
 [mpegts @ 0x7ff2d9022800] PES packet size mismatch
 Input #0, mpegts, from '750283017.ts':
   Duration: N/A, start: 37526.825144, bitrate: N/A
   Program 544
   Program 545
   Program 546
   Program 547
   Program 548
   Program 550
   Program 551
   Program 1057
     Stream #0:5[0x207]: Video: mpeg2video ([2][0][0][0] / 0x0002), 90k tbn
     Stream #0:6[0x2d0](eng): Audio: mp3 ([4][0][0][0] / 0x0004), 0
 channels
     Stream #0:4[0x247](eng): Subtitle: dvb_teletext ([6][0][0][0] /
 0x0006)
     Stream #0:7[0x901]: Unknown: none ([11][0][0][0] / 0x000B)
   Program 1058
   Program 1059
   Program 1060
   No Program
     Stream #0:0[0x200]: Video: mpeg2video (Main) ([2][0][0][0] / 0x0002),
 yuv420p, 720x576 [SAR 64:45 DAR 16:9], 25 fps, 25 tbr, 90k tbn, 50 tbc
     Stream #0:1[0x28a](eng): Audio: mp2 ([4][0][0][0] / 0x0004), 48000 Hz,
 stereo, s16p, 256 kb/s
     Stream #0:2[0x240](eng): Subtitle: dvb_teletext ([6][0][0][0] /
 0x0006)
     Stream #0:3[0x1388]: Unknown: none ([11][0][0][0] / 0x000B)
 At least one output file must be specified
 }}}

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


More information about the FFmpeg-trac mailing list