GStreamer Pipeline issue for SII9135/ADV7180 CSI input

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

GStreamer Pipeline issue for SII9135/ADV7180 CSI input

1,695 Views
racer
Contributor I

We are using IMX6 CSI to connect capture devices: SII9135 HDMI receiver(input format: 20bit, YUYV, 1920, 1080) and ADV7180 video decoder(input format: UYVY, 720, 576)

The Gstreamer capture plugin is: "mfw_v4lsrc",  and display plugin: "mfw_isink"

Because there are colorspace imcompatible, I tried to use "mfw_ipucsc" and "ffmpegcolorspace" to do the conversion, but meet problem when launch the pipeline.

The command we are using is:

-------------------------SII9135----------

gst-launch-0.10 -v mfw_v4lsrc device="/dev/video1" ! video/x-raw-yuv,format=YUYV,width=1920,height=1080 ! ffmpegcolorspace !  'video/x-raw-yuv,format=(fourcc)I420, width=1920,height=1080' ! mfw_isink axis-top=0 axis-left=80 disp-width=640 disp-height=480

MFW_GST_V4LSRC_PLUGIN 3.0.7 build on Aug 18 2014 05:20:19.
MFW_GST_ISINK_PLUGIN 3.0.7 build on Aug 18 2014 05:20:33.
WARNING: erroneous pipeline: could not link mfwgstv4lsrc0 to ffmpegcsp0

------------------------ADV7180--------

gst-launch-0.10 -v 'mfw_v4lsrc device="/dev/video0"' ! 'video/x-raw-yuv,format=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_isink

The Gstreamer will report error:

MFW_GST_V4LSRC_PLUGIN 3.0.7 build on Aug 18 2014 05:20:19.
IPU_CSC_CORE_LIBRARY_VERSION_INFOR_01.00.
MFW_GST_IPU_CSC_PLUGIN 3.0.7 build on Aug 19 2014 02:33:36.
MFW_GST_ISINK_PLUGIN 3.0.7 build on Aug 18 2014 05:20:33.
WARNING: erroneous pipeline: could not link mfwgstv4lsrc0 to mfwgstipucsc0

-------------------------------------------------

Seems the input format YUYV and UYVY is not compatible with mfw_ipucsc , ffmpegcolorspace and mfw_isink plugins,  format I420 can work, but the output video is not right.

Somebody knows how to setup the pipleline for SII9135 and ADV7180 capture devices? or there is some problem with my driver code?

Appreciated!

0 Kudos
2 Replies

593 Views
gusarambula
NXP TechSupport
NXP TechSupport

You may use gst-inspect to see which formats mfw_ipucsc supports.

$ gst-inspect mfw_ipucsc | egrep 'format|video/'

Unfortunately it seems that YUYV and UYVY are not supported.

You can find online some examples using fourcc codecs on gstreamer although these are not included on Freescale’s BSP.

0 Kudos

593 Views
racer
Contributor I

Here is the update for the issue.

 

  • Input device IMX6 CSI1 to connect capture devices: SII9135 HDMI receiver(input format: 16bit, YUYV, 1920x1080)
  • Output device: IMX6 integrate HDMI output.

1. Using IMX6 test program, we can get correct video bypass output.

 

The test command we are using is below:

   

>./mxc_v4l2_overlay.out -m 4 -iw 1920 -ih 1080 -it 0 -il 0 -ow 1920 -oh 1080 -ot 0 -ol 0 -r 0 -t -1 -d 0 -fg -fr 30 -di /dev/video1 -do /dev/video16

 

/dev/video1 is Sii9135 input device, video16 is HDMI output device. the output is correct as below,

  11.png


 

2. Using Gstreamer pipeline, the video output is wrong, the command is below:

 

>./gst-launch-0.10 -v 'mfw_v4lsrc device="/dev/video1"' ! 'video/x-raw-yuv, format=(fourcc)I420, width=1920, height=1080' !    mfw_isink

 

The two photo of the output is below:

  22.jpg

The video is blinking and with color bar.

We think that maybe colorspace mismatch between the video source and sink, the sii9135 input is YUYV-16bit, but the pipeline is using I420 format.

The gstreamer plugin(version 3.0.7) "mfw_v4lsrc" seems using a fixed pixformat "I420", is it the problem?

0 Kudos