gstreamer/gst
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
..
accurip gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
adpcmdec Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
adpcmenc Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
aiff aiff: Re-add noinst_HEADERS instruction 2015-04-29 10:56:24 +02:00
asfmux Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
audiobuffer Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
audiofxbad Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
audiomixer audiomixer: Allow downstream caps with a non-default channel-mask 2015-04-01 20:32:41 -04:00
audiovisualizers Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
autoconvert Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
bayer Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
camerabin2 wrappercamerabinsrc: remove unused code 2015-04-27 21:14:09 -03:00
cdxaparse Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
coloreffects Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
compositor compositor: Skip pads that are completely obscured by a higher zorder pad 2015-05-01 10:56:32 +01:00
dataurisrc Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
dccp gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
debugutils gst: remove some unnecessary glib version checks 2015-04-28 16:02:27 +01:00
dvbsuboverlay Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
dvdspu Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
faceoverlay gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
festival Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
fieldanalysis fieldanalysis: exception when block width to 0 2015-04-20 09:42:14 +01:00
freeverb Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
frei0r Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
games Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
gaudieffects Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
gdp Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
geometrictransform Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
hdvparse Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
id3tag Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
inter gst: remove some unnecessary glib version checks 2015-04-28 16:02:27 +01:00
interlace Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
ivfparse Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
ivtc Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
jp2kdecimator Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
jpegformat Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
librfb Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
liveadder gst: remove some unnecessary glib version checks 2015-04-28 16:02:27 +01:00
midi Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
mixmatrix mixmatrix: remove unused property enum items 2015-04-29 17:22:06 +01:00
mpeg1sys Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
mpegdemux mpegdemux: remove unused property enum item 2015-04-27 14:56:13 +01:00
mpegpsmux Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
mpegtsdemux tsdemux: fix taglist leak 2015-04-28 14:58:03 +01:00
mpegtsmux Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
mve Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
mxf mxf: fix descriptor leak 2015-04-28 11:53:52 -03:00
nuvdemux Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
onvif Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
overlay Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
patchdetect Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
pcapparse Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
pnm Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
rawparse Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
removesilence gst: Add better support for static plugins 2013-04-15 15:59:22 +02:00
rtjpeg rtjpeg: remove unused quality property 2015-04-30 10:50:19 +01:00
rtp Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
sdi Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
sdp Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
segmentclip Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
siren Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
smooth Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
smoothwave smoothwave: remove element unported from 0.8 2011-11-23 08:42:01 +01:00
speed Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
stereo Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
subenc Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
tta Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
vbidec Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
videofilters Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
videomeasure Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
videoparsers h265parse: Fix source caps to report cropped dimensions 2015-04-30 21:49:56 +02:00
videosignal Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
vmnc Rename property enums from ARG_ to PROP_ 2015-04-27 10:55:18 +01:00
y4m Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
yadif Remove obsolete Android build cruft 2015-04-26 18:59:32 +01:00
Makefile.am build: build plugins and examples in parallel where possible, if make -jN is used 2010-03-30 01:17:15 +01:00