mfw_deinterlacer failed to work on MX6Q/Linux

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

mfw_deinterlacer failed to work on MX6Q/Linux

462 Views
RobbieJiang
Contributor IV

I'm using the following gstreamer pipeline to stream video from MX6/Linux platform.

gst-launch -v gstrtpbin name=rtpbin \

    tvsrc device=/dev/video0 ! 'video/x-raw-yuv,format=(fourcc)UYVY,width=720,height=576,framerate=25/1' ! mfw_ipucsc ! 'video/x-raw-yuv,format=(fourcc)I420, width=720,height=576,framerate=25/1'! mfw_deinterlacer ! vpuenc codec=avc gopsize=5 ! video/x-h264,width=720,height=576 ! rtph264pay mtu=1024 ! rtpbin.send_rtp_sink_0 \

    rtpbin.send_rtp_src_0 ! udpsink host=192.168.0.68 port=5004 sync=false \

    rtpbin.send_rtcp_src_0 ! udpsink host=192.168.0.68 port=5005 sync=false async=false \

    udpsrc port=5008 ! rtpbin.recv_rtcp_sink_0

The camera input is 720x576@25fps, in interlaced UYVY frame format.

'mfw_ipucsc' is used to convert UYVY format to I420 format, since 'vpuenc' can only accept I420 format.

As the camera input is interlaced video frame, I tried 'mfw_deinterlacer' to de-interlace and produce a progressive input to 'vpuenc'.

Sometimes this pipeline worked fine,

however, sometimes it produced video frames of bad quality and output following ERROR message:

.....

0:06:03.556805377  2964 0x2c736bf0 ERROR                default mfw_gst_deinterlace.c:435:mfw_deinterlace: Push data failed.

0:06:03.557066043  2964 0x2c736bf0 ERROR                default mfw_gst_deinterlace.c:983:mfw_gst_deinterlace_chain: Try to deinterlace failed.

0:06:03.557454043  2964 0x2c736bf0 ERROR                default mfw_gst_deinterlace.c:825:mfw_gst_deinterlace_sink_event: Error in pushing the event, result is 0

......

BTW, I built 'mfw_deinterlacer' from gst-fsl-plugins-3.0.7.

What's the correct way of using 'mfw_deinterlacer' element?

Any idea?

Thanks.

Labels (3)
0 Kudos
1 Reply

328 Views
Yuri
NXP Employee
NXP Employee

  Perhaps the problem concerns with performance issue.

In Your Gstreamer pipeline buffering via "queue" element is not used.

Please try it.


Have a great day,
Yuri

-----------------------------------------------------------------------------------------------------------------------
Note: If this post answers your question, please click the Correct Answer button. Thank you!
-----------------------------------------------------------------------------------------------------------------------

0 Kudos