I'm developing a simple application on a i.MX6Q based board connected to a 480x234 LVDS primary display (/dev/fb0 background and /dev/fb1 foreground). I'm working directly on framebuffer, no X11 or Wayland. I have these simple requirements:
- display a simple GUI on background
- display a videostream on a rectangle (e.g. 200x160), not hiding the background
I'm currently running official NXP Linux 4.1.15_1.2.0 BSP.
When the GUI is running I launch the following gstreamer 1.0 pipeline:
gst-launch-1.0 rtspsrc location=rtsp://192.168.0.102/ch1/sub ! rtpjpegdepay ! vpudec ! overlaysink overlay-width=200 overlay-height=160 overlay-left=50 overlay-top=50
The problem is that when the pipeline goes in PLAY state, the overlay covers the background, with video drawn in the 200x160 rectangle area, and black outside the rectangle. In the past I was running a YOCTO Dora based BSP, kernel 3.0.35, gstreamer-0.10 with an analogous pipeline I had the effect was exactly what I wanted, without problems.
The only way I've found to obtain the effect with the new BSP I want is drawing a 'green back' on the GUI and setting color key 0x00FF00 on /dev/fb1. Is there a simpler way to do that, i.e. simply 'not drawing' on overlay fb1 outside the video rectangle?
Any help will be appreciated. Thank you in advance!