YUV Hardware colorspace conversion with gstreamer plugin (mfw_ipucsc)

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

YUV Hardware colorspace conversion with gstreamer plugin (mfw_ipucsc)

5,940 Views
heikofendrich
Contributor I

Hi,

I will to use the gstreamer plugin "mfw_ipucsc" to convert a "YUV" data source.

My source support only:

'video/x-raw-yuv,format=(fourcc)YUY2'

and

'video/x-raw-yuv,format=(fourcc)UYVY'

But the mfw_ipucsc module support for "yuv":

video/x-raw-yuv

                 format: NV12

video/x-raw-yuv

                 format: I420

video/x-raw-yuv

                 format: UYUV

What kind of signal is the "UYUV"?

I found no information on this (e.g. http://www.fourcc.org/yuv.php).

Labels (3)
9 Replies

1,974 Views
Yuri
NXP Employee
NXP Employee

Under YUV422 scheme it is possible to use the next output data sequence :
- UYUV ;

- VYUY ;

- YUYV ;

- YVYU.

0 Kudos

1,975 Views
keitanagashima
Senior Contributor I

Yuri, can you continue with the follow up?

(I consider that it is FSL's mistake)

Keita

0 Kudos

1,975 Views
Yuri
NXP Employee
NXP Employee

From the team :
Have checked the modified code, it's correct, it's our driver bug, we will check in the patch in next release. Thanks!

0 Kudos

1,974 Views
RobbieJiang
Contributor IV

Hi Yuri,

Any progress on this issue?

I also need mfw_ipucsc to convert UYVY(YUV422) to I420 or NV12.

Robbie

1,975 Views
keitanagashima
Senior Contributor I

Yuri,

Thank you very much!

OK. I got it.

Keita

0 Kudos

1,975 Views
Yuri
NXP Employee
NXP Employee

Will try to get a reply from BSP support.

0 Kudos

1,975 Views
keitanagashima
Senior Contributor I

Dear Yuri,

Hi.

I tested to convert from yuv4:2:2 to yuv4:2:0.

Refer to below Test 1 and Test 2.

Could you check my modification?

(I believe that below modification is right.)

===Test 1===

[Command]

gst-launch videotestsrc !

'video/x-raw-yuv,format=(fourcc)UYVY,framerate=30/1,width=1280,height=720' !

mfw_ipucsc !

'video/x-raw-yuv,format=(fourcc)I420,framerate=30/1,width=1280,height=720' !

autovideosink sync=false

[Result]

Failed

[Error]

  WARNING: erroneous pipeline: could not link videotestsrc0 to mfwgstipucsc0

===Test 2===

*I modified the caps definition of mfw_gst_ipu_csc.c from "UYUV" to "UYVY".

[Result]

Success (gst-launch worked and a test video was displayed.)

[Modify as follows]

---------mfw_gst_ipu_csc.c---------

/*=============================================================================

                                      LOCAL VARIABLES

=============================================================================*/

static IPUFormatMapper g_support_formats[] = {

    {GST_VIDEO_FORMAT_NV12, IPU_PIX_FMT_NV12, GST_VIDEO_CAPS_YUV("NV12")},

    {GST_VIDEO_FORMAT_I420, IPU_PIX_FMT_YUV420P, GST_VIDEO_CAPS_YUV("I420")},

    {GST_VIDEO_FORMAT_UYVY, IPU_PIX_FMT_UYVY, GST_VIDEO_CAPS_YUV("UYVY")},

    {GST_VIDEO_FORMAT_RGB16,IPU_PIX_FMT_RGB565, GST_VIDEO_CAPS_RGB_16},

    {GST_VIDEO_FORMAT_UNKNOWN, -1, NULL}

};

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

Keita

0 Kudos

1,975 Views
Yuri
NXP Employee
NXP Employee

karinavalencia - is it possible to involve here somebody from BSP team ?

0 Kudos

1,974 Views
heikofendrich
Contributor I

Excuse please, but how I understand are the formats for YUV422:

- UYVY (not UYUV);

- VYUY;

- YUYV;

- YVYU.

Mean that "UYVY" and "UYUV" in this case are the same?

0 Kudos