On our device, we need to have our application run on FB1 with a video feed displayed behind it. Video needs to be on the background because the application is supposed to show other information on top of the video. The video is fed from a camera on demand and is not running all the time. When we need to have video displayed, we set up a color key with our application and start a gstreamer-1.0 pipeline using imxv4l2sink, with the imxv4l2sink displaying the video on FB0. All of this works great UNTIL the video ends and we stop the pipeline. When the pipeline displaying the video is stopped, FB1 is blanked and the application no longer shows.
Our application is running on Yocto Morty. I have the gstreamer-imx elements from the github repo.
I can re-enable the global alpha and get the application to show again, but, of course, the blanking of the display is not acceptable. It seems that imxv4l2sink is determined to shut off the FB1 overlay display when it is done, even though it is displaying to FB0. (I have tried overlaysink, but that always seems to be displayed on top of the application. We need the video behind an allowed to show through.)
Unfortunately, this is a new requirement for our product and no one here is that familiar with how the alpha blending and all is supposed to work.
Is imxv4l2sink the wrong way to do this? Is there some way to keep imxv4l2sink from turning off FB1?
Thanks for any help and wish I had a better understanding of how this is supposed to work.