After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 751484 - compositor: refactor in order to have alpha sources blended over non alpha ones
compositor: refactor in order to have alpha sources blended over non alpha ones
Status: RESOLVED OBSOLETE
Product: GStreamer
Classification: Platform
Component: gst-plugins-bad
git master
Other Linux
: Normal enhancement
: git master
Assigned To: GStreamer Maintainers
GStreamer Maintainers
Depends on:
Blocks:
 
 
Reported: 2015-06-25 08:49 UTC by Jean-Michel Hautbois (jmleo)
Modified: 2018-11-03 13:36 UTC
See Also:
GNOME target: ---
GNOME version: ---



Description Jean-Michel Hautbois (jmleo) 2015-06-25 08:49:52 UTC
The idea is to be able to compose a YUV with a AYUV into a YUV without having to convert twice.

It could be useful to use porter/duff operations for this.
Needs some refactoring in compositor, in order to select the proper blend function based on sources opacities.
Comment 1 Jean-Michel Hautbois (jmleo) 2015-06-25 16:21:26 UTC
Example pipeline :

gst-launch-1.0 -evv videotestsrc is-live=true ! 'video/x-raw,format=NV12,width=1280,height=720' ! \
compositor name=mux ! 'video/x-raw,format=NV12,width=1280,height=720' ! fakesink \
videotestsrc is-live=true ! 'video/x-raw,format=ARGB,width=320,height=240' ! mux.

The objective is to avoid videconversion from NV12 to ARGB or ARGB to NV12.
Right now, it is not working, as downstream has no alpha and one of sinks has.
Comment 2 Nicolas Dufresne (ndufresne) 2015-06-25 17:29:30 UTC
I agree we need this feature. I believe the compositor only implements SRC_OVER, where having SRC_COPY is wanted. I think completing the existing (but very limited) blit API would be the "ideal" way forward. I would be fine though if we implement more dynamic blit operation due to time constraint. A first step would be to collect the need, and what HW and API already do, and draft an usable and dynamic API.
Comment 3 GStreamer system administrator 2018-11-03 13:36:44 UTC
-- GitLab Migration Automatic Message --

This bug has been migrated to freedesktop.org's GitLab instance and has been closed from further activity.

You can subscribe and participate further through the new bug through this link to our GitLab instance: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/issues/264.