Gstreamer-1.0 : Unable to set framerate for video elementary stream with vpudec on IMX6Q

Subodh Chiwate subodh.chiwate at ufomoviez.com
Tue Dec 9 06:28:57 PST 2014


Hi,

System Specs
==========
I am using IMX6 Quad SABRE board. I have built the linux image using the Yocto.

Linux imx6qsabresd 3.10.31-1.1.0_beta+g94a7e47 #1 SMP PREEMPT Sun Oct 12 02:14:32 IST 2014 armv7l GNU/Linux

root at imx6qsabresd:/unit_tests# gst-launch-1.0 --version
gst-launch-1.0 version 1.2.3
GStreamer 1.2.3


Issue
====
I want to play an elementary stream of H264 video at a configurable (not at runtime) frame rate. Also I do not want to drop any frames
and hence not using videorate plugin.
I tried setting the caps to convey the desired frame rate but at the end of execution I am getting 30fps for all elementary streams I have tested with.
But the same content plays at correct FPS in gst-0.10 vpu plugin.
Following are the logs for both pipelines.
Any suggestions regarding debugging the issue are welcome.
Please let me know if should provide any specific information regarding my setup.

Thanks.


Command Line Output
===============
root at imx6qsabresd:/unit_tests# gst-launch-1.0 -vvv filesrc location=/home/subodh/Media/v1.m4v ! h264parse ! vpudec frame-drop=false ! "video/x-raw,framerate=(fraction)24/1" ! imxv4l2sink
Setting pipeline to PAUSED ...
[INFO]    Product Info: i.MX6Q/D/S
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstH264Parse:h264parse0.GstPad:src: caps = video/x-h264, width=(int)1920, height=(int)1080, framerate=(fraction)24/1, parsed=(boolean)true, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)01640028ffe1001d67640028ac24a401e0089f966e020202800000030080000018478c192401000668ee06cb22c0
/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:sink: caps = video/x-h264, width=(int)1920, height=(int)1080, framerate=(fraction)24/1, parsed=(boolean)true, stream-format=(string)avc, alignment=(string)au, codec_data=(buffer)01640028ffe1001d67640028ac24a401e0089f966e020202800000030080000018478c192401000668ee06cb22c0
[INFO]    bitstreamMode 1, chromaInterleave 1, mapType 0, tiled2LinearEnable 0
/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:src: caps = video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1088, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709, framerate=(fraction)24/1
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:src: caps = video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1088, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709, framerate=(fraction)24/1
/GstPipeline:pipeline0/GstImxV4l2Sink:imxv4l2sink0.GstPad:sink: caps = video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1088, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709, framerate=(fraction)24/1
/GstPipeline:pipeline0/GstCapsFilter:capsfilter0.GstPad:sink: caps = video/x-raw, format=(string)NV12, width=(int)1920, height=(int)1088, pixel-aspect-ratio=(fraction)1/1, interlace-mode=(string)progressive, colorimetry=(string)bt709, framerate=(fraction)24/1
v4l2sink need allocate 11 buffers.
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 0:01:06.674187675
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
Setting pipeline to NULL ...
Total showed frames (1988), playing for (0:01:06.676579008), fps (29.816).
Freeing pipeline ...

root at imx6qsabresd:/unit_tests# gst-launch-0.10 -vvv filesrc location=/home/subodh/Media/v1.m4v ! legacyh264parse ! vpudec framedrop=false framerate-nu=24 framerate-de=1 ! imxv4l2sink
MFW_GST_V4LSINK_PLUGIN 4.0.1 build on Nov  3 2014 14:23:43.
Setting pipeline to PAUSED ...
[INFO]    Product Info: i.MX6Q/D/S
vpudec versions :)
    plugin: 4.0.1
    wrapper: 1.0.54(VPUWRAPPER_ARM_LINUX Build on Oct 20 2014 18:56:13)
    vpulib: 5.4.26
    firmware: 3.1.1.46060
