gstreamer/gst
Matthew Waters db15ec9286 videoflip: fix possible crash when setting the video-direction while running
A classic case of not enough locking.

One interesting thing with this is the interaction between the
rotation value and caps negotiation.  i.e. the width/height of the caps
can be swapped depending on the video-direction property.  We can't lock
the entirety of the caps negotiation for obvious reasons so we need to
do something else.  This takes the approach of trying to use a single
rotation value throughout the entirety of the negotiation and then
subsequent output frame in a kind of latching sequence.

Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/792
Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/836>
2021-01-04 12:10:12 +00:00
..
alpha plugins: uddate gst_type_mark_as_plugin_api() calls 2020-06-06 00:42:25 +02:00
apetag Remove autotools build system 2019-10-14 11:04:18 +01:00
audiofx meson: add update-orc-dist target 2020-07-04 15:04:59 +01:00
audioparsers aacparse: Fix caps change handling 2020-11-13 13:10:05 +00:00
auparse auparse: fix compiler warnings 2020-07-29 19:21:31 +03:00
autodetect autodetect: mark filter-caps property as DOC_SHOW_DEFAULT 2020-06-24 17:04:51 +02:00
avi avidemux: Avoid potential double-free 2020-05-06 04:36:46 +00:00
cutter Remove autotools build system 2019-10-14 11:04:18 +01:00
debugutils navseek: add hold_eos property 2020-11-01 15:19:46 +01:00
deinterlace deinterlace: force -DPREFIX on macos 2020-12-30 13:40:35 +01:00
dtmf Remove autotools build system 2019-10-14 11:04:18 +01:00
effectv plugins: uddate gst_type_mark_as_plugin_api() calls 2020-06-06 00:42:25 +02:00
equalizer docs: mark GstIirEqualizer as plugin API 2020-06-23 19:04:03 +02:00
flv flvmux: Release pads via GstAggregator 2020-11-02 08:46:21 +00:00
flx Remove autotools build system 2019-10-14 11:04:18 +01:00
goom Remove autotools build system 2019-10-14 11:04:18 +01:00
goom2k1 Remove autotools build system 2019-10-14 11:04:18 +01:00
icydemux Remove autotools build system 2019-10-14 11:04:18 +01:00
id3demux Remove autotools build system 2019-10-14 11:04:18 +01:00
imagefreeze imagefreeze: Response caps query from srcpad 2020-09-21 10:28:01 +03:00
interleave Remove autotools build system 2019-10-14 11:04:18 +01:00
isomp4 qtmux: support muxing multiple codec_data for h264/h265 2020-11-02 03:32:50 +00:00
law Remove autotools build system 2019-10-14 11:04:18 +01:00
level Remove autotools build system 2019-10-14 11:04:18 +01:00
matroska matroska-mux: Fix sparse stream crash 2020-10-28 01:55:06 +11:00
monoscope Remove autotools build system 2019-10-14 11:04:18 +01:00
multifile splitmuxsink: Avoid deadlock when releasing a pad from a running muxer 2020-12-16 06:17:08 +00:00
multipart good: use of g_value_dup_string 2019-12-20 09:30:26 +00:00
replaygain Remove autotools build system 2019-10-14 11:04:18 +01:00
rtp rtp: ldacpay: Add LDAC RTP payloader 2020-11-11 22:59:19 +05:30
rtpmanager rtpst2022-1-fecdec: don't xor out of bounds 2020-12-12 09:29:15 +00:00
rtsp rtspsrc: Use proper types instead of G_TYPE_POINTER for the RTSP messages in the "handle-request" signal 2020-12-21 09:59:43 +00:00
shapewipe Remove autotools build system 2019-10-14 11:04:18 +01:00
smpte plugins: uddate gst_type_mark_as_plugin_api() calls 2020-06-06 00:42:25 +02:00
spectrum Remove autotools build system 2019-10-14 11:04:18 +01:00
udp meson: update glib minimum version to 2.56 2020-10-15 18:21:54 +02:00
videobox meson: add update-orc-dist target 2020-07-04 15:04:59 +01:00
videocrop Fix usage of C99 2020-03-23 21:32:04 -04:00
videofilter videoflip: fix possible crash when setting the video-direction while running 2021-01-04 12:10:12 +00:00
videomixer meson: add update-orc-dist target 2020-07-04 15:04:59 +01:00
wavenc wavenc: Fix writing of the channel mask with >2 channels 2020-01-13 19:50:06 +00:00
wavparse Remove autotools build system 2019-10-14 11:04:18 +01:00
y4m Remove autotools build system 2019-10-14 11:04:18 +01:00
meson.build meson: Add feature options for all plugins 2018-07-27 18:42:54 +05:30