GNOME Bugzilla – Bug 667704
[videoparsers] framerate calculation
Last modified: 2012-05-29 11:26:10 UTC
Created attachment 205027 [details] minimal mpegts sample to reproduce the problem * Steps to reproduce: GST_DEBUG=*codecparse*:5 gst-launch-0.10 filesrc location=sample.ts ! mpegtsparse ! mpegtsdemux ! mpegvideoparse ! fakesink sync=1 silent=1 -v * Actual result: codecparsers_mpegvideo gstmpegvideoparser.c:217:gst_mpeg_video_parse_sequence: fps: 30000/1001 mpegvparse0.GstPad:src: caps = video/mpeg, framerate=(fraction)60000/1001 * Other infos: I attached a minimal sample to have the caps. With the full one the frame duration is 0:00:00.033366666 (! ffdec_mpeg2video ! fakesink silent=0), so it seems the real framerate is 30. In gstmpegvideoparse.c: mpvparse->fps_num = mpvparse->sequencehdr.fps_n * (mpvparse->sequenceext.fps_n_ext + 1) * 2; The extension is taken into account. Whereas in legacympegvideoparse there is a FIXME about it. * Question: Do you think this is a problem from the encoder or from mpegvideoparse ?
It's reported as being 30000/1001 right now. filesrc ! tsdemux ! mpegvideoparse ! fakesink /GstPipeline:pipeline0/GstMpegvParse:mpegvparse0.GstPad:src: caps = video/mpeg, mpegversion=(int)2, systemstream=(boolean)false, parsed=(boolean)true, width=(int)1920, height=(int)1080, framerate=(fraction)30000/1001, pixel-aspect-ratio=(fraction)1/1, codec_data=(buffer)000001b3780438343a982f4110111112121213131313141414141415151515151516161616161616171717171717171718181819181818191a1a1a1a191b1b1b1b1b1c1c1c1c1e1e1e1f1f21000001b5144200010000, interlaced=(boolean)true i.e. the result is 30 *frames* per second, interlaced (60 fields per second).