IPU overlay for iMX6Q

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

IPU overlay for iMX6Q

Jump to solution
2,867 Views
Tarek
Senior Contributor I

Hi,

I've enabled the IPU overlay for mxc_ipudev_test by modifying the ipudev_config_file.

The test fails with the following messages printed:

How do I setup the IPU overlay correctly?

root@imx6qsabrelite:~# ./mxc_ipudev_test -C ipudev_config_file wall-1024x768-565.rgb

Get config from config file ipudev_config_file:

priority = 0

task_id = 0

timeout = 1000

fcount = 50

loop_cnt = 1

in_width = 320

in_height = 240

in_fmt = I420

in_posx = 0

in_posy = 0

in_crop_w = 0

in_crop_h = 0

deinterlace_en = 0

motion_sel = 0

overlay_en = 1

ov_width = 320

ov_height = 240

ov_fmt = I420

ov_posx = 0

ov_posy = 0

ov_crop_w = 32

ov_crop_h = 240

alpha_mode = 1

alpha_value = 0

colorkey_en = 0

colorkey_value = 0x555555

out_width = 1024

out_height = 768

out_fmt = UYVY

out_rot = 0

out_posx = 0

out_posy = 0

out_crop_w = 0

out_crop_h = 0

out_to_fb = 1

out_filename = ipu0-1st-ovfb

found fb dev /dev/fb1

====== ipu task ======

input:

  foramt: 0x30323449

  width: 320

  height: 240

  crop.w = 320

  crop.h = 240

  crop.pos.x = 0

  crop.pos.y = 0

output:

  foramt: 0x59565955

  width: 1024

  height: 768

  roate: 0

  crop.w = 1024

  crop.h = 768

  crop.pos.x = 0

  crop.pos.y = 0

overlay:

  foramt: 0x30323449

  width: 320

  height: 240

  crop.w = 32

  crop.h = 240

  crop.pos.x = 0

  crop.pos.y = 0

combine with local alpha

ipu task check fail 10

Thanks,

Tarek

Labels (3)
0 Kudos
Reply
1 Solution
1,302 Views
karina_valencia
NXP Apps Support
NXP Apps Support
Re: IPU overlay for iMX6Q

Chun-Yi ChengEmployee

Please refer to the comment of the below link

https://community.freescale.com/message/306130#306130

About mxc_ipudev_test for overlay when overlay_en=1

"Just to let you know this example doesn't work for i.MX6 when running video!

To be fair it only works if you have a static image written to /dev/fb0.

Once you start using gstreamer to play video and use /dev/fb1 for the overlay it all goes horribly wrong."

View solution in original post

0 Kudos
Reply
3 Replies
1,302 Views
wayne1z
Contributor II

For the overlay(combination) processing, the overlay resolution should be the same as the output resolution.

You can run autorun-ipu.sh and get lots of examples, including the overlay test.

0 Kudos
Reply
1,302 Views
Tarek
Senior Contributor I

In my application I need to display video from 4, 8 or 16 different cameras at the same time. The screen will be divided into  4, 8 or 16 squares each will play different video. Selecting the camera and the screen configuration will change according to user requests on the fly using the GUI.

I was planing to use the output buffer from the IPU to display the video while overlay buffer for the GUI.

Now whatever video resolution this shouldn't affect the GUI. The GUI should always be full screen.

How do I achieve this configuration if I need to change the overlay resolution every time I change the video?

Thanks

0 Kudos
Reply
1,303 Views
karina_valencia
NXP Apps Support
NXP Apps Support
Re: IPU overlay for iMX6Q

Chun-Yi ChengEmployee

Please refer to the comment of the below link

https://community.freescale.com/message/306130#306130

About mxc_ipudev_test for overlay when overlay_en=1

"Just to let you know this example doesn't work for i.MX6 when running video!

To be fair it only works if you have a static image written to /dev/fb0.

Once you start using gstreamer to play video and use /dev/fb1 for the overlay it all goes horribly wrong."

0 Kudos
Reply