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
Solved! Go to Solution.
EthanCheng Mar 25, 2013 7:09 PM (in response to imxcommunityscout)
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."
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.
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
EthanCheng Mar 25, 2013 7:09 PM (in response to imxcommunityscout)
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."