Pipeline is PREROLLING ...
/GstPipeline:pipeline0/GstLegacyH264Parse:legacyh264parse0.GstPad:src: caps = video/x-h264, width=(int)1920, height=(int)1080, framerate=(fraction)24/1, stream-format=(string)byte-stream, alignment=(string)nal
[INFO]    bitstreamMode 1, chromaInterleave 1, mapType 0, tiled2LinearEnable 0
/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:sink: caps = video/x-h264, width=(int)1920, height=(int)1080, framerate=(fraction)24/1, stream-format=(string)byte-stream, alignment=(string)nal
/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:src: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1920, height=(int)1088, pixel-aspect-ratio=(fraction)1/1, crop-top=(int)0, crop-left=(int)0, crop-right=(int)0, crop-bottom=(int)8, num-buffers-required=(int)11, framerate=(fraction)24/1, alignment=(int)1
set v4l rotate sucessfully
>>V4L_SINK: Actually buffer status:
    hardware buffer : 11
    software buffer : 0
/GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0.GstPad:sink: caps = video/x-raw-yuv, format=(fourcc)NV12, width=(int)1920, height=(int)1088, pixel-aspect-ratio=(fraction)1/1, crop-top=(int)0, crop-left=(int)0, crop-right=(int)0, crop-bottom=(int)8, num-buffers-required=(int)11, framerate=(fraction)24/1, alignment=(int)1
WARNING: from element /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0: Internal data flow problem.
Additional debug info:
/Data/yocto/fsl-arm-yocto-bsp/build-dfb/tmp/work/cortexa9hf-vfp-neon-poky-linux-gnueabi/gstreamer/0.10.36-r2/gstreamer-0.10.36/libs/gst/base/gstbasesink.c(3638): gst_base_sink_chain_unlocked (): /GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0:
Received buffer without a new-segment. Assuming timestamps start from 0.
Pipeline is PREROLLED ...
Setting pipeline to PLAYING ...
full screen size:1920x1080
[V4L Update Display]: left=0, top=0, width=1920, height=1080
set v4l display crop sucessfully
New clock: GstSystemClock
Got EOS from element "pipeline0".
Execution ended after 83247423343 ns.
Setting pipeline to PAUSED ...
Running time 0:01:23.251386343 render fps 23.916
Setting pipeline to READY ...
/GstPipeline:pipeline0/MFW_GST_V4LSINK_INFO_T:mfw_gst_v4lsink_info_t0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:src: caps = NULL
/GstPipeline:pipeline0/GstVpuDec:vpudec0.GstPad:sink: caps = NULL
/GstPipeline:pipeline0/GstLegacyH264Parse:legacyh264parse0.GstPad:src: caps = NULL
Setting pipeline to NULL ...
Total rendered:1991
Freeing pipeline ...
[--->FINALIZE v4l_sink
root at imx6qsabresd:/unit_tests#



--
Regards,
Subodh

-- **************** CAUTION - Disclaimer ***************** This e-mail contains PRIVILEGED AND CONFIDENTIAL INFORMATION intended solely for the use of the addressee(s). If you are not the intended recipient, please notify the sender by e-mail and delete the original message. Further, you are not to copy, disclose, or distribute this e-mail or its contents to any other person and any such actions are unlawful. This e-mail may contain viruses. UFOMoviez India Ltd. has taken every reasonable precaution to minimize this risk, but is not liable for any damage you may sustain as a result of any virus in this e-mail. You should carry out your own virus checks before opening the e-mail or attachment. UFOMoviez India Ltd. reserves the right to monitor and review the content of all messages sent to or from this e-mail address. Messages sent to or from this e-mail address may be stored on the UFOMoviez India Ltd.'s e-mail system. ***************** End of Disclaimer *******************
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.freedesktop.org/archives/gstreamer-devel/attachments/20141209/3c7b3ae8/attachment-0001.html>


More information about the gstreamer-devel mailing list