[FFmpeg-trac] #2642(FFprobe:new): ffprobe unable to report video stream duration if stream is in matroska container.

FFmpeg trac at avcodec.org
Wed Jun 5 02:20:03 CEST 2013


#2642: ffprobe unable to report video stream duration if stream is in matroska
container.
-------------------------------------+-------------------------------------
             Reporter:  MountainMan  |                     Type:  defect
               Status:  new          |                 Priority:  normal
            Component:  FFprobe      |                  Version:  git-
             Keywords:               |  master
             Blocking:               |               Blocked By:
Analyzed by developer:  0            |  Reproduced by developer:  0
-------------------------------------+-------------------------------------
 Summary of the bug:  ffprobe reports "N/A" as the value for "duration_ts"
 and "duration" for the video stream if the stream is in a mkv container
 (it does report the duration of the file as a whole though).  If the same
 video is copied to an avi container the video stream duration values are
 reported as expected.  I've tried this with mkv files I created with
 ffmpeg from images as well as from a video from my camera recoded to mkv.
 I've tried this with multiple video codecs (ffv1 and the codec in the
 reproduction section) and for files with and without an audio stream.

 I'm running ffprobe on Ubuntu 12.04.  I'm not sure what the version number
 is, but I'm using today's build based on the instructions here:
 https://ffmpeg.org/trac/ffmpeg/wiki/UbuntuCompilationGuideQuantal

 Here is what the output looks like:

 ffprobe -pretty -show_streams -select_streams v testvideo.mkv
 ffprobe version N-38182-g449558d Copyright (c) 2007-2013 the FFmpeg
 developers
   built on Jun  4 2013 18:35:01 with gcc 4.6 (Ubuntu/Linaro
 4.6.3-1ubuntu5)
   configuration: --extra-libs=-ldl --enable-gpl --enable-libass --enable-
 libfdk-aac --enable-libmp3lame --enable-libopencore-amrnb --enable-
 libopencore-amrwb --enable-libspeex --enable-libtheora --enable-libvorbis
 --enable-libopus --enable-libvpx --enable-x11grab --enable-libx264
 --enable-nonfree --enable-version3
   libavutil      52. 34.100 / 52. 34.100
   libavcodec     55. 15.100 / 55. 15.100
   libavformat    55.  8.102 / 55.  8.102
   libavdevice    55.  2.100 / 55.  2.100
   libavfilter     3. 75.101 /  3. 75.101
   libswscale      2.  3.100 /  2.  3.100
   libswresample   0. 17.102 /  0. 17.102
   libpostproc    52.  3.100 / 52.  3.100
 Input #0, matroska,webm, from 'testvideo.mkv':
   Metadata:
     ENCODER         : Lavf55.8.102
   Duration: 00:00:05.01, start: 0.000000, bitrate: 265 kb/s
     Stream #0:0: Video: h264 (High 4:4:4 Predictive), yuv420p, 640x480
 [SAR 1:1 DAR 4:3], 29.97 fps, 29.97 tbr, 1k tbn, 59.94 tbc (default)
 [STREAM]
 index=0
 codec_name=h264
 codec_long_name=H.264 / AVC / MPEG-4 AVC / MPEG-4 part 10
 profile=High 4:4:4 Predictive
 codec_type=video
 codec_time_base=50/2997
 codec_tag_string=[0][0][0][0]
 codec_tag=0x0000
 width=640
 height=480
 has_b_frames=0
 sample_aspect_ratio=1:1
 display_aspect_ratio=4:3
 pix_fmt=yuv420p
 level=30
 timecode=N/A
 id=N/A
 r_frame_rate=2997/100
 avg_frame_rate=2997/100
 time_base=1/1000
 start_pts=0
 start_time=0:00:00.000000
 duration_ts=N/A
 duration=N/A
 bit_rate=N/A
 nb_frames=N/A
 nb_read_frames=N/A
 nb_read_packets=N/A
 DISPOSITION:default=1
 DISPOSITION:dub=0
 DISPOSITION:original=0
 DISPOSITION:comment=0
 DISPOSITION:lyrics=0
 DISPOSITION:karaoke=0
 DISPOSITION:forced=0
 DISPOSITION:hearing_impaired=0
 DISPOSITION:visual_impaired=0
 DISPOSITION:clean_effects=0
 DISPOSITION:attached_pic=0
 [/STREAM]


 How to reproduce:
 {{{
 ffprobe -pretty -show_streams -select_streams v testvideo.mkv

 Here is what I did to create the test video, but as I mentioned this acts
 the same with other videos transcoded into mkv, so you can probably
 duplicate it with any mkv file:

 convert -size 640x480 xc:black  blackimage.png  #Using imagemagick to
 create a black image.
 ffmpeg  -loop 1 -f image2 -i blackimage.png -r 29.97 -t 5 -an -vcodec
 libx264 -preset ultrafast -qp 0 -pix_fmt yuv420p testvideo.mkv




 ffmpeg version
 built on June 4th 2013
 }}}
 Patches should be submitted to the ffmpeg-devel mailing list and not this
 bug tracker.

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


More information about the FFmpeg-trac mailing list