gstreamer/gst/compositor
Nirbheek Chauhan e0fd23cb23 compositor: Skip pads that are completely obscured by a higher zorder pad
For each frame, compare the frame boundaries, check if the format contains an
alpha channel, check opacity, and skip the frame if it's going to be completely
overwritten by a higher zorder frame. The check is O(n^2), but that doesn't
matter here because the number of sinkpads is small.

More can be done to avoid needless drawing, but this covers the majority of
cases. See TODOs. Ideally, a reverse painter's algorithm should be used for
optimal drawing, but memcpy during compositing is small compared to the CPU used
for frame conversion on each pad.

https://bugzilla.gnome.org/show_bug.cgi?id=746147
2015-05-01 10:56:32 +01:00
..
.gitignore gitignore: ignore more files 2015-01-12 22:52:36 +01:00
blend.c compositor: fix illegal memory access in blend function with negative ypos 2015-01-19 12:38:13 +00:00
blend.h compositor: Add a new compositor based on the new GstVideoAggregator base class 2014-06-20 19:53:33 +02:00
blendorc.h compositor: Add a new compositor based on the new GstVideoAggregator base class 2014-06-20 19:53:33 +02:00
compositor.c compositor: Skip pads that are completely obscured by a higher zorder pad 2015-05-01 10:56:32 +01:00
compositor.h compositor: Add a new compositor based on the new GstVideoAggregator base class 2014-06-20 19:53:33 +02:00
compositororc-dist.c Release 1.3.3 2014-06-22 19:22:28 +02:00
compositororc-dist.h compositor: Add a new compositor based on the new GstVideoAggregator base class 2014-06-20 19:53:33 +02:00
compositororc.orc compositor: Revert most of previous patch. 2015-03-16 04:00:44 +11:00
compositorpad.h compositor: Implement rescaling of the input via pad properties 2014-11-27 21:23:04 +01:00
Makefile.am compositor: Fix Makefile CFLAGS/LIBADD ordering 2014-06-24 08:01:21 +02:00