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 748748 - compositor: only paint background if actually needed
compositor: only paint background if actually needed
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-05-01 12:10 UTC by Tim-Philipp Müller
Modified: 2018-11-03 13:34 UTC
See Also:
GNOME target: ---
GNOME version: ---


Attachments
Compositor: Skip unnecessary background fill (5.20 KB, patch)
2015-05-13 09:55 UTC, Pablo Anton
none Details | Review

Description Tim-Philipp Müller 2015-05-01 12:10:31 UTC
+++ This bug was initially created as a clone of Bug #746147 +++

Subject says it all.
Comment 1 Pablo Anton 2015-05-13 09:55:58 UTC
Created attachment 303298 [details] [review]
Compositor: Skip unnecessary background fill

Hello all,

As  Tim-Philipp commented the patch could re-use the just-introduced is_rectangle_contained() function. This new version do it.

> I wonder if we could do this as part of the previous loop or if that would be > too messy.

Maybe the decision if background is necessary or not could be taken into prepare_frame(), but I do not know if it will be any performance benefits and I think right now it is more clear.

Pablo.
Comment 2 Tim-Philipp Müller 2016-12-31 12:06:54 UTC
I think this does have performance benefits, I was just looking at a case where painting the background unnecessarily was line #2 in perf top, and taking up significant cpu power.

If I read your patch correctly, this covers the case of one input filling out the entire output, which I guess makes sense if compositor is used for picture-in-picture or logo overlay or such.

Any ideas how we could easily detect the case of a matrix/arrangement of input streams filling the complete output frame? (Easy case: N*M matrix, Harder case: e.g. one big picture with a row of little ones at the bottom)
Comment 3 GStreamer system administrator 2018-11-03 13:34:51 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/247.