gstreamer/gst/compositor
Mathieu Duponchelle 8ff5079e5e compositor/blend: fix blending of subsampled components
The correct way to determine the byte offset at a certain yoffset
in a subsampled component is to shift the yoffset by the component's
hsub

This fixes out-of-bounds memory accesses and visible artefacts,
example pipeline with the samples from #802:

gst-launch-1.0 compositor name=vmixer sink_1::xpos=1910 sink_1::ypos=1080 ! \
    videoconvert ! videorate ! xvimagesink \
  filesrc location=VID_20200723_203606.mp4 ! decodebin name=demux1 ! \
    queue ! videoflip method=vertical-flip ! vmixer. \
  filesrc location=bridgeoverstubbledwater.mp4 ! decodebin name=demux2 ! \
    queue ! vmixer.

Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/988>
2020-12-29 22:48:08 +00:00
..
blend.c compositor/blend: fix blending of subsampled components 2020-12-29 22:48:08 +00:00
blend.h compositor: blend with multiple threads 2020-09-14 14:00:58 +10: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: Don't crash in prepare_frame() if the pad was just removed 2020-12-01 13:13:58 +02:00
compositor.h compositor: expose zero-size-is-unscaled property 2020-11-13 14:33:54 +00:00
compositororc-dist.c compositor: fix off-by-1 error in blending ARGB 2020-08-26 13:10:09 +00:00
compositororc-dist.h compositor: update disted orc backup files 2018-11-02 20:31:54 +00:00
compositororc.orc compositor: fix off-by-1 error in blending ARGB 2020-08-26 13:10:09 +00:00
meson.build meson: add update-orc-dist target 2020-07-04 14:01:56 +01:00