this is the plan:
- create a full-screen user interface (1024x768) with Qt and display on framebuffer
- on the user interface reserve an area (800x600) for video stream.
this was the easy part.
The video stream comes from a usb webcam, which does not support VIDIOC_OVERLAY.
One solution is, getting the YUYV-image, convert to RGB and create a QImage to display (or blit) on reserved area. This works with a huge CPU-load.
Another way might be (???) getting a pointer to YUYV-stream and passing this to IPU, which then overlays it to this area.
Is this possible? The example at imx-test-lib uses a OVERLAY-capable v4l2-source.
Below some comments, from one of our FAEs:
"The overlay feature of the mxc V4L source it make use of internal path of the IPU (CSI to display) so it can’t be used on your case…
However you can use the mfw_v4lsink for overlaying the camera output on top of graphics…
This sink takes care of CSC/Overlay/Resize/positioning and cropping, all of this in HW without using the CPU…
BTW You can control ALPHA and ColorKey of the blending via FB api."