AnsweredAssumed Answered

About IMX8QM Decode With Gstreamer

Question asked by Liu Xu on Jan 21, 2020
Latest reply on Feb 5, 2020 by igorpadykov

Hi

I want to test the VPU decode on  the IMX8QM board with Gstreamer plugin.

I use these two gst command the video can display right 

gst-launch-1.0 v4l2src device=/dev/video3  io-mode=dmabuf num-buffers=1000 ! video/x-raw,format=NV12,width=1280,height=720 ! autovideosink

gst-launch-1.0 v4l2src device=/dev/video3  io-mode=dmabuf num-buffers=100 ! video/x-raw,format=NV12,width=1280,height=720 ! v4l2h264enc output-io-mode=dmabuf-import ! h264parse ! flvmux streamable=true ! filesink location=/tmp/test_8.flv

 

But when I add the decode part with Gstreamer command  

gst-launch-1.0 v4l2src device=/dev/video3 io-mode=dmabuf num-buffers=300 ! video/x-raw,format=NV12,width=1280,height=720 ! v4l2h264enc output-io-mode=dmabuf-import ! h264parse ! v4l2h264dec capture-io-mode=dmabuf ! autovideosink

 

the board can't decode the video right and show follow errors

WARNING: from element /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstWaylandSink:autovideosink0-actual-sink-wayland: A lot of buffers are being dropped.
Additional debug info:
../../../../git/libs/gst/base/gstbasesink.c(2902): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstWaylandSink:autovideosink0-actual-sink-wayland:
There may be a timestamping problem, or this computer is too slow.
WARNING: from element /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstWaylandSink:autovideosink0-actual-sink-wayland: A lot of buffers are being dropped.
Additional debug info:
../../../../git/libs/gst/base/gstbasesink.c(2902): gst_base_sink_is_too_late (): /GstPipeline:pipeline0/GstAutoVideoSink:autovideosink0/GstWaylandSink:autovideosink0-actual-sink-wayland:
There may be a timestamping problem, or this computer is too slow.
Got EOS from element "pipeline0".
Execution ended after 0:00:07.801222625
Setting pipeline to PAUSED ...
Setting pipeline to READY ...
[19864.238975] ds960_mipi 8-0030: ds960_s_stream: set stream 3 off, now running 1
[19864.246286] ds960_mipi 8-0030: ds960_s_stream: stream off
Setting pipeline to NULL ...[19864.257093] [VPU Decoder] error: v4l2_ioctl_reqbufs() can't request (0) buffer : -16

Total showed frames (5), playing for (0:00:07.801577750), fps (0.641).
Freeing pipeline ...

 

If you have some advice about this question, please share it with me.

 

Thank you

Outcomes