0

I am trying to achieve a transparent rectangle in the resulting frame rendered on screen, but cannot find how to do this.

Pipeline: I am writing a c++ application. I have multiple incoming video streams composed into one frame using compositor, rendered on screen using kmssink. (something like udpsrc -> rtpdepay -> decoder -(multiple)> compositor -> videoconvert -> kmssink)

Background: The setup is that different applications render on different DRM devices (devices are mapped to their own z-ordered layer on display, merged together by hardware). I need to sometimes make "my layer" transparent in a rectangle to show part of the layer below mine. I am new to gstreamer and "graphics" in general - perhaps this is a trivial task for the experienced person.

2
  • You may find some information from the following topic: discourse.gstreamer.org/t/… Commented Apr 24 at 11:36
  • Have looked into that one and implemented solution with "alpha" element. But the performance is horrible. I made a green rectangle png, decoded it and fed it into compositor element to be placed at correct spot, then the alpha element run with method "green". But fps drops from like 60 to 0. So I have 4 videos composited with compositor element, that works fine in 60 fps. With this additional image + alpha element, fps drops to essentially 0 Commented May 20 at 8:28

0

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Start asking to get answers

Find the answer to your question by asking.

Ask question

Explore related questions

See similar questions with these tags.