discoverer: Prevent stream tags from leaking in global tags
[platform/upstream/gstreamer.git] / ChangeLog
index e385840..b600962 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
+=== release 1.19.1 ===
+
+2021-06-01 00:09:54 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * README:
+       * RELEASE:
+       * gst-plugins-base.doap:
+       * meson.build:
+         Release 1.19.1
+
+2021-05-26 16:57:28 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+         glcontext: Ask for an alpha channel and fallback
+         While this was already possible through the GLContext machinary, this simply
+         request an alpha channel by default and fallback if this is not possible. This
+         obsolete some RPi Dispmanx hack, since this is near equivalent will allow see
+         through when playgin WebM Alpha or other transparent files.
+         Application are still free to pass their own EGLContext attribute, this is
+         specially for the case the application let GStreamer chose (e.g. gst-launch).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1176>
+
+2021-05-31 09:14:53 +0200  Daniel Knobe <daniel-knobe@web.de>
+
+       * gst/rawparse/gstrawbaseparse.c:
+         rawbaseparse: check destination format correctly
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1181>
+
+2021-05-26 22:50:22 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/audiomixer.c:
+         audiomixer: Add test for discont going backwards
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1180>
+
+2021-05-27 16:05:04 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Don't overwrite already written samples
+         On re-sync, don't forget what has already been written. Instead, just
+         drop any samples that overlap with parts that were already filled.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1180>
+
+2021-05-27 16:20:09 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/audio/gstaudiobasesrc.c:
+         audiobasesrc: Fix divide by zero assertion
+         GstAudioRingBufferSpec can be cleared from other thread, then
+         rate value will be zero
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1179>
+
+2021-05-26 23:22:45 +0200  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/audio/audio-format.c:
+       * gst-libs/gst/video/video-format.c:
+         audio,video-format: Make generate_raw_formats idempotent for assertions
+         When compiling without assertions `g_assert` and its contents disappear
+         resulting in no list being deserialized at all and the
+         `gst_{audio,video}_formats_raw` functions to return an empty collection.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1177>
+
+2021-05-23 23:48:39 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/ogg/gstoggstream.c:
+       * tests/check/libs/rtp.c:
+         Use new gst_buffer_new_memdup()
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1170>
+
+2021-05-24 14:25:55 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/compositor/compositor.c:
+         compositor: Consider the converter-config when deciding whether one pad obscures another
+         If the converter configuration is set to not fill any borders, or if the
+         border fill color is not full opaque, then the pad has to be handled
+         as potentially transparent and can't be considered to obscure another
+         one.
+         This prevents pads from being wrongly skipped and doing alpha-blending
+         with uninitialized memory.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1172>
+
+2021-05-21 15:04:16 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+         doc: Update cache for AV12 pixel format
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1152>
+
+2021-05-21 13:28:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/video/video-orc-dist.c:
+       * gst-libs/gst/video/video-orc-dist.h:
+         video: Update video-orc-dist
+         This adds the new symbols needed for AV12 support.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1152>
+
+2021-05-18 16:20:36 -0300  Daniel Almeida <daniel.almeida@collabora.com>
+
+       * gst-libs/gst/gl/gstglcolorconvert.c:
+       * gst-libs/gst/gl/gstglcolorconvert.h:
+       * gst-libs/gst/gl/gstglformat.c:
+       * gst-libs/gst/gl/gstglmemory.h:
+         gl: add support for AV12
+         AV12 is an internally conceived format that is actually the
+         combination of NV12 and an alpha plane.
+         This format is to add to gstreamer's webM transparency support for
+         vp8 and vp9. To this end, two I420 streams are independently decoded
+         simultaneously for the actual content and the alpha plane respectively
+         and these are then combined into A420.
+         This patch adds GL conversion support so that it is possible to convert
+         from AV12 to RGBA for the purposes of rendering it on a display.
+         The reverse conversion is also supplied.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1152>
+
+2021-05-21 12:24:37 -0300  Daniel Almeida <daniel.almeida@collabora.com>
+
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-format.c:
+       * gst-libs/gst/video/video-format.h:
+       * gst-libs/gst/video/video-info.c:
+       * gst-libs/gst/video/video-orc.orc:
+         video: add support for AV12
+         AV12 is an internally conceived format that is actually
+         the combination of NV12 and an alpha plane.
+         This format is to add to gstreamer's webM
+         transparency support for vp8 and vp9. To this end, two
+         I420 streams are independently decoded simultaneously for
+         the actual content and the alpha plane respectively
+         and these are then combined into A420.
+         Since most hardware decoders output NV12, this patch adds
+         NV12+A to make the same workflow possible.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1152>
+
+2021-05-21 12:24:00 -0300  Daniel Almeida <daniel.almeida@collabora.com>
+
+       * gst-libs/gst/video/video-orc.orc:
+         video: video-orc: remove trailing spaces
+         Remove unnecessary trailing spaces at the end of some orc functions.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1152>
+
+2021-05-20 11:16:30 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * tests/validate/audiotestsrc/reverse/flow-expectations/log-asink-sink-expected:
+       * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/10_to_1fps/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/change_rate_reverse_playback/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/change_rate_while_playing/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/rate_0_5/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/rate_0_5_with_decoder/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/rate_2_0/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/rate_2_0_with_decoder/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/reverse.10_to_1fps/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/reverse.10_to_30fps/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/reverse.1_to_10fps/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/reverse.30fps/flow-expectations/log-videorate-src-expected:
+       * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-sink-expected:
+       * tests/validate/videorate/reverse.variable_to_10fps/flow-expectations/log-videorate-src-expected:
+         tests: Update expectation files with sorted structure fields
+
+2021-05-20 11:24:15 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/sdp/meson.build:
+         meson: Fix the name of the `sdp_deps` variable
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1167>
+
+2021-05-20 22:52:56 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/wgl/gstglcontext_wgl.c:
+         gl/context/wgl: implement a better get_proc_address()
+         Look in opengl32.dll first, then wglGetProcAddress(), and only then
+         possibly from any linked in libraries.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1165>
+
+2021-05-20 22:50:23 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gstglcontext.c:
+         gl/context: add opengl32.dll as a library to dlopen() on windows
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1165>
+
+2021-05-20 23:27:21 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/overlaycomposition/gstoverlaycomposition.c:
+         overlaycomposition: fix cut-off example code in docs
+         Include everything to the end.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1164>
+
+2021-05-06 17:26:50 -0300  Daniel Almeida <daniel.almeida@collabora.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst-libs/gst/gl/gstglcolorconvert.c:
+       * gst-libs/gst/gl/gstglcolorconvert.h:
+       * gst-libs/gst/gl/gstglformat.c:
+       * gst-libs/gst/gl/gstglmemory.h:
+         gl: add support for A420 conversion
+         A420 is a four planar format similar to I420 but with an extra buffer
+         for alpha values.
+         A common use of the gl stack is for GPU format conversions using
+         shaders, in which case one can use glupload, glcolorconvert and
+         gldownload elements to upload their buffer to the GPU context, perform
+         the conversion on the GPU itself and then retrieve the data to CPU
+         context.
+         A420 was not supported. This patch adds said support mainly by adding
+         the corresponding shader to perform the conversion and updating the
+         supported caps.
+         Both A420->RGBA and RGBA->A420 conversions are supported.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1153>
+
+2021-05-19 19:44:29 +0200  Enrique Ocaña González <eocanha@igalia.com>
+
+       * ext/gl/gstglcolorbalance.c:
+         glcolorbalance: Error out on unsupported texture target types
+         The issue can be reproduced on a computer with a Radeon graphics card
+         when trying to force GStreamer Editing Services to use GL for video
+         mixing in GESSmartMixer, instead of the GstCompositor that smart mixer
+         would normally use. This change causes the resulting video stream to
+         have "video/x-raw(memory:GLMemory) ... texture-target: 2D" caps (instead
+         of "video/x-raw ..." caps). At the PlaySink stage of the pipeline, a
+         GstGLImageSinkBin is plugged, with a GstGLColorBalance on it. For some
+         reason that is still to be debugged (and out of the scope of this
+         patch), gst_gl_filter_set_caps() is never called on that color balance
+         element, leaving filter->in_texture_target set to its default
+         GST_GL_TEXTURE_TARGET_NONE value. The incomplete _create_shader() logic
+         does the rest and silently generates a shader code that doesn't build.
+         This is the command I use to reproduce the issue (I'm not sure if I
+         would be able to isolate the issue in a simple pipeline, though):
+         GST_PLUGIN_FEATURE_RANK=vaapih265enc:NONE,vaapih264enc:NONE,vaapisink:NONE,vaapidecodebin:NONE,vaapipostproc:NONE,vaapih265dec:NONE,vaapivc1dec:NONE,vaapih264dec:NONE,vaapimpeg2dec:NONE,vaapijpegdec:NONE,glvideomixer:260
+         ges-launch-1.0 +clip /tmp/video.mp4
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1159>
+
+2021-05-19 16:35:01 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/compositor/blend.c:
+         compositor: Fix NV12 blend operation
+         The full src_height/width was being used instead of the remaining
+         width/height for the current band. As a side effect, that value would
+         get erroneously reset and would cause overrun.
+         Fixes #887
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1160>
+
+2021-05-18 15:36:36 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/gl/egl/gsteglimage.c:
+       * gst-libs/gst/gl/gstglmemory.c:
+       * gst-libs/gst/gl/gstglutils.c:
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-frame.c:
+       * gst-libs/gst/video/video-info.c:
+       * gst/compositor/compositor.c:
+       * gst/rawparse/gstrawvideoparse.c:
+         video: Pass component index not plane index
+         While so far it worked, we are about to introduce a format that break this
+         assuming. We have a format which consist of NV12 with alpha, and this format
+         does not have a direct mapping of the component against their plane indexes.
+         Fix this by using gst_video_format_info_component() introduced in 1.18 for
+         this purpose.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1151>
+
+2021-05-18 20:00:01 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gstglcontext.c:
+         gl/context: move egl creation lower in priority on _new()
+         e.g. if running a dual wgl/egl built library, then egl will always
+         succeed in creating the GstGLContext because almost anything could
+         support egl, as long as eglGetDisplay() works.
+         wgl, however has a check for the correct display type so should move
+         earlier in the tried list.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1154>
+
+2021-05-18 19:56:13 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/eagl/gstglcontext_eagl.m:
+       * gst-libs/gst/gl/gstgldisplay.c:
+       * gst-libs/gst/gl/gstgldisplay.h:
+         gl/display: provide a gst_gl_display_new_with_type()
+         Allows more fine-grained control over the exact display type that is
+         created.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1154>
+
+2021-05-19 16:23:43 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: Don't try to return void
+         warning C4098: 'gst_video_aggregator_parallel_convert_pad_finalize':
+         'void' function returning a value
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1155>
+
+2021-05-16 13:31:56 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-libs/gst/video/video-hdr.c:
+       * gst-libs/gst/video/video-hdr.h:
+         Revert video HDR10+ support
+         This reverts commit f76b731cbf76aa59ef462e4fd761cceda1f50a6d.
+         This reverts commit 631489de230d5e1c43f8ded596e220561824ca1e.
+         This reverts commit a1ed7a8f49568094f79fd76d7842d67e723229d1.
+         This reverts commit 7d6f72e956e63a0e8c4998c730d67c52e2b69a8d.
+         Back this out again for now for the release. Needs more discussion.
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/865
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1148>
+
+2021-05-17 00:33:44 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-libs/gst/gl/meson.build:
+       * meson.build:
+       * scripts/meson-pkg-config-file-fixup.py:
+         meson: fix up wrong escaping of variables in gl and plugins-base .pc file
+         Workaround for pkg.generate() escaping spaces in pc variables
+         that shouldn't be escaped. Perhaps going back to configure_file()
+         would be a better option though. Really needs a fix in Meson.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/884
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1150>
+
+2021-05-17 11:10:49 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-libs/gst/gl/meson.build:
+       * meson.build:
+         meson: add custom pkg-config variables also to uninstalled .pc files
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1150>
+
+2021-05-16 19:10:01 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * ext/pango/gstbasetextoverlay.c:
+         basetextoverlay: add debug category
+         All logs were using 'default' category which is not handy for debugging.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1149>
+
+2021-04-02 16:43:02 +1100  Matthew Waters <matthew@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst/compositor/compositor.c:
+       * gst/compositor/compositor.h:
+         compositor: perform conversions in parallel
+         Improves throughput of the total convert and blend process and allows
+         for higher performance across slightly more threads.
+         Also make use of video aggregator's task pool for blending as well in
+         order to reduce the number of threads.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1129>
+
+2021-04-02 16:40:37 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * gst-libs/gst/video/gstvideoaggregator.h:
+         video/aggregator: add parallel convert pad class
+         Each required conversion will be performed concurrently
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1129>
+
+2021-04-02 16:39:08 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-converter.h:
+         video/converter: add support for async conversion operation
+         Allows for users to start up multiple conversions concurrently.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1129>
+
+2021-03-26 16:34:20 +0200  Jordan Petridis <jordan@centricular.com>
+
+       * ext/gl/meson.build:
+         ext/gl: change graphene default options
+         The type was changed upstream from a boolean to an autofeature
+         https://github.com/ebassi/graphene/commit/41ebe5fa61d4bdb6c75f677942d19c6c976fd17b
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1087>
+
+2021-05-14 23:16:32 +0100  Jose Quaresma <quaresma.jose@gmail.com>
+
+       * tests/check/meson.build:
+         tests: use the real name of the videoscale test in GST_REGISTRY
+         The videoscale tests uses the same name as the one used in base tests.
+         Fix this and use the name of the videoscale test on the test environment GST_REGISTRY
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1146>
+
+2021-04-21 22:40:35 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/playback/gsturisourcebin.c:
+         playback: Handle sources with dynamic pads and pads already present
+         In case we already have a pad but more might be added later we were
+         ignoring the new pads added later, we should track the element
+         new pads and expose them as they are added.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1120>
+
+2021-04-21 22:19:39 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/playback/gsturisourcebin.c:
+         playback: Stop giving "source" as name to sources
+         This makes it very hard to understand what source we are talking about
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1120>
+
+2020-09-08 16:27:03 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m:
+       * gst-libs/gst/gl/eagl/gstglcontext_eagl.m:
+       * gst-libs/gst/gl/egl/gstglcontext_egl.c:
+       * gst-libs/gst/gl/egl/gstglcontext_egl.h:
+       * gst-libs/gst/gl/gl.h:
+       * gst-libs/gst/gl/gstglcontext.c:
+       * gst-libs/gst/gl/gstglcontext.h:
+       * gst-libs/gst/gl/gstglcontext_private.h:
+       * gst-libs/gst/gl/gstglcontextconfig.c:
+       * gst-libs/gst/gl/gstglcontextconfig.h:
+       * gst-libs/gst/gl/meson.build:
+       * gst-libs/gst/gl/wgl/gstglcontext_wgl.c:
+       * gst-libs/gst/gl/x11/gstglcontext_glx.c:
+       * gst-libs/gst/gl/x11/gstglcontext_glx.h:
+         glcontext: add support for influencing the backing configuration
+         New API:
+         - gst_gl_context_get_config()
+         - gst_gl_context_request_config()
+         A GL context configuration is a GstStructure that has some well-known
+         names for common values that can also be extended in platform-specific
+         ways if necessary.
+         Wrapped OpenGL contexts may be able to retrieve the GL context
+         configuration depending on the platform.  If that information is
+         available, GstGLContext will attempt to create an context that matches
+         the shared OpenGL context config unless gst_gl_context_request_config()
+         has been called.
+         A new environment variable 'GST_GL_CONFIG' will be read to influence the
+         configuration chosen.  The environment variable will only be used as a
+         fallback if gst_gl_context_request_config() has not been called.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/809>
+
+2021-05-13 15:55:37 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/egl/gstglcontext_egl.h:
+         gl/context/egl: change header guard to be unique
+         The header guard in gst/gl/egl/gstglcontext_egl.h was the same as
+         gst/gl/egl/egl.h
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/809>
+
+2020-09-08 15:53:27 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gstglapi.c:
+       * tests/check/libs/gstglapi.c:
+       * tests/check/meson.build:
+         gl/api: improve the to/from string for GstGLAPI/GstGLPlatform
+         With unit tests now!
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/809>
+
+2020-09-08 15:09:18 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gstglframebuffer.c:
+         gl/framebuffer: expand documentation on valid usage
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/809>
+
+2021-05-11 14:31:59 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * ext/opus/gstopusdec.c:
+         opusdec: Add Converter class to hint gst-validate
+         opusdec have minimal conversion capability, adding the Converter class allow
+         gst-validate to behave properly and not spit an error when it notice that the
+         number of channels or rate miss-match in and out.
+         Related to https://gitlab.freedesktop.org/gstreamer/gst-integration-testsuites/-/merge_requests/102
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1142>
+
+2021-05-11 10:34:16 +0800  Haihao Xiang <haihao.xiang@intel.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+         doc: update gst_plugins_cache.json
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1141>
+
+2021-05-10 14:43:23 +0800  Haihao Xiang <haihao.xiang@intel.com>
+
+       * gst-libs/gst/gl/gstglcolorconvert.c:
+       * gst-libs/gst/gl/gstglcolorconvert.h:
+       * gst-libs/gst/gl/gstglformat.c:
+       * gst-libs/gst/gl/gstglmemory.h:
+         gl: add support for RGBP and BGRP formats
+         gst-launch-1.0 videotestsrc ! video/x-raw,format=RGBP ! glimagesink
+         gst-launch-1.0 videotestsrc ! video/x-raw,format=BGRP ! glimagesink
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1141>
+
+2021-05-10 14:21:51 +0800  Haihao Xiang <haihao.xiang@intel.com>
+
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-format.c:
+       * gst-libs/gst/video/video-format.h:
+       * gst-libs/gst/video/video-info.c:
+         video: add support for RGBP and BGRP formats
+         The two RGB planar formats are used in OpenVino [1]
+         gst-launch-1.0 videotestsrc ! video/x-raw,format=BGRP ! fakesink
+         gst-launch-1.0 videotestsrc ! video/x-raw,format=RGBP ! fakesink
+         [1] https://docs.openvinotoolkit.org/latest/openvino_docs_optimization_guide_dldt_optimization_guide.html
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1141>
+
+2021-05-11 12:01:03 +0800  Haihao Xiang <haihao.xiang@intel.com>
+
+       * tests/check/libs/video.c:
+         test: enlarge the number
+         This is to make sure the case can pass after adding new video formats.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1141>
+
+2021-03-02 20:09:26 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/video/gstvideocodecalphameta.c:
+       * gst-libs/gst/video/gstvideocodecalphameta.h:
+       * gst-libs/gst/video/meson.build:
+       * gst-libs/gst/video/video.h:
+         codec: Introduce GstVideoCodecAlphaMeta
+         This meta hold one buffer of the same codec data as the parent memory. This
+         extra frame luma will be used as the alpha values for the final combined
+         frame. This is notably used to support VP8/VP9 alpha as defined in WebM and
+         matroska specification.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1128>
+
+2021-03-30 14:38:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/video/video.h:
+         video: Sort includes in video.h
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1128>
+
+2021-05-04 18:09:07 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/tcp/gstmultifdsink.c:
+       * gst/tcp/gstmultihandlesink.c:
+       * gst/tcp/gstmultihandlesink.h:
+       * gst/tcp/gstmultisocketsink.c:
+         multihandlesink: Use the monotonic clock for detecting timeouts and connection durations
+         Otherwise real-time clock changes can wrongly trigger timeouts, or not
+         cause timeouts to happen in time.
+         Unfortunately real-time clock times still have to be kept track inside
+         the elements for the statistics. Switching those over to the monotonic
+         clock would cause behaviour changes from the application point of view.
+         The statistics are extended with fields with monotonic times though.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1137>
+
+2021-05-03 17:10:20 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/check/elements/appsrc.c:
+         appsrc: Add test for testing the max-* and leaky-type properties
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1133>
+
+2021-05-02 20:46:00 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst-libs/gst/app/gstappsrc.c:
+       * gst-libs/gst/app/gstappsrc.h:
+         appsrc: Implement a leaky property similar to the queue element
+         This allows dropping the newest or oldest buffer when the internal queue
+         is full instead of blocking or continuing to grow.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1133>
+
+2021-04-30 19:22:46 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst-libs/gst/app/gstappsrc.c:
+       * gst-libs/gst/app/gstappsrc.h:
+         appsrc: Add new max-buffers / max-time / current-level-buffers / current-level-time properties
+         These work the same way as the corresponding properties on queue and
+         allow to control the internal buffer size of the appsrc in a more
+         flexible way.
+         Unlike in queue the max-buffers and max-time properties are 0 (i.e.
+         disabled) by default for backwards compatibility reasons.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1133>
+
+2021-04-20 19:53:01 +0200  François Laignel <fengalin@free.fr>
+
+       * gst/playback/gstdecodebin2.c:
+       * gst/playback/gstdecodebin3.c:
+       * gst/playback/gstplaybin2.c:
+       * gst/playback/gstplaybin3.c:
+       * gst/playback/gstplaysink.c:
+       * gst/playback/gsturidecodebin3.c:
+       * tests/check/elements/adder.c:
+       * tests/check/elements/audiointerleave.c:
+       * tests/check/elements/audiomixer.c:
+       * tests/check/elements/compositor.c:
+       * tests/check/elements/encodebin.c:
+       * tests/check/elements/streamsynchronizer.c:
+       * tests/check/elements/textoverlay.c:
+       * tests/check/pipelines/oggmux.c:
+       * tests/examples/compositor/crossfade.c:
+       * tests/examples/compositor/mosaic.c:
+       * tests/examples/decodebin_next/decodebin3.c:
+       * tests/examples/dynamic/codec-select.c:
+       * tests/examples/dynamic/sprinkle.c:
+       * tests/examples/dynamic/sprinkle2.c:
+       * tests/examples/dynamic/sprinkle3.c:
+       * tests/icles/output-selector-test.c:
+         Use gst_element_request_pad_simple...
+         Instead of the deprecated gst_element_get_request_pad.
+
+2021-05-04 15:38:18 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/rtp/gstrtphdrext.c:
+         rtp/hdrext: correct gst_rtp_get_header_extension_list() docs
+         The return value is a list of GstElementFactory's that when
+         gst_element_factory_create()ed will create a GstRTPHeaderExtension.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/897
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1136>
+
+2021-05-02 20:45:01 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/app/gstappsrc.c:
+         appsrc: Don't leak buffer list while wrongly unreffing buffer on EOS/flushing
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1134>
+
+2021-05-02 20:45:36 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/app/meson.build:
+         app: Add gstappsrc.h to the enum headers in meson.build
+         It's already indirectly included but let's better be explicit here.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1134>
+
+2021-04-27 10:30:15 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * tools/gst-play.c:
+         gst-play: add --start-position command line argument
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1126>
+
+2021-04-30 20:42:55 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst/videotestsrc/gstvideotestsrc.c:
+         videotestsrc: Fix a leak when computing alpha caps
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1131>
+
+2021-04-23 14:45:07 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * tests/examples/playback/playback-test.c:
+         playback-test: add window title
+         If playbin mode, display the current uri
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1122>
+
+2021-04-29 21:16:10 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/sdp/gstsdpmessage.c:
+         sdp/caps: support translating transport-cc rtcp-fb from caps to sdp attributes
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1130>
+
+2021-04-11 18:43:06 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+         rtp: Fix request-extension signal call
+         Signal is registered as taking a guint however was being passed a
+         guint64 which fails on 32-bit.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1102>
+
+2021-04-16 18:10:38 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+       * sys/xvimage/xvimagesink.c:
+         xvimagesink: Handle cropping when copying frames.
+         Cropping was not handled properly when frames have to be copied to
+         xvimage's buffer pool, first because the crop meta were dropped, and
+         second because the allocated frame size in xvimage's buffer pool were
+         smaller than the incoming frame.
+         This patch updates xvimagesink's video info when propose_allocation()
+         is called, and copies the GstVideoCropMeta from source frame to
+         destination one.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1088>
+
+2021-04-01 15:30:41 +0200  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
+
+       * sys/xvimage/xvimagesink.c:
+         xvimagesink: Delay pool creation until it's needed.
+         Buffer pool is created every time setcaps() is called, but it's
+         required only when upstream doesn't use it, so it's only needed to
+         copy frames onto XV buffers.
+         This patch delay the creation of the buffer pool until it's frame copy
+         is required.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1088>
+
+2021-03-17 13:56:16 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gl/gstgldownloadelement.c:
+       * ext/gl/gstgldownloadelement.h:
+       * ext/gl/meson.build:
+       * gst-libs/gst/gl/meson.build:
+         gl/download: add support for output memory:NVMM buffers
+         Currently RGBA-only.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1071>
+
+2021-03-17 13:54:17 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gstglbufferpool.c:
+       * gst-libs/gst/gl/gstglbufferpool.h:
+         gl/bufferpool: add api for retrieving the configure gl allocation params
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1071>
+
+2021-02-26 18:48:09 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gstglupload.c:
+       * gst-libs/gst/gl/meson.build:
+         glupload: add support for uploading memory:NVMM buffers
+         Currently RGBA-only.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1071>
+
+2021-03-18 14:20:34 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/egl/gstglmemoryegl.c:
+       * gst-libs/gst/gl/gstglupload.c:
+         glupload: guard against glEGLImageTexture2D not existing
+         e.g. if targetting EGL/opengl, we would attempt to use this GLES
+         function when wrapping EGLImage's.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1071>
+
+2021-04-26 14:25:03 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * gst-libs/gst/gl/meson.build:
+         gstgl: Fix build when Meson >= 0.58.0rc1
+         "implicit_include_directories: false" now also means that current build
+         directory is not added to include paths by default any more. We have to
+         add it manually because we have some custom_target() that generate
+         headers in current build directory.
+         See https://github.com/mesonbuild/meson/issues/8700.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1125>
+
+2021-04-23 14:05:45 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m:
+       * gst-libs/gst/gl/cocoa/gstglcontext_cocoa.m:
+       * gst-libs/gst/gl/cocoa/gstgldisplay_cocoa.m:
+       * gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:
+       * gst-libs/gst/gl/gstglfuncs.h:
+       * gst-libs/gst/gl/meson.build:
+       * tests/examples/gl/cocoa/cocoa-videooverlay.m:
+       * tests/examples/gl/qt/qglwtextureshare/cocoa_utils.mm:
+         opengl: Silence macOS OpenGL deprecations
+         As of macOS 10.14 the entire OpenGL system is deprecated. No need to
+         log the general warnings about it. Specific warnings are still enabled.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1123>
+
+2021-04-06 14:55:39 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * tests/examples/playback/playback-test.c:
+         playback-test: fix seek crash
+         check that app->seek_format exists before seeking.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1095>
+
+2021-04-20 23:20:19 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/tcp/gsttcpclientsink.c:
+       * gst/tcp/gsttcpclientsrc.c:
+       * gst/tcp/gsttcpelements.c:
+         tcp: Rework client start error handling.
+         Ensure errors are cleaned up properly at the right level.
+         Abort connection attempts if we're cancelled.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1115>
+
+2021-04-21 17:18:51 +0200  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+         rtpbasedepay: fix locking of GstRTPHeaderExtension
+         'ext' object unlocked if gst_rtp_header_extension_read() fails was never
+         locked in the first place.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1118>
+
+2021-04-21 10:27:10 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/vorbis/gstivorbisdec.c:
+       * ext/vorbis/gstvorbisdec.c:
+       * ext/vorbis/gstvorbiselement.c:
+       * ext/vorbis/gstvorbisenc.c:
+       * ext/vorbis/gstvorbisparse.c:
+       * ext/vorbis/gstvorbistag.c:
+         vorbis: avoid duplicate symbols
+         Use TREMOR define to avoid duplicate symbols
+         of ivodebis and vorbis plugins when
+         static linking GStreamer.
+         Rearrange debug category init.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1116>
+
+2021-04-21 02:05:36 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/playback/gsturidecodebin.c:
+         uridecodebin: Don't force floating reference for future reusable decodebin
+         uridecodebin assumes that refcount of decodebins stored in pending_decodebins
+         are floating but it might not be true in case that refcount of the decodebin
+         was touched in other places. To avoid the floating refcount issue,
+         hold strong reference.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1113>
+
+2021-04-21 02:02:48 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/playback/gsturidecodebin.c:
+         uridecodebin: Use gst_object_ref instead of g_object_ref
+         It's more debugging friendly (tracer for example)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1113>
+
+2021-04-20 11:06:09 +0300  Jordan Petridis <jordan@centricular.com>
+
+       * gst-libs/gst/video/gstvideoencoder.c:
+         gstvideoencoder: make sure the buffer is writable before modifying metadata
+         Similar to ae8d0cf3acfaf79d8479647a55bd44b8453d07df
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1112>
+
+2021-04-19 15:54:18 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/tcp/gsttcpclientsink.c:
+         tcp: Convert tcpclientsink to new helpers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1105>
+
+2021-04-19 15:54:04 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/tcp/gsttcpclientsrc.c:
+         tcp: Convert tcpclientsrc to new helpers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1105>
+
+2021-04-19 15:53:36 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/tcp/gsttcpserversink.c:
+         tcp: Convert tcpserversink to new helpers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1105>
+
+2021-04-19 15:52:35 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/tcp/gsttcpserversrc.c:
+         tcp: Convert tcpserversrc to new helpers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1105>
+
+2021-04-19 15:48:18 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/tcp/gsttcpelements.c:
+       * gst/tcp/gsttcpelements.h:
+         tcp: Add helper functions to lookup hostnames and create sockets.
+         Lookup will now maintain the full list of possible IP address(es).
+         We can now iterate over all available addresses in case certain
+         address families (IPv6) are disabled or try connecting to additional
+         addresses for the clients.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1105>
+
+2021-04-19 11:53:10 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * tests/check/pipelines/tcp.c:
+         tests/tcp: Fail if unable to start pipelines.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1105>
+
+2021-04-19 13:22:16 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * gst/tcp/gstsocketsrc.c:
+       * gst/tcp/gsttcp.h:
+       * gst/tcp/gsttcpclientsink.c:
+       * gst/tcp/gsttcpclientsink.h:
+       * gst/tcp/gsttcpclientsrc.c:
+       * gst/tcp/gsttcpelements.c:
+       * gst/tcp/gsttcpelements.h:
+       * gst/tcp/gsttcpserversink.c:
+       * gst/tcp/gsttcpserversrc.c:
+       * gst/tcp/gsttcpserversrc.h:
+       * gst/tcp/meson.build:
+         tcp: cleanup files
+         consolidate gsttcp.h & gsttcpelements.h
+         rename gsttcpelement.c to match header
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1105>
+
+2021-04-19 13:28:39 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: use DTS if PTS unknown
+         The buffer should be set according to DTS if exists
+         when we are guessin the PTS instead of segment start.
+         The decoder can receive buffers which are before the segment
+         in case of seek for example.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1111>
+
+2021-03-30 11:18:17 +0200  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/audio/gstaudiobasesink.h:
+       * gst-libs/gst/video/gstvideoutils.h:
+       * gst-libs/gst/video/video-color.c:
+       * gst/rawparse/gstrawbaseparse.c:
+         Drop `@` documentation references from functions and external types
+         `@` references are used to reference function parameters, struct members
+         or enum variants _within_ the current type/function.  It cannot and
+         should not be used to reference to types outside that.
+         Since C has no notion of member functions it makes little sense to
+         prefix these with `@`; most of the documentation here was referencing
+         functions on _different_ types anyway.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1090>
+
+2021-04-12 14:02:46 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/playback/gstplaybin2.c:
+       * gst/playback/gstplaybin3.c:
+         playbin{2,3}: fix base_time selection when flush seeking live
+         This is a direct translation of
+         <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/429>,
+         as playbin{2,3} insulates its sub groups state changes from the pipeline
+         base class, it needs to track whether the subgroup is live itself,
+         and handle RESET_TIME the same way GstPipeline does.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1104>
+
+2021-04-11 14:29:30 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * tests/check/elements/overlaycomposition.c:
+         overlaycomposition: Fix test for big endian.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1103>
+
+2021-04-11 23:42:13 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-libs/gst/gl/egl/gstglmemoryegl.h:
+       * gst-libs/gst/gl/gstglbuffer.h:
+       * gst-libs/gst/gl/gstglmemory.h:
+       * gst-libs/gst/gl/gstglmemorypbo.h:
+       * gst-libs/gst/gl/gstglrenderbuffer.h:
+         gl: fix up Since markers for newly-added _get_type() functions
+         Follow-up to !999 which wasn't backported into 1.18 in the end
+         after all.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/857
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1101>
+
+2021-04-06 13:22:15 +0200  Robin Burchell <robin.burchell@crimson.no>
+
+       * gst/gio/gstgiobasesink.c:
+         gstgiobasesink: Handle incomplete writes in gst_gio_base_sink_render()
+         As the comment asked, yes, incomplete writes can happen.
+         I have encountered this with an sshfs mount, for example.
+         It seems like g_output_stream_write_all() is designed to handle this case,
+         by not returning until the requested buffer has been completely written,
+         or an error occurs, which seems to match up with the desired behaviour.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/885
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1100>
+
+2021-04-05 00:34:21 +0900  Seungha Yang <seungha@centricular.com>
+
+       * ext/pango/gstclockoverlay.c:
+       * ext/pango/gstclockoverlay.h:
+         clockoverlay: Fix broken string formatting by strftime() on Windows
+         Like other foobarA variant APIs on Windows, formatted string
+         by strftime() is ANSI string, not unicode encoded one.
+         It would be problematic for non-english locale systems.
+         We should use unicode version API (wcsftime in this case)
+         whenever it's possible on Windows.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1093>
+
+2021-04-07 04:25:47 -0400  Doug Nazar <nazard@nazar.ca>
+
+       * ext/alsa/gstalsasink.c:
+       * gst-libs/gst/audio/gstaudiosink.c:
+         audio/alsa: Exit write loop if underlying device is already paused.
+         If the alsasink thread starts the write loop but another thread pauses
+         the underlying alsa device, the sink thread will endlessly loop.
+         snd_pcm_writei() will return 0 if the state is SND_PCM_STATE_PAUSED
+         and the loop will never make any progress.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1097>
+
+2021-04-07 08:28:40 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * gst-libs/gst/gl/meson.build:
+         meson: Fix gstreamer-gl-prototypes-1.0.pc
+         This fix a warning because we were generating 2 pc files for gstgl
+         library. Also fix missing glesv2 in Requires.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1099>
+
+2020-06-01 12:45:36 +0200  Matej Knopp <matej.knopp@gmail.com>
+
+       * gst-libs/gst/pbutils/codec-utils.c:
+         codec-utils: properly determine AAC Level
+         Table 1.10 – "Levels for the AAC Profile" only goes to 5 max channels
+         / 7 max channel post amendmend, so I assume the number of channels
+         should not include LFE, otherwise there's no valid level for 5.1 resp.
+         7.1 (post amendmend)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/680>
+
+2021-04-04 21:18:59 +0700  Binh Truong <crziter@gmail.com>
+
+       * gst-libs/gst/gl/gl_mkenum.py:
+         Fix build issue on MinGW64
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1094>
+
+2021-03-18 20:13:21 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+       * gst-libs/gst/rtp/gstrtpbuffer.c:
+         rtpbuffer: make sure header extension buffer is initialized
+         Based upon valgrind finding:
+         Conditional jump or move depends on uninitialised value(s)
+         at 0x4AFF589: read_rtp_header_extensions (gstrtpbasedepayload.c:1197)
+         by 0x4AFF9E5: gst_rtp_base_depayload_set_headers
+         (gstrtpbasedepayload.c:1298)
+         by 0x4AFFEE0: gst_rtp_base_depayload_do_push
+         (gstrtpbasedepayload.c:1413)
+         by 0x4AFFF53: gst_rtp_base_depayload_push
+         (gstrtpbasedepayload.c:1448)
+         by 0x4AFDEBA: gst_rtp_base_depayload_handle_buffer
+         (gstrtpbasedepayload.c:801)
+         by 0x4AFE41E: gst_rtp_base_depayload_chain_list
+         (gstrtpbasedepayload.c:899)
+         by 0x48F262C: gst_pad_chain_data_unchecked (gstpad.c:4414)
+         by 0x48F3333: gst_pad_push_data (gstpad.c:4655)
+         by 0x48F3DF8: gst_pad_push_list (gstpad.c:4814)
+         by 0x4AFAD87: gst_rtp_base_payload_push_list
+         (gstrtpbasepayload.c:1978)
+         by 0x72B3154: gst_rtp_vp8_pay_handle_buffer (gstrtpvp8pay.c:672)
+         by 0x4AF7031: gst_rtp_base_payload_chain (gstrtpbasepayload.c:868)
+         Uninitialised value was created by a heap allocation
+         at 0x483C77F: malloc (in
+         /usr/lib/x86_64-linux-gnu/valgrind/vgpreload_memcheck-amd64-linux.so)
+         by 0x4B8BA78: g_malloc (gmem.c:106)
+         by 0x4BA3A9D: g_slice_alloc (gslice.c:1069)
+         by 0x488D777: _sysmem_new_block (gstallocator.c:413)
+         by 0x488DB28: default_alloc (gstallocator.c:512)
+         by 0x488D3E8: gst_allocator_alloc (gstallocator.c:310)
+         by 0x4AE97E3: gst_rtp_buffer_set_extension_data (gstrtpbuffer.c:856)
+         by 0x4AF9EC6: set_headers (gstrtpbasepayload.c:1757)
+         by 0x489FE4D: gst_buffer_list_foreach (gstbufferlist.c:287)
+         by 0x4AFA87A: gst_rtp_base_payload_prepare_push
+         (gstrtpbasepayload.c:1915)
+         by 0x4AFAD06: gst_rtp_base_payload_push_list
+         (gstrtpbasepayload.c:1970)
+         by 0x72B3154: gst_rtp_vp8_pay_handle_buffer (gstrtpvp8pay.c:672)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1075>
+
+2021-04-01 21:44:10 -0400  Chris White <cxwembedded@gmail.com>
+
+       * gst/typefind/gsttypefindfunctions.c:
+         typefind: use new gst_type_find_suggest_empty_simple()
+         gst_type_find_suggest_simple() now requires a NULL terminator.
+         Use the new, simpler API for no-parameter calls.
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/774#note_861492
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1092>
+
+2021-03-03 18:28:54 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: allow selecting an alpha output from non-alpha inputs
+         e.g. if we have:
+         video-x/raw,format=I420 ! compositor ! video/x-raw,format=BGRA
+         This will currently produce a warning as the alpha-ness of the chosen
+         'best' format (I420) will be different from the value restricted by the
+         downstream caps filter.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1059>
+
+2021-03-29 14:10:12 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * sys/xvimage/xvcontext.c:
+       * sys/xvimage/xvimage.c:
+       * sys/xvimage/xvimagepool.c:
+       * sys/xvimage/xvimagesink.c:
+       * sys/xvimage/xvimagesink.h:
+         xvimage: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1089>
+
+2021-03-29 14:09:16 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * sys/ximage/ximage.c:
+       * sys/ximage/ximagepool.c:
+       * sys/ximage/ximagesink.c:
+       * sys/ximage/ximagesink.h:
+         ximage: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1089>
+
+2021-03-29 14:07:00 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audiotestsrc/gstaudiotestsrc.c:
+       * gst/audiotestsrc/gstaudiotestsrc.h:
+         audiotestsrc: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1089>
+
+2021-03-29 14:06:30 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audioresample/gstaudioresample.c:
+       * gst/audioresample/gstaudioresample.h:
+         audioresample: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1089>
+
+2021-03-29 14:06:00 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audiorate/gstaudiorate.c:
+       * gst/audiorate/gstaudiorate.h:
+         audiorate: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1089>
+
+2021-03-19 10:31:58 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/playback/gstdecodebin2.c:
+       * gst/playback/gstdecodebin3.c:
+       * gst/playback/gstparsebin.c:
+       * gst/playback/gsturidecodebin.c:
+       * gst/playback/gsturidecodebin3.c:
+         playback: Don't special-case G_SIGNAL_RUN_CLEANUP stage in signal accumulators
+         All these signals don't run the class handler in the CLEANUP stage.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1076>
+
+2021-03-25 09:35:31 +1100  Luke Yelavich <themuso@themuso.com>
+
+       * tools/gst-device-monitor-1.0.1:
+         tools: Fix incorrect argument in gst-device-monitor-1.0 manpage
+         The --include-hidden argument was --show-hidden in a previous iteration of
+         commit ddf3e6669fcfcaeb3205af698d66c8ec1648f4b3, and I forgot to change the
+         example.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1080>
+
+2021-03-25 10:29:41 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstdecodebin3.c:
+         decodebin3: Don't insert duplicated streams in collection
+         Filter out the ones which are already present. Can happen with several input
+         stream which have identical collections
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1083>
+
+2020-12-11 10:15:32 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstparsebin.c:
+         parsebin: Put stream flags in GstStream
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1082>
+
+2020-11-19 10:49:01 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstdecodebin3.c:
+         decodebin3: Make input activation "atomic"
+         When adding inputs dynamically, we need to make sure the new parsebin are
+         added *and* activated by the same thread (by taking the state change lock).
+         The rationale for this is that the calling thread might be an upstream streaming
+         thread and when activating parsebin it might call back upstream. If we don't use
+         the same thread (ex: when the application does a state change on decodebin3
+         between the moment we add parsebin to decodebin3 and we synchronize the state of
+         parsebin) then we would end up in different threads trying to take upstream
+         recursive locks.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/932>
+
+2021-03-20 11:16:51 +1100  Luke Yelavich <themuso@themuso.com>
+
+       * tools/gst-device-monitor-1.0.1:
+       * tools/gst-device-monitor.c:
+         device-monitor: Add argument to include devices from hidden providers
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1077>
+
+2021-03-22 13:59:39 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
+         gl/wayland: provide a dummy global_remove function
+         Even if we don't care about any global objects being removed, wayland
+         will still error if globals are removed without a corresponding listener
+         set up for them.  e.g. wl_output hotplugging
+         Discovered by: Matthias Clasen
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1079>
+
+2021-03-21 16:46:54 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/gio/gstgiosrc.c:
+         gstgiosrc: Don't leak scheme string in gst_gio_src_query()
+         Add a g_free() in the code path that forwards the query to the parent
+         handler.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1078>
+
+2021-03-15 14:35:29 +0800  Bing Song <bing.song@nxp.com>
+
+       * gst/encoding/gstencodebasebin.c:
+         encodebin: handle video encoder preset fail.
+         Check video encoder preset before request muxer pad as MOV/MP4 don't
+         support addition/removal of tracks at random times.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1064>
+
+2021-03-18 19:18:36 +1100  Matthew Waters <matthew@centricular.com>
+
+       * ext/gl/gstgleffects.c:
+       * ext/gl/gstglimagesink.h:
+       * ext/opus/gstopusenc.c:
+       * gst-libs/gst/audio/gstaudiodecoder.c:
+       * gst-libs/gst/audio/gstaudiometa.c:
+       * gst-libs/gst/audio/streamvolume.c:
+       * gst-libs/gst/gl/cocoa/gstglcaopengllayer.m:
+       * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+       * gst-libs/gst/gl/gbm/gstgldisplay_gbm.c:
+       * gst-libs/gst/gl/gl_mkenum.py:
+       * gst-libs/gst/gl/gstglbasememory.c:
+       * gst-libs/gst/gl/gstglbuffer.c:
+       * gst-libs/gst/gl/gstglcontext.c:
+       * gst-libs/gst/gl/gstgldebug.c:
+       * gst-libs/gst/gl/gstgldisplay.c:
+       * gst-libs/gst/gl/gstglfeature.c:
+       * gst-libs/gst/gl/gstglmemory.c:
+       * gst-libs/gst/gl/gstglmemorypbo.c:
+       * gst-libs/gst/gl/gstglquery.c:
+       * gst-libs/gst/gl/gstglrenderbuffer.c:
+       * gst-libs/gst/gl/gstglsl.c:
+       * gst-libs/gst/gl/gstglsyncmeta.c:
+       * gst-libs/gst/gl/gstglutils.c:
+       * gst-libs/gst/gl/gstglwindow.c:
+       * gst-libs/gst/gl/wayland/wayland_event_source.c:
+       * gst-libs/gst/pbutils/encoding-profile.c:
+       * gst-libs/gst/pbutils/gstaudiovisualizer.c:
+       * gst-libs/gst/rtp/gstrtpmeta.c:
+       * gst-libs/gst/rtsp/gstrtspextension.c:
+       * gst-libs/gst/tag/gsttagmux.c:
+       * gst-libs/gst/tag/xmpwriter.c:
+       * gst-libs/gst/video/gstvideoaffinetransformationmeta.c:
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * gst-libs/gst/video/gstvideodecoder.c:
+       * gst-libs/gst/video/gstvideoencoder.c:
+       * gst-libs/gst/video/gstvideometa.c:
+       * gst-libs/gst/video/video-anc.c:
+       * gst-libs/gst/video/video-hdr.c:
+       * gst-libs/gst/video/video-multiview.c:
+       * gst-libs/gst/video/video-overlay-composition.c:
+       * gst/adder/gstadder.h:
+       * gst/encoding/gstencodebasebin.c:
+       * gst/playback/gstplay-enum.c:
+       * gst/videorate/gstvideorate.h:
+       * gst/videoscale/gstvideoscale.c:
+         gst: don't use volatile to mean atomic
+         volatile is not sufficient to provide atomic guarantees and real atomics
+         should be used instead.  GCC 11 has started warning about using volatile
+         with atomic operations.
+         https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719
+         Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1073>
+
+2021-03-18 15:58:01 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/vorbis/gstvorbiselement.c:
+         vorbis: fix debug category init
+         During the element splitting process,
+         the debug category initialization has
+         been dropped accidently.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1074>
+
+2021-03-17 14:26:54 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audioconvert/gstaudioconvert.c:
+         audioconvert: update doc for mix-matrix
+         No need for specific cast in mix-matrix
+         syntax.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1072>
+
+2021-03-16 17:53:54 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/ogg/gstoggdemux.c:
+         ogg: element_init returns void
+         no need to return boolean as it will
+         be always TRUE.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-03-16 12:59:14 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/playback/gstplaybackelement.c:
+       * gst/playback/gstplaybackelements.h:
+       * gst/playback/gstplaybin3.c:
+         playback: element_init returns void
+         no need to return boolean as it will
+         be always TRUE.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-03-16 12:56:53 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/ogg/gstoggaviparse.c:
+       * ext/ogg/gstoggmux.c:
+       * ext/ogg/gstoggparse.c:
+       * ext/ogg/gstogmparse.c:
+         ogg: element_init returns void
+         no need to return boolean as it will
+         be always TRUE.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-03-16 12:55:55 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/alsa/gstalsaelement.c:
+       * ext/alsa/gstalsaelements.h:
+       * ext/alsa/gstalsamidisrc.c:
+       * ext/alsa/gstalsasink.c:
+       * ext/alsa/gstalsasrc.c:
+         alsa: element_init returns void
+         no need to return boolean as it will
+         be always TRUE.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 11:15:10 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/volume/gstvolume.c:
+       * gst/volume/gstvolume.h:
+         volume: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 11:14:31 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/videotestsrc/gstvideotestsrc.c:
+       * gst/videotestsrc/gstvideotestsrc.h:
+         videotestsrc: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 11:11:25 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/videoscale/gstvideoscale.c:
+       * gst/videoscale/gstvideoscale.h:
+         videoscale: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 10:59:42 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/videorate/gstvideorate.c:
+       * gst/videorate/gstvideorate.h:
+         videorate: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 10:55:25 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/videoconvert/gstvideoconvert.c:
+       * gst/videoconvert/gstvideoconvert.h:
+         videoconvert: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 10:49:48 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/overlaycomposition/gstoverlaycomposition.c:
+       * gst/overlaycomposition/gstoverlaycomposition.h:
+         overlaycomposition: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 10:43:14 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/encoding/gstencodebin.c:
+       * gst/encoding/gstencodebin2.c:
+       * gst/encoding/gstencodingelements.c:
+       * gst/encoding/gstencodingelements.h:
+       * gst/encoding/meson.build:
+       * gst/encoding/plugin.c:
+         encoding: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 09:58:59 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/compositor/compositor.c:
+       * gst/compositor/compositor.h:
+         compositor: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 09:37:02 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/adder/gstadder.c:
+       * gst/adder/gstadder.h:
+         adder: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-02-11 09:34:13 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/cdparanoia/gstcdparanoiasrc.c:
+       * ext/cdparanoia/gstcdparanoiasrc.h:
+         cdparanoiasrc: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 17:54:31 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audioconvert/gstaudioconvert.c:
+       * gst/audioconvert/gstaudioconvert.h:
+       * gst/audioconvert/plugin.c:
+         audioconvert: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 18:47:41 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/pango/gstbasetextoverlay.c:
+       * ext/pango/gstclockoverlay.c:
+       * ext/pango/gstpangoelement.c:
+       * ext/pango/gstpangoelements.h:
+       * ext/pango/gstpangoplugin.c:
+       * ext/pango/gsttextoverlay.c:
+       * ext/pango/gsttextrender.c:
+       * ext/pango/gsttimeoverlay.c:
+       * ext/pango/meson.build:
+         pango: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 18:46:20 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/theora/gsttheora.c:
+       * ext/theora/gsttheoradec.c:
+       * ext/theora/gsttheoradec.h:
+       * ext/theora/gsttheoraenc.c:
+       * ext/theora/gsttheoraenc.h:
+       * ext/theora/gsttheoraparse.c:
+       * ext/theora/gsttheoraparse.h:
+         theora: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 17:56:13 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/vorbis/gstivorbisdec.c:
+       * ext/vorbis/gstvorbis.c:
+       * ext/vorbis/gstvorbisdec.c:
+       * ext/vorbis/gstvorbiselement.c:
+       * ext/vorbis/gstvorbiselements.h:
+       * ext/vorbis/gstvorbisenc.c:
+       * ext/vorbis/gstvorbisparse.c:
+       * ext/vorbis/gstvorbistag.c:
+       * ext/vorbis/meson.build:
+         vorbis: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 16:59:50 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/opus/gstopus.c:
+       * ext/opus/gstopusdec.c:
+       * ext/opus/gstopuselement.c:
+       * ext/opus/gstopuselements.h:
+       * ext/opus/gstopusenc.c:
+       * ext/opus/meson.build:
+         opus: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 15:42:32 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/gl/caopengllayersink.m:
+       * ext/gl/gstglalpha.c:
+       * ext/gl/gstglbumper.c:
+       * ext/gl/gstglcolorbalance.c:
+       * ext/gl/gstglcolorconvertelement.c:
+       * ext/gl/gstglcolorscale.c:
+       * ext/gl/gstgldeinterlace.c:
+       * ext/gl/gstgldifferencematte.c:
+       * ext/gl/gstgldownloadelement.c:
+       * ext/gl/gstgleffects.c:
+       * ext/gl/gstglelement.c:
+       * ext/gl/gstglelements.h:
+       * ext/gl/gstglfilterapp.c:
+       * ext/gl/gstglfilterbin.c:
+       * ext/gl/gstglfiltercube.c:
+       * ext/gl/gstglfilterglass.c:
+       * ext/gl/gstglfilterreflectedscreen.c:
+       * ext/gl/gstglfiltershader.c:
+       * ext/gl/gstglimagesink.c:
+       * ext/gl/gstglmixerbin.c:
+       * ext/gl/gstglmosaic.c:
+       * ext/gl/gstgloverlay.c:
+       * ext/gl/gstgloverlaycompositorelement.c:
+       * ext/gl/gstglsinkbin.c:
+       * ext/gl/gstglsrcbin.c:
+       * ext/gl/gstglstereomix.c:
+       * ext/gl/gstglstereosplit.c:
+       * ext/gl/gstgltestsrc.c:
+       * ext/gl/gstgltransformation.c:
+       * ext/gl/gstgluploadelement.c:
+       * ext/gl/gstglvideoflip.c:
+       * ext/gl/gstglvideomixer.c:
+       * ext/gl/gstglviewconvert.c:
+       * ext/gl/gstopengl.c:
+       * ext/gl/meson.build:
+         gl: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 15:12:29 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/gio/gstgio.c:
+       * gst/gio/gstgiobasesink.c:
+       * gst/gio/gstgiobasesink.h:
+       * gst/gio/gstgiobasesrc.c:
+       * gst/gio/gstgiobasesrc.h:
+       * gst/gio/gstgioelement.c:
+       * gst/gio/gstgioelements.h:
+       * gst/gio/gstgiosink.c:
+       * gst/gio/gstgiosink.h:
+       * gst/gio/gstgiosrc.c:
+       * gst/gio/gstgiosrc.h:
+       * gst/gio/gstgiostreamsink.c:
+       * gst/gio/gstgiostreamsink.h:
+       * gst/gio/gstgiostreamsrc.c:
+       * gst/gio/gstgiostreamsrc.h:
+       * gst/gio/meson.build:
+         gio: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 15:02:03 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/app/gstapp.c:
+       * gst/app/gstappelements.h:
+       * gst/app/gstappsink.c:
+       * gst/app/gstappsrc.c:
+       * gst/app/meson.build:
+         app: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 12:59:32 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/audiomixer/gstaudiointerleave.c:
+       * gst/audiomixer/gstaudiomixer.c:
+       * gst/audiomixer/gstaudiomixerelement.c:
+       * gst/audiomixer/gstaudiomixerelements.h:
+       * gst/audiomixer/gstaudiomixerplugin.c:
+       * gst/audiomixer/gstliveadder.c:
+       * gst/audiomixer/meson.build:
+         audiomixer: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-11 12:42:03 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/tcp/gstmultifdsink.c:
+       * gst/tcp/gstmultisocketsink.c:
+       * gst/tcp/gstsocketsrc.c:
+       * gst/tcp/gsttcpclientsink.c:
+       * gst/tcp/gsttcpclientsrc.c:
+       * gst/tcp/gsttcpelement.c:
+       * gst/tcp/gsttcpelements.h:
+       * gst/tcp/gsttcpplugin.c:
+       * gst/tcp/gsttcpserversink.c:
+       * gst/tcp/gsttcpserversrc.c:
+       * gst/tcp/meson.build:
+         tcp: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2020-12-01 15:14:00 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/rawparse/gstrawaudioparse.c:
+       * gst/rawparse/gstrawparseelements.h:
+       * gst/rawparse/gstrawvideoparse.c:
+       * gst/rawparse/gstunalignedaudioparse.c:
+       * gst/rawparse/gstunalignedvideoparse.c:
+       * gst/rawparse/plugin.c:
+         rawparse: allow per feature registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1029>
+
+2021-03-15 15:33:47 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Consider converting for equal audio formats
+         The converter might have a non-passthrough mix-matrix. The converter
+         can determine whether it should pass through, so let it, then remove it
+         if it's indeed a passthrough.
+         FIXME: Not converting when we need to but the config is invalid (e.g.
+         because the mix-matrix is not the right size) produces garbage. An
+         invalid config should cause a GST_FLOW_NOT_NEGOTIATED.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1070>
+
+2021-03-16 12:27:31 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Clean up _convert_pad_update_converter
+         No functional change.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1070>
+
+2021-03-15 19:05:44 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst-libs/gst/rtsp/gstrtspconnection.c:
+         rtspconnection: Consistently translate GIOError to GstRTSPResult
+         The users of this API need to be able to differentiate between EINTR
+         and ERROR. For example, in rtspsrc, gst_rtsp_conninfo_connect()
+         behaves differently when gst_rtsp_connection_connect_with_response_usec()
+         returns an ERROR or EINTR. The former is an element error while the
+         latter is simple a GST_ERROR since it was a user cancellation of the
+         connection attempt.
+         Due to this, rtspsrc was incorrectly emitting element errors while
+         going to NULL, which would or would not reach the application in
+         a racy manner.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1069>
+
+2021-03-03 01:08:25 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-libs/gst/tag/id3v2frames.c:
+         tag: id3v2: fix frame size check and potential invalid reads
+         Check the right variable when checking if there's
+         enough data left to read the frame size.
+         Closes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/876
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1065>
+
+2021-02-09 22:09:52 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+       * tests/check/libs/rtpbasedepayload.c:
+       * tests/check/libs/rtpdummyhdrextimpl.c:
+         rtpbasedepayload: handle caps change partway through buffer list
+         While preparing a blist for pushing, some RTP header extension may
+         request caps change for a specific buffer in the list. When this
+         happens, depayloader should immediately push those buffers from the list
+         that precede the currently processed buffer (for which the caps change
+         was requested) and only then apply the new caps to the src pad.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1011>
+
+2021-02-04 17:08:04 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+       * gst-libs/gst/rtp/gstrtphdrext.c:
+       * gst-libs/gst/rtp/gstrtphdrext.h:
+         rtphdrext: allow updating depayloader src caps
+         Add overridable method that updates depayloader's src caps based on
+         the data from RTP header.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1011>
+
+2021-01-12 22:11:46 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+       * gst-libs/gst/rtp/gstrtphdrext.c:
+       * gst-libs/gst/rtp/gstrtphdrext.h:
+         rtphdrext: allow the extension to inspect payloader's sink caps
+         Some header extensions may need to read information from the payloader's
+         sink caps. Introduce gst_rtp_header_extension_update_from_sinkcaps ()
+         that passes the caps to the extension, which can then use it to update
+         its internal state.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1011>
+
+2021-02-09 05:16:34 -0800  Devarsh Thakkar <devarsh.thakkar@xilinx.com>
+
+       * ext/alsa/gstalsasink.c:
+       * ext/alsa/gstalsasrc.c:
+         ext: alsa: Set buffer time after period time
+         This because underlying driver may have constraint on
+         buffer size to be dependent on period size, so period
+         time needs to be set first.
+         For e.g. Xilinx ASoC driver requires
+         buffer size to be multiple of period size for it's DMA
+         operation.
+         alsa-utils also set period time first as seen in below commit :
+         https://github.com/alsa-project/alsa-utils/commit/9b621eeac4d55c4e881f093be5b163ca07d01b63
+         Tested it on zcu106 board with HDMI based record and playback.
+         Also tested on Intel PC using Logitech C920 Webcam mic and ALC887-VD
+         Analog for playback.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1040>
+
+2021-03-08 10:45:32 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/playback/gstdecodebin2.c:
+       * gst/playback/gstdecodebin3.c:
+       * gst/playback/gstparsebin.c:
+       * gst/playback/gstplaybackplugin.c:
+       * gst/playback/gstplaybin2.c:
+       * gst/playback/gstplaysink.c:
+       * gst/playback/gststreamsynchronizer.c:
+       * gst/playback/gstsubtitleoverlay.c:
+       * gst/playback/gsturidecodebin.c:
+       * gst/playback/gsturidecodebin3.c:
+       * gst/playback/gsturisourcebin.c:
+         playback: remove useless ret test
+         Use GST_ELEMENT_REGISTER_DEFINE_CUSTOM instead
+         of GST_ELEMENT_REGISTER_DEFINE_WITH_CODE if a specific
+         init needs to be tested before registering the element.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1060>
+
+2021-03-08 10:44:53 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/ogg/gstoggdemux.c:
+         ogg: remove useless ret test
+         Use GST_ELEMENT_REGISTER_DEFINE_CUSTOM instead
+         of GST_ELEMENT_REGISTER_DEFINE_WITH_CODE if a specific
+         init needs to be tested before registering the element.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1060>
+
+2021-03-08 10:44:42 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/alsa/gstalsamidisrc.c:
+       * ext/alsa/gstalsasink.c:
+       * ext/alsa/gstalsasrc.c:
+         alsa: remove useless ret test
+         Use GST_ELEMENT_REGISTER_DEFINE_CUSTOM instead
+         of GST_ELEMENT_REGISTER_DEFINE_WITH_CODE if a specific
+         init needs to be tested before registering the element.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1060>
+
+2021-03-10 14:26:22 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: fix input_buffer ownership
+         The way pad->priv->input_buffer reference was managed was pretty
+         spurious:
+         - it was overridden without unrefing it, which could potentially lead to
+         leaks.
+         - we were unreffing it while keeping the pointer around, which could
+         potentially lead to use-after-free or double-free.
+         As priv->input_buffer is actually no longer used outside of the
+         aggregate() method, remove it from pad->priv to simplify the code and
+         prevent the issues desribed above.
+         Fix a single buffer leak when shutting down the pipeline as the buffer
+         returned from gst_aggregator_pad_drop_buffer() was never unreffed.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1061>
+
+2021-03-10 16:22:14 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: fix input buffer when converting
+         This code path is meant to convert the current buffer to the new format
+         on update. It was using priv->input_buffer as input which is either
+         priv->buffer or a converted version of it.
+         Use priv->buffer instead as priv->input_buffer may no longer be a valid
+         reference.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1061>
+
+2021-01-22 22:24:24 +0100  david <davidventura27@gmail.com>
+
+       * sys/ximage/ximagesink.c:
+       * sys/xvimage/xvcontext.c:
+         Set _NET_WM_NAME property for xvimagesink and ximagesink
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1017>
+
+2021-03-02 14:16:23 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstgldownloadelement.c:
+         gl: download: Fix a caps memory leak in _try_export_dmabuf().
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1058>
+
+2021-03-02 13:07:04 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstgldownloadelement.c:
+         gl: download: Fix a caps memory leak in prepare_output_buffer().
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1058>
+
+2021-03-01 23:33:29 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstgldownloadelement.c:
+         gl: download: Fix the wrong transformed result from src direction in transform_caps().
+         The current manner in transform_caps() for src direction is not very correct. For example,
+         when the src caps is:
+         video/x-raw(memory:DMABuf); video/x-raw; video/x-raw(memory:GLMemory)
+         this function returns:
+         video/x-raw(memory:DMABuf); video/x-raw; video/x-raw(memory:GLMemory)
+         as the sink caps. This is not correct, because DMABuf feature is not even in the sink pad's
+         caps template. The correct answer should be:
+         video/x-raw(memory:GLMemory); video/x-raw
+         only.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1058>
+
+2021-03-01 12:23:25 +0100  Alexander Vandenbulcke <av@telecom-it.be>
+
+       * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c:
+         gl/dispmanx: assign render_rect to window before window_resize
+         If the `render_rect` for a dispmanx display is set after calling
+         `window_resize` the resize defaults to the dp_width and dp_height to
+         determine the location of the render rectangle instead of the correct
+         dimensions that should be set on the window_egl.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1056>
+
+2021-02-18 16:16:33 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/compositor/compositor.c:
+         compositor: fix drawing of transparent background
+         When drawing the background multithreaded, y_start needs to be
+         scaled to obtain the correct byte offset from which to start
+         memsetting (yoffset).
+         Fixes #871
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1042>
+
+2021-02-25 11:03:31 +0100  Kristofer Björkström <kristofb@axis.com>
+
+       * gst-libs/gst/rtsp/gstrtspconnection.c:
+         gstrtspconnection: correct data_size when tunneled mode
+         gst_rtsp_connection_send_messages_usec in tunneled mode does base64
+         encode messages. When calculating data_size 1 bytes is added, which
+         results in ending the base64 with a NULL.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1051>
+
+2021-02-24 13:46:04 +0100  Robert Rosengren <robertr@axis.com>
+
+       * gst-libs/gst/audio/audio.c:
+       * gst-libs/gst/audio/gstaudiobasesink.c:
+       * gst-libs/gst/audio/gstaudiobasesrc.c:
+       * gst-libs/gst/audio/gstaudiocdsrc.c:
+       * gst-libs/gst/audio/gstaudiodecoder.c:
+       * gst-libs/gst/audio/gstaudioencoder.c:
+         audio: Use GST_BUFFER_PTS instead of deprecated GST_BUFFER_TIMESTAMP
+         GST_BUFFER_PTS already used in audio code base (e.g. gstaudiodecoder),
+         so migrate completely from deprecated GST_BUFFER_TIMESTAMP for better
+         readability, as gstcompat.h defines GST_BUFFER_TIMESTAMP directly to PTS
+         anyway.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1048>
+
+2021-02-24 19:51:40 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Log if the sample rate of one sinkpad is not accepted
+         Otherwise this can silently cause not-negotiated errors without any
+         direct hint about what went wrong.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1049>
+
+2021-02-23 14:40:02 +0100  Francisco Javier Velázquez-García <francisco.velazquez@ltnglobal.com>
+
+       * gst/videotestsrc/videotestsrc.c:
+         videotestsrc.c: Correct left shift operator
+         Use the left shift operator '<<' instead of the mistakenly typed less
+         than operator '<'.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1047>
+
+2021-02-19 16:44:35 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst-libs/gst/video/video-converter.c:
+         video-converter: Don't upsample/downsample/dither invalid lines
+         This is a fallout from the conversion to support multiple threads.
+         convert->upsample_p is never NULL now, it's always an allocated array of
+         n_threads potentially-null pointers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1043>
+
+2021-02-22 15:36:53 +0900  Jeongki Kim <jeongki.kim@jeongki.kim>
+
+       * gst/audioresample/gstaudioresample.c:
+         audioresample: Respect buffer layout when drain
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1045>
+
+2021-02-19 02:27:07 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/videoconvert/gstvideoconvert.c:
+         videoconvert: Only prefer upstream chroma-site with same subsampling.
+         If converting YUV formats with different chroma-subsampling, there's
+         probably no good reason to prefer the upstream chroma-siting so just use
+         the default for the output format.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1033>
+
+2021-02-16 01:24:15 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/videoconvert/gstvideoconvert.c:
+         videoconvert: Implement more sophisticated colorimetry caps transfer
+         Implement a more sophisticated transfer of colorimetry and
+         chroma-site fields to output caps when fixating.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1033>
+
+2021-02-15 18:34:33 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst/videoconvert/gstvideoconvert.c:
+         videoconvert: Forward colorimetry and chroma-site from upstream.
+         If downstream has expressed no preference for particular colorimetry
+         and chroma-site configuration, transfer them from the input caps.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/614
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1033>
+
+2021-01-19 15:56:18 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/playback/gstdecodebin3.c:
+         decodebin3: change stream selection message owner
+         In order to select the streams on GST_MESSAGE_STREAM_COLLECTION,
+         the app needs to send the select-streams event
+         to the decodebin and not to the parsebin.
+         The message should be always owned by the decodebin.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1014>
+
+2021-02-17 12:41:06 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst-libs/gst/audio/audio.c:
+       * tests/check/libs/audio.c:
+         libs: audio: Handle meta changes in gst_audio_buffer_truncate
+         Set timestamp and duration to GST_CLOCK_TIME_NONE unless trim==0,
+         because that function doesn't know the rate and therefore can't
+         calculate them. Set offset and offset_end to appropriate values. Make it
+         clear in the documentation that the caller is responsible for setting
+         the timestamp and duration.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/869
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1039>
+
+2021-02-15 16:05:30 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/playback/gsturidecodebin3.c:
+         uridecodebin3: make caps property work
+         The caps set on uridecodebin3 via the "caps" property
+         were never passed to the internal decodebin3, so did
+         absolutely nothing.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/837
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1034>
+
+2021-02-13 00:27:04 +0100  Alicia Boya García <ntrrgc@gmail.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: Fix racy critical when pool negotiation occurs during flush
+         I found a rather reproducible race in a WebKit LayoutTest when a player
+         was intantiated and a VP8/9 video was loaded, then torn down after
+         getting the video dimensions from the caps.
+         The crash occurs during the handling of the first frame by gstvpxdec.
+         The following actions happen sequentially leading to a crash.
+         (MT=Main Thread, ST=Streaming Thread)
+         MT: Sets pipeline state to NULL, which deactivates vpxdec's srcpad,
+         which in turn sets its FLUSHING flag.
+         ST: gst_vpx_dec_handle_frame() -- which is still running -- calls
+         gst_video_decoder_allocate_output_frame(); this in turn calls
+         gst_video_decoder_negotiate_unlocked() which fails because the
+         srcpad is FLUSHING. As a direct consequence of the negotiation
+         failure, a pool is NOT set.
+         gst_video_decoder_negotiate_unlocked() still assumes there is a
+         pool, crashing in a critical in gst_buffer_pool_acquire_buffer()
+         a couple statements later.
+         This patch fixes the bug by returning != GST_FLOW_OK when the
+         negotiation fails. If the srcpad is FLUSHING, GST_FLOW_FLUSHING is
+         returned, otherwise GST_FLOW_ERROR is used.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1031>
+
+2021-02-15 17:22:47 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst-libs/gst/audio/audio.c:
+         libs: audio: Fix gst_audio_buffer_truncate meta handling
+         In the non-interleaved case, it made `buffer` writable but then changed
+         the meta of the non-writable buffer.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1035>
+
+2021-02-13 21:25:18 +0000  Alejandro González <alejandro.gonzalez.correo@gmail.com>
+
+       * gst-libs/gst/audio/gstaudioencoder.c:
+         audioencoder: Fix gst_audio_encoder_get_audio_info return ownership GTK-Doc
+         GTK-Doc specifies that, by default, the caller owns returned objects, so that the caller should free them when it is done. However, in the case of this function, the returned GstAudioInfo is owned by the decoder, so this default choice is incorrect. This creates double free problems when using GStreamer Rust bindings, because they are generated using the information contained in the docs.
+         Fix this by correctly specifying that the caller does not own the returned object.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1032>
+
+2021-02-13 17:24:37 +0000  Alejandro González <alejandro.gonzalez.correo@gmail.com>
+
+       * gst-libs/gst/audio/gstaudiodecoder.c:
+         audiodecoder: Fix gst_audio_decoder_get_audio_info return ownership GTK-Doc
+         GTK-Doc specifies that, by default, the caller owns returned objects, so that the caller should free it when it is done. However, in the case of this function, the returned GstAudioInfo is owned by the decoder, so this default choice is incorrect. This creates double free problems when using GStreamer Rust bindings, because they are generated using the information contained in the docs.
+         Fix this by correctly specifying that the caller does not own the returned object.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1032>
+
+2021-01-08 08:39:32 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+         encoding-profile: Plug a leak of factory list
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1002>
+
+2020-11-20 18:35:49 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+       * gst-libs/gst/pbutils/encoding-profile.h:
+       * gst/encoding/gstencodebasebin.c:
+       * tests/validate/encodebin/set-encoder-properties.validatetest:
+       * tests/validate/meson.build:
+         encodebin: Add APIs to set element properties on encoding profiles
+         User often want to set encoder properties on encoding profiles,
+         this introduces a way to easily 'preset' properties when defining the
+         profile. This uses GstStructure to define those properties the same
+         way it is done in `splitmux` for example as it makes simple to handle.
+         This also defines a more complex structure type where we can map a set
+         of properties to set depending on the muxer/encoder factory that has
+         been picked by EncodeBin so it is quite flexible.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1002>
+
+2020-11-20 18:35:49 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+         encoding-profile: Cleanup profile serialization documentation
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1002>
+
+2021-01-08 11:51:36 +0100  Alexander Vandenbulcke <av@telecom-it.be>
+
+       * gst-libs/gst/gl/dispmanx/gstglwindow_dispmanx_egl.c:
+         gl/dispmanx: fix deadlock triggered by `set_render_rectangle`
+         When the gstglimagesink is started with the option `glimagesink
+         render-rectangle="<0,0,1920,1080>"`, the pipeline reaches a deadlock.
+         The reason the deadlock occurs is that the
+         `gst_gl_window_set_render_rectangle` takes locks on the window, in
+         addition it calls `window_class->set_render_rectangle(...)` which
+         executes the `_on_resize` function. Since the `_on_resize` function also
+         takes locks on the window the deadlock is achieved.
+         By scheduling the adjustment of the render rectangle through an async
+         message for `gst_gl_window_dispmanx_set_render_rectangle`, the actual
+         resize happens in another context and therefore doesn't suffers from the
+         lock taken in `gst_gl_window_set_render_rectangle`.
+         This solution follows the same approach as gl/wayland. The problem was
+         introduced by b887db1. For the full discussion check #849.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1030>
+
+2021-02-04 18:51:27 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * tests/check/elements/videoconvert.c:
+       * tests/check/elements/videoscale.c:
+         videoconvert,videoscale: Add alternate-field negotiation tests
+         Make sure buffers with alternate-field interlacing mode can be
+         negotiated
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1027>
+
+2021-02-04 18:22:15 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst/videoscale/gstvideoscale.c:
+         videoscale: Support for alternate-field interlacing
+         Accept the negotiation, video-converter.c is aware of the half-height
+         already
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1027>
+
+2021-02-02 20:33:27 +0200  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst-libs/gst/video/video-converter.c:
+       * gst/videoconvert/gstvideoconvert.c:
+         videoconvert: Support for alternate-field interlacing
+         Treat the data just like normal data with half the height. Also treat it
+         as progressive when converting from/to I420 because it requires
+         different handling for chroma subsampling.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1027>
+
+2018-04-05 11:59:52 +0200  Havard Graff <havard.graff@gmail.com>
+
+       * gst-libs/gst/audio/gstaudiometa.c:
+       * gst-libs/gst/audio/gstaudiometa.h:
+         audio: add GstAudioLevelMeta
+         Will be used to implement RTP extension https://tools.ietf.org/html/rfc6464
+         Co-authored-by: Guillaume Desmottes <guillaume.desmottes@collabora.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/706>
+
+2021-01-26 09:37:44 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+         rtpbasedepayload: add auto-header-extension property
+         Same property as the one I just added on rtpbasepayload.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1022>
+
+2021-01-26 09:37:44 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+         rtpbasepayload: add auto-header-extension property
+         Using RTP header extensions is currently not convenient. Users have to
+         handle signals from the RTP payloader and instantiate the extension
+         element themselves, making it impossible to use with gst-launch.
+         Adding a property allowing the payloader to automatically try creating
+         extensions. This should help simple use cases and testing using
+         gst-launch.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1022>
+
+2021-01-19 10:23:12 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/typefind/gsttypefindfunctions.c:
+         typefindfunctions: Consider the number and types of atoms found in a row for suggesting a probability
+         If there are 3 or more known atoms in a row, it's likely that this is
+         actually MOV/MP4 even if we don't find any other known atoms. If 5 or
+         more are found then this is most certainly MOV/MP4 and we can return.
+         Also if a moov and mdat atom is found, this is definitely a MOV/MP4 file
+         and can be used as such, independent of anything else following the
+         mdat.
+         Fixes typefinding of various MOV files that have no `ftyp` atom but
+         otherwise a valid file structure followed by some garbage.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1013>
+
+2021-01-29 21:40:33 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/audio/gstaudiostreamalign.c:
+       * gst-libs/gst/audio/gstaudiostreamalign.h:
+         gstaudiostreamalign: Pass self as const pointer in getter functions
+         It was noticed in [1] that `GstAudioStreamAlign` is a simple boxed type
+         that is passed as const in the copy function, but not as such in the
+         getters. These functions turn out to be the only users of `const = true`
+         overrides in `gstreamer-rs`. Since there is no locking or other advanced
+         caching/sharing going on (as happens with miniobjects) these functions
+         can safely take self as const pointer.
+         [1]: https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/683#note_783129
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1025>
+
+2020-04-27 20:52:34 +0200  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/video/video-hdr.c:
+       * gst-libs/gst/video/video-hdr.h:
+         video-hdr: Add API to check content light level equality
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/969>
+
+2021-01-26 10:39:34 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+       * tests/check/libs/rtpbasedepayload.c:
+         rtpbasedepayload: set attributes on newly requested extensions
+         Users were supposed to configure the extension themselves but it was
+         impossible to do so as they didn't have access to the caps.
+         Fix #864
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1021>
+
+2021-01-26 10:39:34 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+       * tests/check/libs/rtpbasepayload.c:
+       * tests/check/libs/rtpdummyhdrextimpl.c:
+         rtpbasepayload: set attributes on newly requested extensions
+         Users were supposed to configure the extension themselves but it was
+         impossible to do so as they didn't have access to the caps.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1021>
+
+2021-01-25 14:25:45 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+         rtpbasedepayload: fix clear-extensions signal definition
+         Typo as we were using the wrong enum.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1021>
+
+2021-01-26 14:05:48 +0100  Knobe, Daniel <daniel.knobe@miele.com>
+
+       * tests/examples/overlay/meson.build:
+         overlay/example: added qt core dependency for qt overlay example
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1020>
+
+2021-01-25 14:25:45 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+         rtp: fix clear-extensions signal definition
+         Typo as we were using the wrong enum.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1018>
+
+2021-01-22 10:10:05 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtphdrext.c:
+         rtphdrext: fix typo in doc
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1018>
+
+2021-01-22 14:02:29 +1100  Matthew Waters <matthew@centricular.com>
+
+       * tests/examples/gl/generic/recordgraphic/main.cpp:
+         gl/examples: fix recordgraphic example
+         Not ported to proper modern OpenGL though but that is the case for a lot
+         of the GL examples.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/859
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1016>
+
+2021-01-04 23:25:10 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * ext/gl/gltestsrc.c:
+       * ext/gl/gltestsrc.h:
+       * ext/gl/gstglimagesink.c:
+       * gst-libs/gst/gl/egl/gsteglimage.c:
+       * gst-libs/gst/gl/egl/gsteglimage.h:
+       * gst-libs/gst/gl/egl/gsteglimage_private.h:
+       * gst-libs/gst/gl/gstglbasememory.c:
+       * gst-libs/gst/gl/gstglbasememory.h:
+       * gst-libs/gst/gl/gstglbuffer.c:
+       * gst-libs/gst/gl/gstglbuffer.h:
+       * gst-libs/gst/gl/gstglbufferpool.c:
+       * gst-libs/gst/gl/gstglbufferpool.h:
+       * gst-libs/gst/gl/gstglcolorconvert.c:
+       * gst-libs/gst/gl/gstglformat.c:
+       * gst-libs/gst/gl/gstglformat.h:
+       * gst-libs/gst/gl/gstglmemory.c:
+       * gst-libs/gst/gl/gstglmemory.h:
+       * gst-libs/gst/gl/gstglmemorypbo.c:
+       * gst-libs/gst/gl/gstglrenderbuffer.c:
+       * gst-libs/gst/gl/gstglrenderbuffer.h:
+       * gst-libs/gst/gl/gstglutils.c:
+       * gst-libs/gst/gl/gstglutils.h:
+       * gst-libs/gst/gl/gstglviewconvert.c:
+       * gst-libs/gst/pbutils/gstaudiovisualizer.c:
+       * gst-libs/gst/video/gstvideopool.c:
+       * gst-libs/gst/video/gstvideopool.h:
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-converter.h:
+       * gst-libs/gst/video/video-frame.c:
+       * gst-libs/gst/video/video-frame.h:
+       * gst-libs/gst/video/video-info.c:
+       * gst-libs/gst/video/video-info.h:
+       * gst-libs/gst/video/video-overlay-composition.c:
+       * gst/compositor/compositor.c:
+       * gst/videoscale/gstvideoscale.c:
+       * sys/xvimage/xvcontext.c:
+       * sys/xvimage/xvcontext.h:
+       * tests/check/libs/gstglmemory.c:
+         gl,video: Make ptrs to VideoInfo and (GL)AllocationParams immutable
+         These parameters are incorrectly regarded as mutable in G-IR making them
+         "incompatible" with languages that are explicit about mutability like
+         Rust. In order to clean up the code and expected API there, update the
+         signatures here, right at the source (instead of overriding them in
+         Gir.toml and hoping for the best).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1005>
+
+2021-01-14 10:09:40 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/audio/audio-buffer.c:
+         audio/audio-buffer: @buffer in audio_buffer_map is out caller-allocates
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1005>
+
+2021-01-13 11:07:47 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/video/video-frame.c:
+         video/video-frame: @frame in video_frame_map is out caller-allocates
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1005>
+
+2021-01-12 10:34:41 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/audio/audio-info.c:
+       * gst-libs/gst/video/video-info.c:
+         audio,video: Add `out caller-allocates` to init and from_caps
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1005>
+
+2021-01-11 12:25:33 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideosink.c:
+       * gst-libs/gst/video/gstvideosink.h:
+         videosink: Add new GstVideoSink::set_info() virtual method
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/986>
+
+2020-12-26 14:16:34 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideosink.c:
+         videosink: Implement more complete BaseSink::get_times() based on the framerate
+         This will only make use of the framerate if the subclass is chaining up
+         BaseSink::set_caps(). Otherwise it will have the same behaviour as the
+         basesink default.
+         Doing so is useful if video buffers don't contain a duration to
+         calculate a default duration, and various video sinks already implement
+         a custom version of this.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/986>
+
+2021-01-12 10:36:34 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/video/video-info.c:
+       * gst-libs/gst/video/video-info.h:
+         video: Convert info_to_caps to take self as const ptr
+         This requires a slight modification to the function itself because it
+         was overwriting a member locally.
+         However, now this side-effect cannot be observed outside the function
+         anymore.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1008>
+
+2021-01-06 11:16:18 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/egl/gstglmemoryegl.c:
+       * gst-libs/gst/gl/egl/gstglmemoryegl.h:
+       * gst-libs/gst/gl/gstglbuffer.c:
+       * gst-libs/gst/gl/gstglbuffer.h:
+       * gst-libs/gst/gl/gstglmemory.c:
+       * gst-libs/gst/gl/gstglmemory.h:
+       * gst-libs/gst/gl/gstglmemorypbo.c:
+       * gst-libs/gst/gl/gstglmemorypbo.h:
+       * gst-libs/gst/gl/gstglrenderbuffer.c:
+       * gst-libs/gst/gl/gstglrenderbuffer.h:
+         gl: add get_type() implementations for all of our memory types
+         Otherwise, various bindings can't really know the type of an object as
+         required.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/999>
+
+2021-01-12 22:08:14 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+         rtpbasepayload: fix header extension length calculation
+         Since ternary operator has the lowest precedence in the expressions at
+         hand, wordlen would always incorrectly yield 0 or 1.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1009>
+
+2021-01-07 16:27:25 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/gio/gstgiosrc.c:
+         giosrc: Ensure that an error is posted when underlying file is deleted
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1001>
+
+2020-07-14 20:44:18 +0200  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/video/video-blend.c:
+         video-blend: fix blending 8-bit and 16-bit frames together
+         Replace hardcoded 255s with the correct max value for the given color
+         depth. Use 64-bit integer in calculations where overflow may occur.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1000>
+
+2020-12-07 11:23:49 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gstencodebasebin.c:
+         encodebasebin: Ensure that parsers are compatible with selected encoders
+         See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/845
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/963>
+
+2021-01-05 20:18:24 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gstgl_enums.h:
+       * gst-libs/gst/gl/gstglmemory.c:
+       * gst-libs/gst/gl/gstglutils.c:
+         gl: document some GL caps specifics
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/854
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/996>
+
+2021-01-04 13:40:20 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-libs/gst/tag/gsttagdemux.c:
+         tagdemux: resize and trim buffer in place to fix interaction with oggdemux
+         Elements operating in pull mode may optionally pass a buffer to
+         pull_range that should be filled with the data. The only element
+         that does that at the moment is oggdemux operating in pull mode.
+         tagdemux currently creates a sub-buffer whenever a buffer pulled
+         from upstream (filesrc, usually) needs to be trimmed. This creates
+         a new buffer, however, so disregards any passed-in buffer from a
+         downstream oggdemux.
+         This would cause assertion failures and playback problems for
+         ogg files that contain ID3 tags at the end.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/848
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/994>
+
+2020-12-31 17:25:40 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/app/gstappsrc.c:
+         appsrc: fix signal documentation
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/992>
+
+2020-12-30 14:56:54 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: Pop out old buffers on timeout
+         This situation happens in the situation where an input stream has a framerate
+         exceeding the timeout latency (Ex: 1fps with a latency of 500ms) and an input
+         stream greater than output framerate (ex: 60fps in, 30 fps out).
+         The problem that would happen is that we would timeout, but then buffers from
+         the fast input stream would only be popped out one by one.... until a buffer
+         reaches the low-framerate input stream at which point they would quickly be
+         popped out/used. The resulting output would be "slow ... fast ... slow ... fast"
+         of that input fast stream.
+         In order to avoid this situation, whenever we detect a late buffer, check if
+         there's a next one and re-check with that one.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/990>
+
+2020-12-29 23:44:42 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/compositor/blend.c:
+         compositor/blend.c: fix MT checker pattern
+         When filling the checker pattern from multiple threads, y_start
+         needs to be taken into account to determine the shade of the
+         current pixel.
+         Example pipeline:
+         gst-launch-1.0 videotestsrc ! video/x-raw, width=1920, height=1080, format=I420 ! \
+         queue ! compositor sink_0::xpos=200 ! video/x-raw, format=I420 ! videoconvert ! \
+         xvimagesink
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/988>
+
+2020-12-29 23:42:08 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/compositor/blend.c:
+         compositor/blend.c: fix MT fill_checker for YUY2
+         The initial byte offset should be calculated from the stride,
+         not from the dest_add variable
+         Example pipeline:
+         gst-launch-1.0 videotestsrc ! video/x-raw, width=1920, height=1080, format=YUY2 ! \
+         queue ! compositor sink_0::xpos=200 ! video/x-raw, format=YUY2 ! xvimagesink
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/988>
+
+2020-12-29 20:24:51 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst/compositor/blend.c:
+         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-24 11:44:27 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/playback/gstdecodebin3.c:
+         decodebin3: When reconfiguring a slot make sure that the ghostpad is unlinked
+         This was only taken care of previously if there was a decoder before.
+         However if previously a decoder was not needed then the ghostpad
+         would've been linked directly to the slot's srcpad.
+         Reconfiguring the slot requires this to be undone so that linking can
+         happen normally.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/985>
+
+2020-12-20 22:35:45 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/examples/overlay/meson.build:
+       * tests/examples/overlay/win32-videooverlay-playbin.c:
+         examples: overlay: Add an example for Win32 window handle with playbin
+         Demonstrate video overlay handling on Windows when playbin is in use
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/983>
+
+2020-12-15 22:05:11 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst-libs/gst/video/video-hdr.c:
+       * gst-libs/gst/video/video-hdr.h:
+         hdr: update doc
+         update GST_VIDEO_HDR10_PLUS_MAX_ROWS_MD_APL and
+         GST_VIDEO_HDR10_PLUS_MAX_COLS_MD_APL
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/979>
+
+2020-07-03 12:06:14 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: Forward hdr-format info downstream
+         By default the hdr-format detected by a parser should
+         be passed to the downstream element.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/650>
+
+2020-05-08 11:06:42 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst-libs/gst/video/video-hdr.c:
+       * gst-libs/gst/video/video-hdr.h:
+         video-hdr: add hdr formats
+         Provide enum and helper method to set the hdr format
+         name in caps by example.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/650>
+
+2020-10-19 15:36:58 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst-libs/gst/video/video-hdr.c:
+       * gst-libs/gst/video/video-hdr.h:
+         video-hdr: introduce HDR10+ parser
+         Video can now parse a HDR10+ data structure
+         coming from a SEI message.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/650>
+
+2020-01-27 10:12:05 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst-libs/gst/video/video-hdr.c:
+       * gst-libs/gst/video/video-hdr.h:
+         video-hdr: add HDR10+ structure
+         Provides structure and GstVideoMeta
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/650>
+
+2020-12-15 15:07:31 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audiorate/gstaudiorate.c:
+         audiorate: Make buffer writable before changing its metadata
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/977>
+
+2020-12-14 07:42:55 +0100  Fabrice Fontaine <fontaine.fabrice@gmail.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         gst-libs/gst/video/gstvideoaggregator.c: fix build with gcc 4.8
+         Fix the following build failure with gcc 4.8 which has been added with
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/commit/d268c193ad39fb970351ed62898be806ebd0a71e:
+         ../gst-libs/gst/video/gstvideoaggregator.c: In function 'gst_video_aggregator_init':
+         ../gst-libs/gst/video/gstvideoaggregator.c:2762:3: error: 'for' loop initial declarations are only allowed in C99 mode
+         for (gint i = 0; i < gst_caps_get_size (src_template); i++) {
+         ^
+         Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/974>
+
+2020-12-10 19:06:00 +0200  Jordan Petridis <jordan@centricular.com>
+
+       * ext/libvisual/plugin.c:
+         libvisual: workaround clang warning
+         libvisual api expects a priv data pointer to be passed, though we know its
+         going to be `GstDebugLevel`.
+         ```
+         ../subprojects/gst-plugins-base/ext/libvisual/plugin.c:33:39: error: cast to smaller integer type 'GstDebugLevel' from 'void *' [-Werror,-Wvoid-pointer-to-enum-cast]
+         GST_CAT_LEVEL_LOG (libvisual_debug, (GstDebugLevel) (priv), NULL, "%s - %s",
+         ```
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/975>
+
+2020-12-11 10:13:59 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstdecodebin3-parse.c:
+         decodebin3: Release selection lock when pushing EOS
+         We can't keep the lock otherwise this would lock other actions. In order to keep
+         it safe, we grab a list of peer pads to send EOS to with the lock taken, then
+         send to the peer pads with the lock released.
+         Also make sure the selection lock is taken for another call to this function
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/847
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/971>
+
+2020-12-11 11:40:22 +0100  Edward Hervey <bilboed@bilboed.com>
+
+       * gst/typefind/gsttypefindfunctions.c:
+       * gst/typefind/gsttypefindfunctionsplugin.c:
+       * gst/typefind/gsttypefindfunctionsplugin.h:
+       * gst/typefind/gsttypefindfunctionsstartwith.c:
+         typefind: Fix debug category usage
+         Only register it in one place and use it everywhere from the header. Also make
+         sure it doesn't clash with the debug category from core.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/972>
+
+2020-12-04 16:55:53 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/typefind/gsttypefindfunctions.c:
+       * gst/typefind/gsttypefindfunctionsdata.c:
+       * gst/typefind/gsttypefindfunctionsdata.h:
+       * gst/typefind/gsttypefindfunctionsplugin.c:
+       * gst/typefind/gsttypefindfunctionsplugin.h:
+       * gst/typefind/gsttypefindfunctionsriff.c:
+       * gst/typefind/gsttypefindfunctionsstartwith.c:
+       * gst/typefind/meson.build:
+         typefindfunctions: allow per features registration
+         Split plugin into features including
+         typefind functions which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/900>
+
+2020-12-01 13:34:15 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/pbtypes/gstpbtypes.c:
+       * gst/pbtypes/gstpbtypes.h:
+         pbtypes: allow per features registration
+         Split plugin into features including
+         dynamic types which can be indiviually
+         registered during a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/900>
+
+2020-11-30 11:00:30 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/subparse/gstssaparse.c:
+       * gst/subparse/gstsubparse.c:
+       * gst/subparse/gstsubparse.h:
+       * gst/subparse/gstsubparseelement.c:
+       * gst/subparse/gstsubparseelements.h:
+       * gst/subparse/gstsubparseplugin.c:
+       * gst/subparse/meson.build:
+         subparse: allow per feature registration
+         Split plugin into features including
+         elements and device providers which
+         can be indiviually registered during
+         a static build.
+         More details here:
+         i
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/900>
+
+2020-08-11 11:47:02 -0400  Julian Bouzas <julian.bouzas@collabora.com>
+
+       * ext/ogg/gstoggaviparse.c:
+       * ext/ogg/gstoggdemux.c:
+       * ext/ogg/gstoggdemux.h:
+       * ext/ogg/gstoggelements.h:
+       * ext/ogg/gstoggmux.c:
+       * ext/ogg/gstoggparse.c:
+       * ext/ogg/gstoggplugin.c:
+       * ext/ogg/gstogmparse.c:
+       * ext/ogg/meson.build:
+         ogg: allow per feature registration
+         Split plugin into features including
+         elements and device providers which
+         can be indiviually registered during
+         a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/900>
+
+2020-10-22 11:07:26 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst/playback/gstdecodebin2.c:
+       * gst/playback/gstdecodebin3.c:
+       * gst/playback/gstparsebin.c:
+       * gst/playback/gstplaybackelement.c:
+       * gst/playback/gstplaybackelements.h:
+       * gst/playback/gstplaybackplugin.c:
+       * gst/playback/gstplaybin2.c:
+       * gst/playback/gstplaybin3.c:
+       * gst/playback/gstplaysink.c:
+       * gst/playback/gstplaysink.h:
+       * gst/playback/gststreamsynchronizer.c:
+       * gst/playback/gststreamsynchronizer.h:
+       * gst/playback/gstsubtitleoverlay.c:
+       * gst/playback/gstsubtitleoverlay.h:
+       * gst/playback/gsturidecodebin.c:
+       * gst/playback/gsturidecodebin3.c:
+       * gst/playback/gsturisourcebin.c:
+       * gst/playback/meson.build:
+         playback: allow per feature registration
+         Split plugin into features including
+         elements and device providers which
+         can be indiviually registered during
+         a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/900>
+
+2020-10-16 14:35:04 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/alsa/gstalsaelement.c:
+       * ext/alsa/gstalsaelements.h:
+       * ext/alsa/gstalsamidisrc.c:
+       * ext/alsa/gstalsaplugin.c:
+       * ext/alsa/gstalsasink.c:
+       * ext/alsa/gstalsasrc.c:
+       * ext/alsa/meson.build:
+         alsa: allow per feature registration
+         Split plugin into features including
+         elements and device providers which
+         can be indiviually registered during
+         a static build.
+         More details here:
+         https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/199
+         https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/661
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/900>
+
+2020-12-09 10:40:40 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * tests/validate/giosrc/read-growing-file.validatetest:
+         tests: Fix races in the read-growing-file test
+         First: the buffer is pushed on the encoding filesink only *after* the
+         checkpoints, leading to wrong ordering in expectations.
+         The second one is about EOS being posted on the bus *before* the
+         stop action is executed, leading to the action never being executed.
+         That action was plain useless as the default behavior of validate
+         scenario is to internally create a "stop" action on EOS (unless
+         disabled by user).
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/968>
+
+2020-11-19 19:17:18 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst/gio/gstgio.h:
+       * gst/gio/gstgiobasesrc.c:
+       * gst/gio/gstgiobasesrc.h:
+       * gst/gio/gstgiosrc.c:
+       * gst/gio/gstgiosrc.h:
+       * tests/validate/giosrc/read-growing-file.validatetest:
+       * tests/validate/giosrc/read-growing-file/flow-expectations/log-filesink-sink-expected:
+       * tests/validate/giosrc/read-growing-file/flow-expectations/log-growing-file-sink-sink-expected:
+       * tests/validate/meson.build:
+         giosrc: Add support for growing source files
+         Add a way for applications to specify that the underlying file is
+         growing which implies that the source won't EOS when reaching the end
+         of the file but instead start monitoring it and start reading it again
+         whenever a change is detected.
+         Also add a validate test to check the behavior
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/937>
+
+2020-11-26 04:04:48 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * gst-libs/gst/video/gstvideoencoder.c:
+       * gst-libs/gst/video/video-info.c:
+         video: Make use of gst_video_chroma_site_{from,to}_string() API
+         Replace deprecated gst_video_chroma_{from,to}_string()
+         to newly added gst_video_chroma_site_{from,to}_string()
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/927>
+
+2020-11-10 18:01:12 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/video/video-chroma.c:
+       * gst-libs/gst/video/video-chroma.h:
+       * tests/check/libs/video.c:
+         video-chroma: Add support for any combination of chroma-site flags
+         We've been allowing only a few known chroma-site values such as
+         jpeg (not co-sited), mpeg2 (horizontally co-sited) and
+         dv (co-sited on alternate lines). That's insufficient for
+         representing all possible chroma-site values. By this commit,
+         we can represent any combination of chroma-site flags.
+         But, an exception here is that any combination with
+         GST_VIDEO_CHROMA_SITE_NONE will be considered as invalid value.
+         For any combination of chroma-site flags,
+         gst_video_chroma_to_string() method is deprecated in order to
+         return newly allocated string via a new gst_video_chroma_site_to_string()
+         method. And for consistent API naming, gst_video_chroma_from_string()
+         is also deprecated. Newly written code should use
+         gst_video_chroma_site_from_string() instead.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/927>
+
+2020-11-30 21:38:08 +0100  Jakub Adam <jakub.adam@collabora.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+       * gst-libs/gst/rtp/gstrtpbasepayload.h:
+         rtpbasepayload: pass optional caps fields in a GstStructure
+         For more flexibility, allow to pass the extra output caps fields as
+         a GstStructure.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/952>
+
+2019-12-05 20:08:36 +0700  Ratchanan Srirattanamet <ratchanan@ubports.com>
+
+       * gst-libs/gst/audio/gstaudiobasesrc.c:
+         audiobasesrc: always acquire if not acquired in _setcaps
+         audiobasesrc's setcaps contains an optimization that makes it not re-
+         acquire the ringbuffer if the caps have not changed. However, it doesn't
+         check if it has successfully acquired it or not. It's possible to have
+         the caps set but not having ringbuffer acquired if the previous attempt
+         to acquire fails.
+         This commit replaces the caps existence check with whether the
+         ringbuffer is acquired or not. There's no need to check for caps
+         existence because 1.) it's unlikely to be NULL if the ringbuffer is
+         acquired, and 2.) _setcaps shouldn't be called with a NULL caps.
+         This should also let the element retry on acquiring ringbuffer after an
+         error by re-setting the element's state to READY and back to PLAYING.
+         Whether this behavior is correct is up for debate.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/512>
+
+2020-11-06 14:05:39 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstglimagesink.c:
+         glimagesink: Avoid assert in query.
+         The sink_query just uses context, other_context and display to query info.
+         But all these objects can be changed or distroyed in state_change() func
+         and other places.
+         This patch is not very perfect. The condition race still exists in other
+         places in this element. All the functions directly access these objects
+         without protection. Most of them are executed when the data is pushing and
+         draw context/window have already been established, so they should not have
+         problems. But the sink_query and propose_allocation functions are the query
+         -like functions and executed in query context, which can be called in any
+         state of the element. So it can cause some crash issues because of destroyed
+         context object.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/922>
+
+2020-11-06 16:18:14 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstglcolorconvertelement.c:
+         glcolorconver: Return empty caps in transform_caps if fails.
+         We should not return a NULL in transform_caps() function. The NULL
+         will generate a assert of:
+         "transform_caps returned caps which are not a real subset of the
+         filter caps"
+         in transform base class.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/922>
+
+2020-11-06 15:36:01 +0800  He Junyan <junyan.he@intel.com>
+
+       * gst-libs/gst/gl/gstglbasefilter.c:
+         glbasefilter: Need to check the display before lock it.
+         In find_gl_context_unlocked(), the display of filter may be NULL
+         and can cause crash if we directly access and lock it.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/922>
+
+2020-11-06 15:36:21 +0800  He Junyan <junyan.he@intel.com>
+
+       * gst-libs/gst/gl/gstglbasefilter.c:
+         glbasefilter: Delete the un-paired unlock in change_state().
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/922>
+
+2020-12-03 06:50:07 -0500  Arun Raghavan <arun@asymptotic.io>
+
+       * gst-libs/gst/audio/gstaudioencoder.c:
+         audioencoder: Fix incorrect GST_LOG_OBJECT usage
+         GstBuffer is not a GstObject, so this causes a warning to be emitted.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/956>
+
+2020-07-10 15:33:46 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+       * tests/check/libs/rtpbasepayload.c:
+         rtp/basepayload: implement support for rtp header extensions
+         New signals are added for managing the internal list of rtp header
+         extension implementations read by a specific depayloader instance.
+         If the 'extmap-$NUM' field is present in the src caps, then an
+         extension implementation will be requested but is not required to be able
+         to negotiate correctly.  An extension will be requested using the
+         'request-extension' signal if none could be found internally.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/748>
+
+2020-07-10 15:30:57 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+       * tests/check/libs/rtpbasedepayload.c:
+         rtp/basedepayload: implement support for rtp header extensions
+         New signals are added for managing the internal list of rtp header
+         extension implementations read by a specific depayloader instance.
+         If the 'extmap-$NUM' field is present in the sink caps, then an
+         extension implementation will be requested but is not requited to be
+         able to negotiate correctly.  An extension will be requested using the
+         'request-extension' signal if none could be found internally.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/748>
+
+2020-07-10 15:14:09 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/rtp/gstrtphdrext.c:
+       * gst-libs/gst/rtp/gstrtphdrext.h:
+       * tests/check/libs/rtpdummyhdrextimpl.c:
+       * tests/check/libs/rtphdrext.c:
+       * tests/check/meson.build:
+         rtp: add base object for reading/writing rtp header extensions (RFC5285)
+         Facilitates the creation of rtp header extension implementations that
+         can be reused across applications.
+         Implementations are registered into the GStreamer registry as elements
+         (idea from GstRTSPExtension) and can be retrieved by URI or filtered
+         manually.  RTP header extensions must have the classification
+         "Network/Extension/RTPHeader" to be considered as a RTP Header
+         extension.
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/777
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/748>
+
+2020-11-26 14:52:26 +0200  Mart Raudsepp <mart@leio.tech>
+
+       * gst-libs/gst/gl/eagl/gstglwindow_eagl.m:
+         gl/eagl: Fix automatic resize behaviour
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/681
+         added a layoutSubViews, which never gets called, because it should have been
+         called layoutSubviews (non-capital "v"). However after fixing that, it still
+         doesn't work correctly, because window_width/height values are immediately
+         updated and then draw_cb will never trigger the resize path, because the
+         values are already up to date.
+         Update the values inside the resize path again instead, so the check for
+         entering the resize path is logically always correct.
+         This makes the layoutSubviews unnecessary, as it only updated the internal
+         size values prematurely, so it is deleted instead of method naming fixed.
+         These changes were originally done to avoid accessing UIKit objects on the
+         main thread, but no additional accesses are added here, only internal
+         private variable assignments under the same draw_lock, so there should be
+         no threading issues reintroduced.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/945>
+
+2020-11-26 14:45:05 +0200  Mart Raudsepp <mart@leio.tech>
+
+       * gst-libs/gst/gl/eagl/gstglwindow_eagl.m:
+         gl/eagl: Fix resize condition check in draw_cb to not get called unnecessarily
+         A CGSize contains CGFloat values (a typedef to double or float), which means
+         that the values aren't equal, despite it being equal after they are cast to
+         int by assigning them to window_height/width private members. This leads to
+         excessive gst_gl_window_resize calls on each frame, at least if the CGFloat
+         value has a .5 decimal value, e.g. 103.5.
+         Fix it by storing them as CGFloat instead of gint.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/945>
+
+2020-11-20 16:51:09 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/video/video-converter.c:
+         video/converter: increase the number of cache lines for resampling
+         The exising hardcoded max default does not account for the possible
+         -1 offset when retrieving lines for resampling.  As a result, when
+         another chain has the same number of cache lines (4), the resample
+         operation would be attempting to generate 5 lines with a cache size
+         of 4 and would overwrite the first cache line.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/821
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/938>
+
+2020-12-01 13:13:40 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/compositor/compositor.c:
+         compositor: Don't crash in prepare_frame() if the pad was just removed
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/950>
+
+2020-12-01 09:31:48 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/video/gstvideometa.c:
+         videometa: gir annotate the size of plane array in new API
+         Fix #838
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/949>
+
+2020-11-19 19:06:12 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gstencodebasebin.c:
+         encodebin: Enhance algorithm to check if profiles can be plugged to muxer
+         In particular muxing sinks have specific set of sinkpads and we need
+         to handle that.
+
+2020-11-19 19:03:29 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gstencodebasebin.c:
+         encodebin: Ignore element classification when a muxer name specified
+         Instead of going through the list of known muxers go ahead and
+         instantiate the muxer specified as 'preset name' as this specifies
+         the exact element factory name to use.
+
+2020-11-13 16:32:45 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+         pbutils: Add support for muxing sinks usage in encoding profiles
+
+2020-11-13 16:32:45 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst/encoding/gstencodebasebin.c:
+       * gst/encoding/gstencodebasebin.h:
+       * gst/encoding/gstencodebin2.c:
+       * gst/encoding/gstencodebin2.h:
+       * gst/encoding/meson.build:
+       * gst/encoding/plugin.c:
+         encoding: Implement encodebin2 with an ON_REQUEST src pad
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/304
+
+2020-11-13 13:06:32 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst/encoding/gstencodebasebin.c:
+       * gst/encoding/gstencodebasebin.h:
+       * gst/encoding/gstencodebin.c:
+       * gst/encoding/gstencodebin.h:
+       * gst/encoding/meson.build:
+       * gst/encoding/plugin.c:
+         encodebin: Split implementation into a base class
+         Create EncodeBaseBin as a base class for the existing
+         encodebin to allow other implementations.
+         Co-authored with Jan Schmidt <jan@centricular.com>
+
+2020-11-28 04:14:14 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/gl/wgl/gstglcontext_wgl.c:
+         glcontext: wgl: Implement check_feature vfunc
+         There are several WGL specific extenstions such as WGL_NV_DX_interop.
+         Currently we have no WGL specific extension support and
+         this commit is also only for debugging purpose.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/947>
+
+2020-11-27 11:41:36 +0530  Sanchayan Maity <sanchayan@asymptotic.io>
+
+       * gst-libs/gst/audio/gstaudiodecoder.c:
+         audiodecoder: Move max_errors out of GstAudioDecoderContext
+         Currently max-errors gets set during init to default or via property.
+         However, if a decoder element calls gst_audio_decoder_reset with 'full'
+         argument set to TRUE, it would result in all the fields of context being
+         zeroed with memset. This effectively results in max-errors getting a
+         value of 0 overriding the default or user requested value set during
+         init.
+         This would result in calls to GST_AUDIO_DECODER_ERROR which track error
+         counts and allow max-errors, to be ineffective.
+         To fix this move max-errors out of GstAudioDecoderContext, as changes to
+         context should not affect this. The error_count is anyways also in
+         GstAudioDecoderPrivate and not in context.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/946>
+
+2020-11-26 17:37:01 +0100  Stéphane Cerveau <scerveau@collabora.com>
+
+       * ext/opus/meson.build:
+         opus: disable docs option in meson fallback
+         As the docs are not necessary, no need to keep it
+         enabled.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/943>
+
+2020-11-25 20:16:53 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/video/video-color.c:
+         video: Provide "deprecated in" version for gst_video_color_transfer fns
+         As requested in [1].
+         [1]: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/940#note_706437
+         Fixes: d0f36c7e1 ("video: Rename video_color_transfer to video_transfer_function")
+
+2020-11-24 20:54:49 +0100  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/audio/audio-converter.c:
+       * gst-libs/gst/audio/audio-format.c:
+       * gst-libs/gst/audio/audio-format.h:
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+       * gst-libs/gst/audio/gstaudioringbuffer.c:
+       * gst-libs/gst/audio/gstaudiosink.c:
+       * gst-libs/gst/audio/gstaudiosrc.c:
+       * gst/adder/gstadder.c:
+       * gst/audioconvert/gstaudioconvert.c:
+       * gst/audiorate/gstaudiorate.c:
+       * tests/check/libs/audio.c:
+         audio: Move fill_silence into audio_format_info
+         With the function named gst_audio_format_fill_silence it would get
+         associated to the GstAudioFormat type in .gir which is incorrect and
+         confusing. See [1] for the discussion sparking this change.
+         https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/630#note_694795
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/940>
+
+2020-11-25 23:54:08 +1100  Jan Schmidt <jan@centricular.com>
+
+       * sys/xvimage/xvcontext.c:
+       * sys/xvimage/xvcontext.h:
+         xvimagesink: Add support for the XV_COLORSPACE attribute.
+         The XV_COLORSPACE attribute exists on some Xv adapters, with the same
+         semantics as the XV_ITURBT_709 attribute that was already supported.
+         A value of 0 is bt601, and 1 is for bt709 colorspace.
+         Fixes color shifting issues displaying bt709 content on some Xv
+         adapters.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/941>
+
+2020-11-13 17:45:12 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstdecodebin3.c:
+         decodebin3: Take into account decoder latency for interleave size
+         Some decoders might introduce quite large latencies, which would result in
+         multiqueue draining out on some streams. In order to avoid that, check the
+         latency of decoders and adjust the minimum interleave time of multiqueue
+         accordingly.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/800
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/931>
+
+2020-11-19 14:35:32 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstdecodebin3-parse.c:
+         decodebin3: Don't leak filter caps
+         Introduced by previous commit
+         See https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/933
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/934>
+
+2020-11-14 09:43:59 +0100  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstdecodebin3-parse.c:
+         decodebin3: Properly handle caps query with no filter
+         There's no guarantee that upstream elements will do queries with specified
+         filter caps. If that's the case, just return GST_CAPS_ANY
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/933>
+
+2020-11-07 17:30:19 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/opus/meson.build:
+         opus: add subproject fallback
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/924>
+
+2020-11-07 02:59:09 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst/compositor/compositor.c:
+       * gst/compositor/compositor.h:
+         compositor: expose zero-size-is-unscaled property
+         When that property is left to its default, the width and height
+         property considers frames from input pads with width or height <= 0
+         should be left unscaled in that dimension.
+         Setting this property to FALSE changes that behaviour to < 0, as when
+         animating these properties, 0 should be a valid end value (eg. shrinking
+         an input stream until it disappears).
+         The default value of the width and height properties is set to -1, so that
+         the default behaviour stays consistent whether that new property is set
+         or not.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/923>
+
+2020-10-28 00:01:16 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-converter.h:
+       * tests/check/libs/video.c:
+         video-converter: switch to using a task pool ..
+         .. and make use of that API in videoaggregator.
+         When setting certain properties, such as cropping or the scaled
+         size of pads, a new converter is created by videoaggregator.
+         Before that patch, this implied spawning new threads, potentially
+         at each aggregate cycle when interpolating pad properties. This
+         is obviously wasteful, and re-using a task pool removes that
+         overhead.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/896>
+
+2020-11-10 23:26:39 +0100  David Keijser <keijser@gmail.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+         Fix segfault when using invalid encoding profile
+         Trying to use gst_encoding_profile_get_file_extension on a
+         GstEncodingProfile with a cap containing a typo would result in strcmp
+         being called with NULL. Instead use g_strcmp0 that handles this case.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/929>
+
+2020-11-03 17:00:53 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: Fix locking around vagg->info
+         Take `GST_OBJECT_LOCK` when writing `vagg->info`, so that reading in
+         subclasses is protected against races, as documented in the struct.
+         /*< public >*/
+         /* read-only, with OBJECT_LOCK */
+         GstVideoInfo                  info;
+         `gst_video_aggregator_default_negotiated_src_caps` should take the
+         `GST_VIDEO_AGGREGATOR_LOCK` to avoid racing with
+         `gst_video_aggregator_reset` called by
+         `gst_video_aggregator_release_pad` of the last sinkpad. Otherwise it can
+         happen that `latency = gst_util_uint64_scale (...` gets called with a
+         zero framerate.
+         There doesn't seem to be any reason not to use the local `info` instead
+         of `vagg->info`, so do that.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/915>
+
+2020-10-26 08:59:34 +0100  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/video/gstvideodecoder.h:
+         video: fix doc warning
+         @mode has been renamed to
+         gst_video_decoder_set_interlaced_output_state() but not in the header
+         file, raising a doc warning.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/894>
+
+2020-11-05 04:43:47 +1100  Jan Schmidt <jan@centricular.com>
+
+       * gst-libs/gst/video/video-converter.c:
+         video-converter: Skip input lines where possible.
+         There is a case where there are no lines in the temp cache, and
+         it's possible to skip straight to the request line and not generate
+         intermediate ones. This is really only beneficial when doing
+         nearest-neighbour downscaling, as other methods generally require
+         all input lines sequentially to generate the output. In that case,
+         this change has no effect and all lines are generated and cached
+         as before.
+         As a side effect however, this fixes corruption when downscaling
+         using nearest-neighbour, as interactions with the pass_alloc flag
+         and reuse of temporary lines causes the unecessarily-generated
+         cache lines to overwrite the final output.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/919>
+
+2020-11-04 02:11:30 +1100  Jan Schmidt <jan@centricular.com>
+
+       * tests/examples/compositor/meson.build:
+       * tests/examples/compositor/mosaic.c:
+         examples: Add a compositor mosaic example.
+         Add an example of configuring compositor to display 2 videos
+         side-by-side in a mosaic, and additionally configure some
+         video-converter properties to demonstrate how that works..
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/919>
+
+2020-11-04 23:05:27 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstgluploadelement.c:
+         gluploadelement: Avoid race condition in propose_allocation().
+         The inside upload and context may have race condition in the function
+         of propose_allocation(). They may be destroyed while this function is
+         stilling using it.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/916>
+
+2020-11-04 17:02:13 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstgluploadelement.c:
+         gluploadelement: Avoid race condition of base class' context.
+         The base class' context may change, we should use the common API
+         with lock to access it, rather than the just directly access the
+         struct field.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/916>
+
+2020-11-04 18:42:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson.build:
+         meson: Enable some MSVC warnings for parity with GCC/Clang
+         This makes it easier to do development with MSVC by making it warn
+         on common issues that GCC/Clang error out for in our CI configuration.
+         Continuation from https://gitlab.freedesktop.org/gstreamer/gst-build/-/merge_requests/223
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/918>
+
+2020-11-03 20:19:16 +0800  He Junyan <junyan.he@intel.com>
+
+       * ext/gl/gstgluploadelement.c:
+         gluploadelement: Avoid race condition of inside upload creation.
+         The operations for the inside GstGLUploadElement->upload have race
+         condition. The _transform_caps() will creates this object if it does
+         not exist, while the _stop() and change_state() can destroy this object.
+         The _transform_caps() is called by the gst_base_transform_query(),
+         so it does not hold the stream lock. It may use the upload while the
+         _stop() and change_state() has already destroy that object, and then
+         crash.
+         Fix: #645
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/913>
+
+2020-11-03 16:40:38 +0200  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/gl/glprototypes/sync.h:
+         gl: Fix prototype of glGetSynciv()
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/914>
+
+2020-10-30 13:56:16 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * gst/compositor/compositor.c:
+       * tests/check/elements/compositor.c:
+       * tests/validate/compositor/renogotiate_failing_unsupported_src_format.validatetest:
+       * tests/validate/meson.build:
+         videoaggregator: Guarantee that the output format is supported
+         In the case `videoaggregator` is set as allowing format conversions,
+         and as we convert only on the sinkpads, we should ensure that the
+         chosen format is usable by the subclass. This in turns implies
+         that the format is usable on the srcpad.
+         When doing conversion *any* format can be used on the sinkpads, and this
+         is the only way that we can avoid race conditions during renegotiations
+         so we can not change that fact, we just need to ensure that the chosen
+         intermediary format is usable, which was not actually ensured before
+         that patch.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/834
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/909>
+
+2020-10-31 03:14:20 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: Don't assume GstVideoChromaSite and GstVideoColorimetry
+         Even if given GstVideoChromaSite and/or GstVideoColorimetry has unknown
+         value(s), assumption for an unknown value should be done by subclass or
+         downstream element, not a role of video decoder. And subclass might
+         want to output unknown value as is.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/910>
+
+2020-10-31 03:16:00 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: Remove trailing whitespace
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/910>
+
+2020-10-30 13:52:29 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/tcp/gsttcpserversink.c:
+         tcpserversink: Don't assume g_socket_get_remote_address succeeds
+         When the client disconnects immediately after connecting, the remote
+         address is no longer available.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/908>
+
+2020-10-29 16:38:44 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         video-aggregator: Fix renegotiation when using convert pads
+         Since 23189c60f4cff998c7880e1768cee2f6d1b719d0 we started using the
+         useless result of `modified_caps` which, was never used since it was
+         introduced 7 years ago (in videomixer2). The intersection is useless and
+         we should just avoid doing it at all (which was always the case before)
+         as it can end up failing renegotiation for bad reasons.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/905>
+
+2020-05-27 23:20:25 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tools/gst-play.c:
+         gst-play: Add support for audio mute control
+         Assign 'm' keyboard input to control audio mute state
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/674>
+
+2020-10-28 15:51:27 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * tests/check/libs/allocators.c:
+         tests: allocator: Fix FDMemory portability issue
+         This fixes few issues in the test but mainly some portability issue reported
+         on Ubutun. The test now uses a randomly name tempory file located into system
+         default tempory location and uses glib wrappers when available.
+         Fixes !895
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/901>
+
+2020-10-24 23:45:19 +0530  Dinesh Manajipet <saidinesh5@gmail.com>
+
+       * ext/gl/gstglcolorbalance.c:
+       * ext/gl/gstglcolorbalance.h:
+         gl: optimize glcolorbalance by precomputing shader math
+         Precompute the rgb -> yuv conversion and color balance adjustment math
+         so that the shader does minimal work per pixel.
+         Merging these 15+ steps into 3 steps let us jump from choppy
+         360p video to smooth 720p video on our underpowered embedded system.
+         If we can remove the clamp() step inside the shader, or apply it after
+         rgba
+         conversion, there are more performance benefits to reap. But I am not
+         sure
+         what the side effects will be in that case.
+         <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/893>
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/893>
+
+2020-10-28 23:26:27 +1100  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/meson.build:
+         gl/build: use the brcm GL libraries on the rpi
+         Upstream RPi has moved to a completely separate GL library names now due
+         to conflicts.
+         See https://github.com/RPi-Distro/repo/issues/134
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/898>
+
+2020-10-27 14:12:42 +0100  Tobias Ronge <tobiasr@lnxhplap16.se.axis.com>
+
+       * gst-libs/gst/allocators/gstfdmemory.c:
+       * tests/check/libs/allocators.c:
+         fdmemory: Allow for change of protection mode
+         After a memory has been unmapped, protection mode can now be changed
+         when mapping it again.
+         See https://bugzilla.gnome.org/show_bug.cgi?id=789952.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/895>
+
+2020-10-28 01:19:37 +0100  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: document and fix locking in convert pad
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/897>
+
+2020-10-28 13:22:09 +0000  Tim-Philipp Müller <tim@centricular.com>
+
+       * ext/gl/gstgldeinterlace.c:
+         gldeinterlace: fix doc blurb
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/899>
+
+2018-04-07 20:52:12 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * gst-libs/gst/allocators/meson.build:
+       * gst-libs/gst/app/meson.build:
+       * gst-libs/gst/audio/meson.build:
+       * gst-libs/gst/fft/meson.build:
+       * gst-libs/gst/gl/meson.build:
+       * gst-libs/gst/pbutils/meson.build:
+       * gst-libs/gst/riff/meson.build:
+       * gst-libs/gst/rtp/meson.build:
+       * gst-libs/gst/rtsp/meson.build:
+       * gst-libs/gst/sdp/meson.build:
+       * gst-libs/gst/tag/meson.build:
+       * gst-libs/gst/video/meson.build:
+       * meson.build:
+       * pkgconfig/gstreamer-allocators-uninstalled.pc.in:
+       * pkgconfig/gstreamer-allocators.pc.in:
+       * pkgconfig/gstreamer-app-uninstalled.pc.in:
+       * pkgconfig/gstreamer-app.pc.in:
+       * pkgconfig/gstreamer-audio-uninstalled.pc.in:
+       * pkgconfig/gstreamer-audio.pc.in:
+       * pkgconfig/gstreamer-fft-uninstalled.pc.in:
+       * pkgconfig/gstreamer-fft.pc.in:
+       * pkgconfig/gstreamer-gl-egl-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-egl.pc.in:
+       * pkgconfig/gstreamer-gl-prototypes-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-prototypes.pc.in:
+       * pkgconfig/gstreamer-gl-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-wayland-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-wayland.pc.in:
+       * pkgconfig/gstreamer-gl-x11-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-x11.pc.in:
+       * pkgconfig/gstreamer-gl.pc.in:
+       * pkgconfig/gstreamer-pbutils-uninstalled.pc.in:
+       * pkgconfig/gstreamer-pbutils.pc.in:
+       * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in:
+       * pkgconfig/gstreamer-plugins-base.pc.in:
+       * pkgconfig/gstreamer-riff-uninstalled.pc.in:
+       * pkgconfig/gstreamer-riff.pc.in:
+       * pkgconfig/gstreamer-rtp-uninstalled.pc.in:
+       * pkgconfig/gstreamer-rtp.pc.in:
+       * pkgconfig/gstreamer-rtsp-uninstalled.pc.in:
+       * pkgconfig/gstreamer-rtsp.pc.in:
+       * pkgconfig/gstreamer-sdp-uninstalled.pc.in:
+       * pkgconfig/gstreamer-sdp.pc.in:
+       * pkgconfig/gstreamer-tag-uninstalled.pc.in:
+       * pkgconfig/gstreamer-tag.pc.in:
+       * pkgconfig/gstreamer-video-uninstalled.pc.in:
+       * pkgconfig/gstreamer-video.pc.in:
+       * pkgconfig/meson.build:
+         Meson: Use pkg-config generator
+
+2020-10-22 19:16:42 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/playback/gsturisourcebin.c:
+         urisourcebin: Fix crash caused by use after free
+         OutputSlotInfo doesn't hold ref of queue, so gst_bin_remove()
+         will free the queue memory.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/888>
+
+2020-10-21 14:55:40 -0500  Zebediah Figura <z.figura12@gmail.com>
+
+       * ext/theora/gsttheoradec.c:
+         theoradec: Set telemetry options only if they are nonzero
+         Setting telemetry options, even to zero, causes libtheora to enable an expensive code path. For large enough videos (e.g. 1920x1080) this can increase the time to decode each frame by 30-40 ms, which can be enough to cause noticeable stutter.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/887>
+
+2020-10-21 11:42:54 +0200  Michael Tretter <m.tretter@pengutronix.de>
+
+       * gst-libs/gst/gl/gstglslstage.c:
+         glslstage: delete shader on finalize of stage
+         GLSLstage creates the glShader using glCreateShader, but never calls
+         glDeleteShader if the glShader is not used anymore. This forces the GL
+         library to keep the compiled shader around, because it might be used in
+         the future. Therefore, the glShader is leaked whenever a GLSLStage is
+         destroyed.
+         Fix the leak by deleting the glShader when finishing the GLSLStage.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/886>
+
+2020-10-20 12:44:21 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudiodecoder.c:
+       * gst-libs/gst/video/gstvideodecoder.c:
+         audio/videodecoder: Initialize max_errors in instance_init()
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/882>
+
+2020-10-20 11:51:08 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudiodecoder.c:
+       * gst-libs/gst/video/gstvideodecoder.c:
+         audio/videodecoder: Don't reset max-errors in reset()
+         Otherwise setting the property on the elements has no effect at all
+         because it's immediately reset during startup.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/881>
+
+2020-10-13 03:34:07 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/examples/decodebin_next/meson.build:
+       * tests/examples/decodebin_next/uridecodebin3-select-all.c:
+         examples: Add an uridecodebin3 example
+         Demonstrate a way to select multiple streams
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/880>
+
+2020-10-19 20:03:40 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/playback/gstdecodebin3.c:
+       * gst/playback/gsturidecodebin3.c:
+         decodebin3: Store stream-start event on output pad before exposing it
+         It's required for users to be able to figure out associated GstStream
+         object with a pad on pad-added callback.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/880>
+
+2020-10-17 12:35:16 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/app/gstappsink.c:
+       * gst-libs/gst/app/gstappsrc.c:
+         Add some missing nullable annotations
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/876>
+
+2020-10-17 10:42:49 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/typefind/gsttypefindfunctions.c:
+         typefind/xdgmime: Validate mimetypes to be valid GstStructure names before using them
+         On macOS, for example, "text/*" can be returned as mimetype for
+         plaintext files but we don't allow '*' in structure names and this would
+         cause critical warnings.
+         It's a valid mimetype but not a valid structure name.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/616
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/875>
+
+2020-10-15 18:20:37 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * gst-libs/gst/video/video-anc.c:
+       * gst-libs/gst/video/video-hdr.c:
+       * meson.build:
+         meson: update glib minimum version to 2.56
+         In order to support the symbol g_enum_to_string in various
+         project using GStreamer ( gst-validate etc.), the glib minimum
+         version should be 2.56.0.
+         Remove compat code as glib requirement
+         is now > 2.56
+         Version used by Ubuntu 18.04 LTS
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/874>
+
+2020-09-20 19:47:08 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/videoconvert/gstvideoconvert.c:
+         videoconvert: Enhance debug message to be more human readable
+         Numerical representation of GstVideoFormat is not debugging
+         friendly
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/822>
+
+2020-10-13 17:57:53 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst/playback/gsturidecodebin3.c:
+         uridecodebin3: Forward upstream events to decodebin3 directly
+         Otherwise default handler will try to forward it to sink element
+         or srcpad which might not be available at that moment.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/867>
+
+2020-09-14 20:01:18 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/check/elements/appsrc.c:
+         tests: appsrc: Fix unstable test case
+         Wait all buffers to be consumed before sending flush seek event,
+         so that checking timestamp and segment as expected.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/816>
+
+2020-10-13 15:31:41 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: Limit accepted caps by template caps
+         This seems like an obvious mistake, since `modified_caps` was created
+         but not used.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/868>
+
+2020-10-13 15:28:54 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: Log the format name instead of index
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/868>
+
+2020-10-12 12:21:17 +0100  Will Miller <will.miller@pexip.com>
+
+       * gst-libs/gst/rtp/gstrtpbuffer.c:
+       * tests/check/libs/rtp.c:
+         gstrtpbuffer: fix header extension length validation
+         We validate the header extensions length of an RTP buffer by comparing
+         it against the block size. Since we multiply the length in words by 4 to
+         get the length in bytes, a suitably large length could cause a wrapround
+         of the uint16, giving a lower length which erroneously passes the check
+         and allows the buffer to be mapped.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/864>
+
+2020-09-11 20:28:55 +0200  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/gl/gstglslstage.c:
+         gl: glslstage: Sync new_default_{fragment,vertex} documentation name
+         Documentation for the parameter and return value don't show up when
+         this header mismatches the function it tries to describe.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/814>
+
+2020-10-10 17:26:42 +0200  François Laignel <fengalin@free.fr>
+
+       * gst/playback/gstdecodebin3.c:
+         decodebin3: only force streams-selected seqnum after a select-streams
+         The initial streams-selected message might not match any select-streams,
+         in which case it is currently overriden with GST_SEQNUM_INVALID.
+         Related to:
+         - https://gitlab.freedesktop.org/gstreamer/gstreamer-rs/-/merge_requests/601
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/860>
+
+2020-10-09 17:15:37 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * tests/examples/gl/gtk/meson.build:
+         examples/gl/gtk: Add missing dependency on gstgl
+         Occasionally, a clean build would fail like this:
+         In file included from ../subprojects/gst-plugins-base/tests/examples/gl/gtk/gstgtk.c:24:
+         ../subprojects/gst-plugins-base/gst-libs/gst/gl/gl.h:25:10: fatal error: gst/gl/gl-enumtypes.h: No such file or directory
+         25 | #include <gst/gl/gl-enumtypes.h>
+         |          ^~~~~~~~~~~~~~~~~~~~~~~
+         Add the missing dependency so that the headers are generated beforehand.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/855>
+
+2020-09-04 21:09:17 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/rtsp/gstrtsptransport.c:
+         rtsptransport: support single port for client_port and server_port
+         This is explicitly specified as valid in the RFC, where the
+         syntax for both parameters is:
+         ";" "client_port" "=" port [ "-" port ]
+         ";" "server_port" "=" port [ "-" port ]
+         This is useful for applications where RTCP is either not necessary
+         or not possible.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/846>
+
+2020-10-09 12:02:14 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/video/video-info.h:
+         video-info: clarify GST_VIDEO_INTERLACE_MODE_ALTERNATE doc
+         Fields really should alternate in this mode.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/852>
+
+2020-10-05 12:07:22 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: fix output state interlace-mode
+         When user is passing the actual interlace-mode when calling
+         gst_video_decoder_set_interlaced_output_state() it should not be
+         overidden by the input interlace-mode.
+         Needed to fix #825 as we want to keep interlace-mode=interleaved from
+         parsers and have the OMX decoder producing interlace-mode=alternate.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/852>
+
+2020-10-05 11:38:09 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: add interlace-mode to debug output when setting output state
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/852>
+
+2020-07-16 18:10:45 +1000  Matthew Waters <matthew@centricular.com>
+
+       * tests/check/libs/gstgl-public-headers.h:
+       * tests/check/libs/gstglheaders.c:
+       * tests/check/libs/libsabi.c:
+       * tests/check/libs/struct_aarch64.h:
+       * tests/check/libs/struct_arm.h:
+       * tests/check/libs/struct_i386.h:
+       * tests/check/libs/struct_ppc32.h:
+       * tests/check/libs/struct_ppc64.h:
+       * tests/check/libs/struct_x86_64.h:
+       * tests/check/meson.build:
+         tests: add gl structs to abi check
+         Tested on x86, x86_64, armv7l, aarch64.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/854>
+
+2020-10-09 12:25:21 +1100  Matthew Waters <matthew@centricular.com>
+
+       * meson.build:
+         build: use cpu_family for arch checks
+         e.g. on 32-bit arm, we may have armv6, armv7l, armv7hf, etc which all
+         generally have the same layouts.  cpu_family() groups all of these into
+         just 'arm' that the ABI check table is expecting.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/854>
+
+2020-10-01 11:22:51 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst/tcp/gstmultihandlesink.c:
+         multihandlesink: Don't pass NULL caps to gst_caps_is_equal
+         Apparently the sinkpad caps can get cleared when shutting down the
+         pipeline while the sink is working, provoking a critical warning.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/842>
+
+2020-10-08 17:10:30 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * ext/pango/gsttimeoverlay.c:
+       * ext/pango/gsttimeoverlay.h:
+         timeoverlay: Add elapsed-running-time mode
+         This takes the first running time and the first after each flush-stop as
+         an offset for the running time that is rendered.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/737>
+
+2020-10-08 13:52:33 +0200  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+       * gst-libs/gst/audio/gstaudiofilter.c:
+       * gst-libs/gst/video/gstvideofilter.c:
+       * gst/videoscale/gstvideoscale.c:
+         audio: video: Fix in/outbuf confusion of transform_meta
+         There are three instances where in- and outbuf have been swapped. This
+         didn't affect the correctness of the libs *filter code, but the
+         videoscale implementation swapped the arguments of meta->transform_func.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/853>
+
+2020-10-01 14:45:24 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * ext/pango/meson.build:
+         pango: Add fallback dependency
+         When we'll depend on Meson >=0.55 this can be replaced by [provide]
+         section in gst-build's pango.wrap file. The dependency variable name can
+         also be dropped when pango is updated to use override_dependency:
+         https://gitlab.gnome.org/GNOME/pango/-/merge_requests/250
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/844>
+
+2020-09-16 04:30:40 +0900  Seungha Yang <seungha@centricular.com>
+
+       * meson.build:
+         meson: Always wrap "prefix" option with join_paths() to make Windows happy
+         Both "\" and "/" separators are allowed on Windows but the problem
+         is that "\" is not converted to "\\" in this case.
+         It will result to unknown/unrecognized character escape sequence.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/818>
+
+2020-09-25 14:05:09 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * gst-libs/gst/gl/meson.build:
+         meson: Add GL summary
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/836>
+
+2020-09-21 23:50:03 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/compositor/blend.c:
+         compositor: fix YUY2/UYVY/VYUY blending
+         Don't overead memory.
+         Fixup for https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/755
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/823>
+
+2020-09-15 14:15:36 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * meson_options.txt:
+       * tests/examples/gl/qt/meson.build:
+       * tests/examples/overlay/meson.build:
+         meson: Add a qt5 feature
+         This allow opting out items of the builds the depends on QT5 library.
+         Auto-detection of QT5 in cross-build requires host tools to match with the
+         sysroot, and detection of mis-match is not fully reliable.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/817>
+
+2020-09-14 17:56:07 +0900  sohwan.park <sohwan.park@lge.com>
+
+       * meson.build:
+         meson: add abi configuration for meson build
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/815>
+
+2020-07-15 15:46:56 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst/compositor/blend.c:
+       * gst/compositor/blend.h:
+       * gst/compositor/compositor.c:
+       * gst/compositor/compositor.h:
+         compositor: blend with multiple threads
+         Increases the throughput of compositing by using more CPU cycles across
+         multiple threads.  Simple cases (the output contains one pixel from at
+         most one input) can have up to a 70% increase in throughput.  Not so
+         simple cases are limited by the region with the most number of
+         composite operations.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/755>
+
+2020-09-11 20:15:14 +0200  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/video/video-color.c:
+       * gst-libs/gst/video/video-color.h:
+       * gst-libs/gst/video/video-converter.c:
+       * tests/check/libs/video.c:
+         video: Rename video_color_transfer to video_transfer_function
+         Rename remaining `gst_video_color_transfer_{encode,decode}` functions on
+         the `GstVideoTransferFunction` enumeration to
+         `gst_video_transfer_function_{encode,decode}` permitting
+         gobject-introspection to turn these into associated functions and place
+         them under the respective `<enumeration>` block in gir XML files.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/805>
+
+2020-09-11 21:40:26 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: ensure peek_next_sample() uses the correct caps
+         gst_pad_get_current_caps() may be wrong when there is a renegotiation in
+         progress for the pad and we have not yet received or selected the buffer
+         with different caps yet.
+         Fix by storing the caps through in a similar way to the existing code
+         for buffer/video-info selection machinery.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/813>
+
+2017-08-18 17:01:02 +0200  Stian Selnes <stian@pexip.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: Bump log level of marking a sync point
+         Sync points are often important when debugging and deserves DEBUG
+         level.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/730>
+
+2020-07-01 18:19:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+       * gst-libs/gst/video/gstvideodecoder.h:
+         videodecoder: Add API for subclasses to request a new sync point
+         This allows subclasses that notice missing reference frames to request a
+         new sync point to allow seamless decoding again. While doing so the
+         subclass can also signal whether it wants a) all following input frames
+         until the sync point to be discarded or b) all output frames until the
+         sync point to be marked as corrupt.
+         Sending of force-keyunit events for this can be throttled by the
+         application via the "min-force-keyunit-interval" property.
+         This replaces custom behaviour for the same in various decoders, for
+         example openh264dec.
+         Based on patches by Haakon Sporsheim <haakon@pexip.com> and
+         Stian Selnes <stian@pexip.com>.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/730>
+
+2020-07-01 18:14:40 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+       * gst-libs/gst/video/gstvideodecoder.h:
+         videodecoder: Add API for subclasses to signal that they need the stream to start with a sync point
+         If the first frame(s) at the very beginning or after a flush are not a
+         sync point then the base class would discard them before passing them to
+         the subclass.
+         This also fixes the previously broken distance_from_sync handling: it
+         was never reset at sync points.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/730>
+
+2020-07-01 18:11:25 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: Add "discard-corrupted-frames" property
+         This can be used by applications to configure decoders so that corrupted
+         frames are directly discarded instead of being forwarded inside the
+         pipeline. It is a replacement for the "output-corrupt" property of the
+         ffmpeg decoders.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/730>
+
+2020-07-01 18:09:22 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+       * gst-libs/gst/video/gstvideoutils.h:
+         videodecoder: Add API for marking output frames as corrupted
+         This can be used by subclasses to mark output frames as known to be
+         corrupted, for example if reference frames were missing. ffmpeg's
+         decoders can signal this.
+         In addition this flag is propagated downstream if the input frame had it
+         set.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/730>
+
+2020-06-23 18:40:07 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideodecoder.c:
+         videodecoder: Remove unused reorder_depth variable
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/730>
+
+2020-07-01 19:18:36 +0300  Mikhail Fludkov <misha@pexip.com>
+
+       * gst-libs/gst/rtp/gstrtpbasedepayload.c:
+         rtpbasedepayload: Mark GAP events sent because of packet loss as such
+         This allows downstream to distinguish packet loss from normal GAP events
+         that are sent simply because of gaps in the timeline.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/731>
+
+2020-09-08 15:41:55 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * gst-libs/gst/gl/meson.build:
+         meson: Actually build gstgl without implicit include dirs
+         Fixes a typo from https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/800
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/810>
+
+2020-09-10 14:19:04 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * tests/check/elements/glmixer.c:
+         glmixer: Fix unit test to actually work reliably
+         Don't run the harness in live mode, or otherwise it would output frames
+         already in the very beginning before a buffer was provided to it due to
+         timeout.
+         Also send EOS/a second buffer before pulling a buffer as videoaggregator
+         has one frame of latency.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/812>
+
+2020-08-13 12:49:19 +0800  Haihao Xiang <haihao.xiang@intel.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst-libs/gst/gl/glprototypes/gstgl_gles2compat.h:
+       * gst-libs/gst/gl/gstglcolorconvert.c:
+       * gst-libs/gst/gl/gstglcolorconvert.h:
+       * gst-libs/gst/gl/gstglformat.c:
+       * gst-libs/gst/gl/gstglmemory.h:
+         gl: add support for GBR and GBRA
+         example pipeline:
+         gst-launch-1.0 videotestsrc ! video/x-raw,format=GBR ! glimagesink
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/789>
+
+2020-08-20 09:06:04 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+         videoaggregator: Don't require any pads to be configured for negotiating source pad caps
+         This is not actually required (anymore?). Source pad caps can be
+         negotiated at any time regardless of any configured (or existing) sink
+         pads and videoaggregator comes up with some fixated caps based on the
+         downstream caps.
+         Subclasses can override this behaviour as needed by overriding
+         update_src_caps().
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/793>
+
+2020-09-03 21:19:29 +0200  Marijn Suijten <marijns95@gmail.com>
+
+       * gst-libs/gst/gl/gstglmemory.c:
+       * gst-libs/gst/gl/gstglmemory.h:
+       * gst-libs/gst/gl/gstglmemorypbo.c:
+       * gst-libs/gst/video/video-color.c:
+         gst-libs: gl: Fix documentation typo and clarify gl_memory_texsubimage
+         `gst_gl_memory_read_pixels` reads pixels from `GLMemory` into the
+         pointer, effectively writing to it. This is opposite from
+         `gst_gl_memory_texsubimage` which reads texture data from `read_pointer`
+         into `GLMemory`.
+         Both cases are clarified by changing `read_pointer` to `write_pointer`,
+         and explaining what `gst_gl_memory_texsubimage` does in addition to
+         referring back to `gst_gl_memory_read_pixels`.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/806>
+
+2020-08-20 16:31:38 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Reset offset if the output rate is renegotiated
+         On next aggregation the new offset will be calculated based on the
+         segment position.
+         Without this a rate change would cause a jump forwards or backwards in
+         the output timeline.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/794>
+
+2020-08-18 10:42:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/video-anc.c:
+         video-anc: Implement transform functions for AFD/Bar metas
+         If the transformation is just a copy, copy over the metadata. For AFD
+         also copy over the metadata if the aspect ratio stays the same in
+         scaling transformations. In all other cases fail the transformation.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/791>
+
+2020-08-24 19:37:15 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/app/gstappsrc.c:
+         appsrc: Wake up the create() function on caps changes
+         This allows the new caps to be sent downstream as soon as possible
+         instead of having to wait for the next buffer/buffer list.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/798>
+
+2020-09-08 20:45:53 -0300  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gstencodebin.c:
+         encodebin: Be less restrictive on muxer caps when preset name is specified
+         This way the user can simply define its caps by only providing the
+         structure name which is what we do in the encoding profile
+         deserialization function for example.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/811>
+
+2020-07-30 18:49:52 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gstsmartencoder.c:
+         encodebin: Add vp8 and vp9 smart encoding support
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/770>
+
+2020-07-30 18:49:18 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gstencodebin.c:
+         encodebin: Fix refcount mishandling
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/770>
+
+2020-08-21 03:06:04 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+         rtpbasepayload: do not forget delayed segment when forwarding gaps
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/797>
+
+2020-08-04 12:53:18 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/video-converter.c:
+         video-converter: Add fast paths from v210 to I420/YV12, Y42B, UYVY and YUY2
+         These then don't require going through the generic code path via AYUV64
+         first but can be converted directly.
+         This speeds up processing of
+         videotestsrc ! v210 ! videoconvert ! other_format ! fakesink
+         by a factor of 1.55 for I420/YV12 and 1.40 for the other destination
+         formats and reduces memory pressure considerably.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/775>
+
+2020-09-08 17:30:31 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * .gitlab-ci.yml:
+         ci: include template from gst-ci master branch again
+
+2020-09-08 16:58:29 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         Back to development
+
+=== release 1.18.0 ===
+
+2020-09-08 00:03:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * .gitlab-ci.yml:
+       * ChangeLog:
+       * NEWS:
+       * README:
+       * RELEASE:
+       * gst-plugins-base.doap:
+       * meson.build:
+         Release 1.18.0
+
+2020-09-07 22:36:54 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+       * scripts/dist-translations.py:
+       * scripts/meson.build:
+         meson: dist pot file in tarball
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/808>
+
+2020-09-07 12:10:16 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/video-color.c:
+       * gst-libs/gst/video/video-color.h:
+       * gst-libs/gst/video/video-converter.c:
+       * gst/videoconvert/gstvideoconvert.c:
+       * tests/check/libs/video.c:
+         video: Rename gst_video_color_transfer_*() to gst_video_transfer_function_*() in new API
+         The type is called GstVideoTransferFunction so the function names should
+         match, otherwise gobject-introspection is keeping the functions as
+         global functions instead of methods on the type.
+         The same mistake was also made in lots of other APIs over the years, but
+         here we can at least fix it for 1.18 still.
+         Thanks to Marijn Suijten for noticing.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/807>
+
+2020-09-02 21:53:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * pkgconfig/meson.build:
+         meson: Fix gstreamer-gl-prototypes pkgconfig file on Windows
+         When we're using wgl, we have to link to `-lopengl32`, not `-lGL`.
+         Fixes building of anything that uses this pc file, such as the nvcodec
+         plugin.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/803>
+
+2020-08-28 12:56:38 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudiodecoder.c:
+       * gst-libs/gst/audio/gstaudioencoder.c:
+       * gst-libs/gst/video/gstvideodecoder.c:
+       * gst-libs/gst/video/gstvideoencoder.c:
+         audio/video: Copy more metas by default in the codec base classes
+         For audio we copy metas that have no tags at all, or that only have the
+         "audio" and/or "audio-channels" tag. Audio codecs don't change the
+         audio aspect of the stream and in almost all cases don't change the
+         number of channels. They might however change the sample rate (e.g.
+         Opus). Subclasses that change the number of channels will have to
+         override ::transform_meta() accordingly.
+         For video we copy metas that have no tags at all, or that only have the
+         "video" and/or "video-size" and/or "video-orientation" tag. Video codecs
+         don't change the "video" aspect of the stream and in almost all cases
+         don't change the resolution or orientation. Subclasses that rescale or
+         change the orientation will have to override ::transform_meta()
+         accordingly.
+         See https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/merge_requests/576#note_610581
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/801>
+
+2020-08-28 12:30:43 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/videoscale/gstvideoscale.c:
+         videoscale: make local quark vars static
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/802>
+
+2020-08-26 19:15:19 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/gl_mkenum.py:
+       * gst-libs/gst/gl/meson.build:
+         gl/build: build with implicit_include_directories : false
+         Fixes case-insensitive file systems confusing gst-libs/gst/gl/egl/egl.h
+         with EGL/egl.h when the source directory gst-libs/gst/gl is automatically
+         added to the compiler's search path.
+         Due to https://github.com/mesonbuild/meson/issues/7582 we also need to
+         perform manual enumtype generation.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/814
+
+2020-08-20 05:44:46 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst/compositor/compositororc-dist.c:
+       * gst/compositor/compositororc.orc:
+         compositor: fix off-by-1 error in blending ARGB
+         Use a more naive blend formulation that avoids off-by-one errors
+         at the 0x00 and 0xff alpha endpoints.
+         Fixes #810
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/796>
+
+2020-08-25 12:56:21 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/audioresample/gstaudioresample.c:
+       * gst/videorate/gstvideorate.c:
+       * gst/videoscale/gstvideoscale.c:
+         videorate/videoscale/audioresample: Ensure that the caps returned from fixate_caps() are actually fixated
+         If there is some other field than the ones we care about left and not
+         fixated yet then basetransform will just error out. So instead just pass
+         the result through gst_caps_fixate() in the very end.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/799>
+
+2019-04-16 12:08:30 +0100  Marcin Kolny <marcin.kolny@gmail.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+         encoding-profile: minor fix in documentation
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/212>
+
+=== release 1.17.90 ===
+
+2020-08-20 16:10:18 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * RELEASE:
+       * gst-plugins-base.doap:
+       * meson.build:
+         Release 1.17.90
+
+2020-08-18 10:26:48 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst/videoscale/gstvideoscale.c:
+         videoscale: Don't call NULL GstMeta transform function
+         It's optional and if it does not exist then no transformation is
+         possible.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/790>
+
+2020-08-11 22:54:50 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/tag/lang-tables.dat:
+       * gst-libs/gst/tag/lang.c:
+       * gst-libs/gst/tag/mklangtables.c:
+         tags: update to latest iso-code and support more languages
+         Some languages have an ISO 639-2 representation but no 639-1
+         representation, for example where "eng" has a two-letter
+         equivalent in "en", "enm" doesn't have one.
+         Discarding those languages from our static table caused functions
+         such as gst_tag_get_language_code_iso_639_2T() or
+         gst_tag_get_language_code_iso_639_2B() to return NULL for
+         valid language codes such as "enm", potentially causing users
+         of these API such as mpegtsmux to discard language code tags
+         as invalid.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/785>
+
+2020-08-11 17:15:50 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/pbutils/codec-utils.c:
+         pbutils: Add latest H.264 level values
+         The spec now list 6, 6.1 and 6.2.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/786>
+
+2020-08-11 03:45:32 +1000  Jan Schmidt <jan@centricular.com>
+
+       * gst-libs/gst/app/gstappsrc.c:
+         appsrc: Post a bus error if a segment can't be applied
+         When applying segments from the input samples, post a bus
+         error and fail loudly if the segment fails to configure, instead of
+         just posting debug output.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/783>
+
+2020-08-11 16:53:51 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/egl/egl.h:
+       * gst-libs/gst/gl/meson.build:
+       * gst-libs/gst/gl/wayland/wayland.h:
+       * gst-libs/gst/gl/x11/x11.h:
+         build/gl: add top-level include files for sub-libraries
+         Makes gir happy
+         Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/809
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/784>
+
+2020-08-10 16:18:31 +0000  Josh Matthews <josh@joshmatthews.net>
+
+       * tests/examples/gl/cocoa/meson.build:
+         Add required dependencies of cocoa GL example for linking.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/782>
+
+2020-08-10 09:59:09 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * pkgconfig/gstreamer-gl-egl-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-wayland-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-x11-uninstalled.pc.in:
+         pkg-config: Fix dependency typo in uninstalled gstreamer-gl-* pc files
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/781>
+
+2020-08-07 10:18:34 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Add support for new sample selection API
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/805
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/780>
+
+2020-08-07 09:34:37 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * tests/check/elements/compositor.c:
+       * tests/examples/compositor/signals.c:
+         videoaggregator: Update for additional info parameter to the "samples-selected" signal
+         See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/590
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/780>
+
+2020-08-06 14:22:27 +0000  Josh Matthews <josh@joshmatthews.net>
+
+       * pkgconfig/gstreamer-gl-egl.pc.in:
+         Fix incorrect pkgconfig description.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/779>
+
+2020-07-23 19:48:55 +1000  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * docs/libs/gl-egl/index.md:
+       * docs/libs/gl-egl/sitemap.txt:
+       * docs/libs/gl-wayland/index.md:
+       * docs/libs/gl-wayland/sitemap.txt:
+       * docs/libs/gl-x11/index.md:
+       * docs/libs/gl-x11/sitemap.txt:
+       * docs/meson.build:
+       * ext/gl/meson.build:
+       * gst-libs/gst/gl/egl/gstglmemoryegl.h:
+       * gst-libs/gst/gl/gstgl_fwd.h:
+       * gst-libs/gst/gl/meson.build:
+       * pkgconfig/gstreamer-gl-egl-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-egl.pc.in:
+       * pkgconfig/gstreamer-gl-prototypes-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-prototypes.pc.in:
+       * pkgconfig/gstreamer-gl-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-wayland-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-wayland.pc.in:
+       * pkgconfig/gstreamer-gl-x11-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl-x11.pc.in:
+       * pkgconfig/gstreamer-gl.pc.in:
+       * pkgconfig/meson.build:
+       * tests/check/meson.build:
+       * tests/examples/gl/generic/cube/meson.build:
+       * tests/examples/gl/generic/cubeyuv/meson.build:
+       * tests/examples/gl/generic/doublecube/meson.build:
+       * tests/examples/gl/generic/recordgraphic/meson.build:
+       * tests/examples/gl/qt/meson.build:
+       * tests/examples/gl/qt/mousevideooverlay/meson.build:
+       * tests/examples/gl/qt/qglwidgetvideooverlay/meson.build:
+       * tests/examples/gl/qt/qglwtextureshare/meson.build:
+         gl: move each gl platform specific API to its own gir
+         With contributions from:
+         Thibault Saunier <tsaunier@igalia.com>
+         Matthew Waters <matthew@centricular.com>
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/651
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/661>
+
+2020-05-13 10:08:25 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+       * gst-libs/gst/gl/egl/gsteglimage.c:
+         gl: egl: add missing gir annotations
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/661>
+
+2020-08-05 16:54:19 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * tests/check/elements/compositor.c:
+       * tests/examples/compositor/signals.c:
+         videoaggregator: update to new samples selection API
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/778>
+
+2020-08-03 19:53:58 +0300  Jordan Petridis <jordan@centricular.com>
+
+       * tests/check/elements/audioresample.c:
+         tests/check/elements/audioresample.c: avoid implict int ot float conversion
+         Also use doubles instead so the calculation won't overflow
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/773>
+
+2020-08-04 15:17:35 +0300  Jordan Petridis <jordan@centricular.com>
+
+       * ext/alsa/gstalsamidisrc.c:
+         alsamidisrc: fix compiler warning with clang 10
+         ```
+         ../subprojects/gst-plugins-base/ext/alsa/gstalsamidisrc.c:201:54: error: converting the result of '<<' to a boolean always evaluates to false [-Werror,-Wtautological-constant-compare]
+         snd_seq_ev_schedule_real (&ev, alsamidisrc->queue, SND_SEQ_TIME_MODE_ABS,
+         ^
+         /usr/include/alsa/seq_event.h:215:34: note: expanded from macro 'SND_SEQ_TIME_MODE_ABS'
+         ```
+         The ALSA API expects 0 or 1 here and will then add the flags accordingly,
+         and that's also what other code using this API does.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/777>
+
+2020-08-04 07:11:54 -0400  Xavier Claessens <xavier.claessens@collabora.com>
+
+       * tests/validate/meson.build:
+         Meson: find_program() will return gst-tester from subproject
+         gstreamer now use override_find_program() so it won't return the system
+         version.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/776>
+
+2020-08-04 05:32:08 +0530  Nirbheek Chauhan <nirbheek@centricular.com>
+
+       * meson.build:
+         meson: Only look for Objective-C compiler on macOS/iOS
+         On Windows, MinGW-GCC Objective-C compilers can be in PATH and mess up
+         the build since they may not match the CPU family of the C/C++
+         compilers we are using.
+         Also require them on macOS/iOS, because they should always be present.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-build/-/issues/88
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/774>
+
+2020-08-01 00:22:28 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/examples/compositor/signals.c:
+         examples: compositor: fix build with older GLib versions
+         Don't use g_hash_table_steal_extended() which was only
+         added in 2.58.
+         Fixes #801
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/772>
+
+2020-07-16 21:56:47 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/compositor/compositor.c:
+         compositor: Frames where we introduce alpha can't obscure anything
+         When a pad has alpha != 1.0 it means that the resulting frames will
+         contain alpha and thus can't fully obscure with a lower zorder.
+         Also simplifies the other checks as blending with an OVER or on a
+         transparent is not a no-op as previously assumed.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/764>
+
+2020-07-01 03:47:00 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/video/gstvideoaggregator.c:
+       * tests/check/elements/compositor.c:
+       * tests/examples/compositor/meson.build:
+       * tests/examples/compositor/signals.c:
+         videoaggregator: implement samples selection API
+         Call gst_aggregator_selected_samples() after filling the queues
+         (but before preparing frames).
+         Implement GstAggregator.peek_next_sample.
+         Add an example that demonstrates usage of the new API in combination
+         with the existing buffer-consumed signal.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/728>
+
+2020-07-24 08:33:23 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+         encoding: Support more topologies in profile_from_discoverer()
+         Previous implementation was only working when the stream was inside a
+         container, this refactoring allows using virtually any stream as input.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/766>
+
+2020-07-30 19:16:06 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp:
+         glwindow/winrt: Increase timeout value to 15 seconds
+         5 seconds might not be enough value for timeout in case an application
+         is running on a device with very limited computing power.
+         Note that ANGLE uses 10 seconds timeout value. So even if a timeout
+         happens here, it's also ANGLE's timeout condition as well
+         (meaning that bad things will happen either way)
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/769>
+
+2020-07-27 18:55:35 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Only check downstream caps when handling CAPS events if we didn't negotiate with downstream yet
+         If we already negotiated with downstream there is not point in checking
+         if the caps are supported. We already know that this is the case.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/768>
+
+2020-07-27 18:49:48 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Check all downstream allowed caps structures if they support the upstream rate
+         Otherwise it might happen that downstream prefers a different rate (i.e.
+         puts it into the first structure) and also supports other rates, but
+         audioaggregator would then fail negotiation.
+         Also this now correctly handles downstream returning a range of
+         supported rates.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/795
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/768>
+
+2020-07-23 16:52:11 +0200  Stéphane Cerveau <scerveau@collabora.com>
+
+       * meson.build:
+         meson: add a plugin summary
+         This summary displays a list of plugins which
+         have been enabled.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/765>
+
+2020-07-04 12:33:20 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+       * gst/encoding/gstencodebin.c:
+       * gst/encoding/gstsmartencoder.c:
+       * gst/encoding/gstsmartencoder.h:
+         encodebin: Fix and refactor smart encoding
+         It was not working properly and the implementation of the smartencoder
+         element was weird. This introduce a number of changes (which are all
+         in one single commit because they basically all work together and lead
+         to basically reimplementing the element):
+         * Make smartencoder a bin so that the reencoding chain of elements are
+         inside of it instead of not having any parent. Those elements were not
+         be visible when dumping the pipeline which was very confusing.
+         * Make encodebin create the right encoder with a capsfilter (and parser)
+         to properly enforce the format specified by the user, and so that the
+         encoder properties specified in the encoding profile are respected.
+         * Use `decodebin` to do the decoding instead of selecting a decoder
+         ourself and not plug any parser etc...
+         * Ensure that negotiated format in the sinkpad of smart encoder is fixed
+         through time when the user requested a non dynamic output
+         * Add a parser at the beginning of the smart encoder
+         * Handle errors when reencoding
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/751>
+
+2020-07-04 12:32:26 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gststreamsplitter.c:
+         streamsplitter: Forward STREAM_START to all branchs
+         Otherwise the branch that get selected later won't receive it ever.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/751>
+
+2020-07-04 12:29:06 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gststreamcombiner.c:
+       * gst/encoding/gststreamcombiner.h:
+       * gst/encoding/gststreamsplitter.c:
+         streamsplitter/combiner: Drain encoder before switching branch
+         Otherwise we miht have frames queued in the encoder from the old branch
+         that do not get encoded/muxed when they should.
+         The implementation is a bit 'weird' but the rational and solution
+         is documented in the code.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/751>
+
+2020-07-04 12:20:44 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst/encoding/gstencodebin.c:
+         encodebin: Rebuilt internal state when swicthing to avoid-reencoding
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/751>
+
+2020-07-15 17:51:18 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/rtp/gstrtpbasepayload.c:
+       * tests/check/libs/rtpbasepayload.c:
+         rtpbasepayload: place twcc-ext-id behind environment variable
+         Adding properties for each and every rtp header extension is not
+         scalable and a new interface will be implemented for the general case
+         (https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/777).
+         Set the environment variable "GST_RTP_ENABLE_EXPERIMENTAL_TWCC_PROPERTY"
+         to any value to reenable the short-lived twcc-ext-id property.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/761
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/756>
+
+2020-07-16 16:25:15 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/videorate/gstvideorate.c:
+       * tests/check/elements/videorate.c:
+         videorate: Error out on streams with no way to guess framerate
+         This is better than going into an infinite loop.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/761>
+
+2020-07-16 16:04:23 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * gst/videorate/gstvideorate.c:
+         videorate: Assert on invalid result from internal code
+         Letting this through instead results in an infinite loop where
+         the exact same buffer gets pushed out ad infinitum.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/761>
+
+2020-07-15 22:54:55 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * tests/check/elements/videorate.c:
+         videorate: Add test that reproduces infinite loop
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/761>
+
+2020-07-06 14:46:33 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * ext/alsa/gstalsadeviceprovider.c:
+         alsadeviceprovider: Remove redundant start function
+         The ALSA provider doesn't provider live monitoring, so don't
+         pretend otherwise.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/735>
+
+2020-07-16 16:31:28 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/egl/gstgldisplay_egl.c:
+       * gst-libs/gst/gl/gstgldisplay.c:
+       * gst-libs/gst/gl/gstgldisplay.h:
+       * gst-libs/gst/gl/wayland/gstgldisplay_wayland.c:
+       * gst-libs/gst/gl/x11/gstgldisplay_x11.c:
+         Revert "gstgldisplay: Add public foreign_display property"
+         This introduced a possible regression where the EGL display connection
+         could be leaked when a foreign native display (x11, wayland, etc) could
+         create a non-foreign EGL display that would never be destroyed.
+         The underlying problem needed to be solved in a different way.  See
+         https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/640
+         for more details.
+         This reverts commit 2e686b0dad9700b10d91da5e91f34849fa7d32ae.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/758>
+
+2020-07-16 14:34:51 +0200  Silvio Lazzeretti <silviola@amazon.com>
+
+       * gst-libs/gst/audio/gstaudiosink.c:
+       * gst-libs/gst/audio/gstaudiosrc.c:
+       * gst-libs/gst/audio/gstaudioutilsprivate.c:
+       * gst-libs/gst/audio/gstaudioutilsprivate.h:
+         audioutilsprivate: restore thread priority before ending
+         The priority of the thread that executes audioringbuffer_thread_func
+         is incremented on Windows by the usage of the AvSetMmThreadCharacteristics
+         API. This change has to be restored, as described on the documentation
+         of the API (https://docs.microsoft.com/en-us/windows/win32/api/avrt/nf-avrt-avsetmmthreadcharacteristicsw#remarks),
+         with a call to the AvRevertMmThreadCharacteristics. If this is not done,
+         a handle will be leaked.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/760>
+
+2020-07-17 18:48:15 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/audio/gstaudioutilsprivate.c:
+         audioutilsprivate: Don't try to load avrt for UWP application
+         All APIs in avrt.h are desktop only.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/763>
+
+2020-07-16 18:07:34 +1000  Matthew Waters <matthew@centricular.com>
+
+       * gst-libs/gst/gl/meson.build:
+         build/gl: remove unused cocoa/win32 header variables
+         We don't install any cocoa/win32 specific headers.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/759>
+
+2020-04-07 11:00:39 +0200  Havard Graff <havard@pexip.com>
+
+       * tests/check/libs/rtp.c:
+         test/rtp: use the proper _INIT for initializing rtp/rtcp buffer structs.
+         Fixes -Wmissing-field-initializers in Clang.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/757>
+
+2020-02-12 14:48:36 +0100  Havard Graff <havard@pexip.com>
+
+       * tests/check/libs/rtpbasedepayload.c:
+         rtpbasedepayload: test warning fixes
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/757>
+
+2020-07-14 22:03:39 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+         doc: Update cache with new raw pixel format
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/754>
+
+2020-07-14 21:43:56 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-format.c:
+       * gst-libs/gst/video/video-format.h:
+       * gst-libs/gst/video/video-info.c:
+       * tests/check/elements/videoscale.c:
+       * tests/check/libs/video.c:
+         video: Add support for linear 32x32 NV12 tiles
+         This adds linear 32x32 NV12 based tiles. This format is notably used by
+         Allwinner VCU and exposed in V4L2 as being "SUNXI Tiled" format. In this
+         patch we generalize the plane info calculation so we can share this part
+         with the 4L4 variant.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/754>
+
+2020-07-14 11:29:57 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+         doc: Update cache after adding a new pixel format
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/753>
+
+2020-07-14 10:42:01 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst/rawparse/gstrawvideoparse.c:
+         rawvideoparse: Fix tiling support
+         When using tile format, the stride has a different meaning. It used
+         the MSB and LSB 16bits to encode respectively the width and height in
+         number of tiles.
+         This issue was introduce with commit e5b70d384c which was fixing
+         missing size recalculation when strides and offset is updated.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/753>
+
+2020-07-13 16:18:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/video/video-converter.c:
+       * gst-libs/gst/video/video-format.c:
+       * gst-libs/gst/video/video-format.h:
+       * gst-libs/gst/video/video-info.c:
+       * gst-libs/gst/video/video-tile.c:
+       * gst-libs/gst/video/video-tile.h:
+       * tests/check/elements/videoscale.c:
+       * tests/check/libs/video.c:
+         video: Add NV12_4L4 tile format
+         This format is produced by Verisillicon VC8000D VPU decoder, it is a simple 4x4
+         tiling layout in a linear way.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/753>
+
+2020-06-16 11:44:08 -0400  Aaron Boxer <aaron.boxer@collabora.com>
+
+       * gst-libs/gst/video/video-frame.c:
+         video: allow frame copy destination to have dimensions smaller than source
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/707>
+
+2020-07-14 14:06:58 +1000  Matthew Waters <matthew@centricular.com>
+
+       * tests/examples/gl/qt/gl-compat-defines.h:
+       * tests/examples/gl/qt/meson.build:
+       * tests/examples/gl/qt/mousevideooverlay/meson.build:
+       * tests/examples/gl/qt/mousevideooverlay/pipeline.cpp:
+       * tests/examples/gl/qt/mousevideooverlay/qrenderer.h:
+       * tests/examples/gl/qt/qglwidgetvideooverlay/meson.build:
+       * tests/examples/gl/qt/qglwidgetvideooverlay/pipeline.cpp:
+       * tests/examples/gl/qt/qglwidgetvideooverlay/qglrenderer.h:
+       * tests/examples/gl/qt/qglwtextureshare/meson.build:
+       * tests/examples/gl/qt/qglwtextureshare/pipeline.cpp:
+       * tests/examples/gl/qt/qglwtextureshare/qglrenderer.h:
+         examples/gl/qt: silence compiler warnings
+         -Waggregate-return: used by some Qt clases extensively and not super
+         useful for this example. Supress it.
+         warning: "GL_GLEXT_VERSION" redefined: Perform the same workaround as
+         qmlglsink by defining the old gl/GL.h header guard if the new GL/gl.h
+         guard exists.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/752>
+
+2019-11-27 16:51:55 +0100  Santiago Carot-Nemesio <scarot@twilio.com>
+
+       * gst-libs/gst/rtp/gstrtcpbuffer.c:
+       * tests/check/libs/rtp.c:
+         rtcpbuffer: Notify error in case packet can not be added to an RTCP compound packet
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/476>
+
+2020-07-10 14:57:53 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/video/video-converter.c:
+         video-converter: Add scaling fast-path for GBRA format
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/684
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/749>
+
+2020-07-10 19:49:56 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp:
+         glwindow/winrt: Add warning message if window is being closed from a UI thread
+         All UI elements will follow Single-Threaded Apartments (STA) model.
+         As a result, we should access them from dedicated UI thread.
+         Due to the nature of the threading model, ANGLE will wait the UI
+         thread while closing internal window/swapchain objects.
+         A problem here is that when destroying GstGLWindow from the UI thread,
+         it will wait GstGLContext's internal thread. Meanwhile, the GstGLContext's
+         internal thread will be blocked because ANGLE wants to access the UI thread.
+         That will cause a deadlock or exceptions.
+         In short, application should not try to call
+         gst_element_set_state(pipeline, GST_STATE_NULL) from a UI thread.
+         That's a limitation of current implementation.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/745>
+
+2020-07-09 22:23:33 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/gl/meson.build:
+       * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp:
+       * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.h:
+         glwindow/winrt: Add window resize event handler
+         GstGLWindow implmentaion should be able to report native window size
+         and also it need to handle resize event for glimagesink.
+         Note that GstD3D11Window implementation was referenced for this change.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/745>
+
+2020-07-09 19:51:57 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/gl/meson.build:
+       * gst-libs/gst/gl/winrt/gstglwindow_winrt_egl.cpp:
+         glwindow/winrt: Move to c++
+         For native window size query, c++ API is much convenient than c API
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/745>
+
+2020-07-10 02:46:56 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/app/gstappsrc.c:
+         appsrc: Fix annotations
+         Don't put double ':' there
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/663>
+
+2020-05-17 02:44:42 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/check/elements/appsrc.c:
+         tests: appsrc: Add unit test for custom segment
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/663>
+
+2020-05-17 02:29:39 +0900  Seungha Yang <seungha@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst-libs/gst/app/gstappsrc.c:
+         appsrc: Add support for custom GstSegment
+         Add property "handle-segment-change" for user to allow pushing
+         custom segment event. For now, this property can work only for
+         time format GstSegment.
+         This property can be useful in case application controls timeline
+         of stream such as there is timestamp discontinuity but playback is
+         expected to be continuous. Multi-period scenario of MPEG-DASH is an
+         example of this use case.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/663>
+
+2020-07-09 11:05:35 -0400  Thibault Saunier <tsaunier@igalia.com>
+
+       * gst-libs/gst/pbutils/encoding-profile.c:
+         pbutils: Do not restrict number of similar profiles in a container
+         We have the notion of presence, and when the user want to be in control
+         it is totally legitimate for him to have several occurrences of a
+         similar profile
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/746>
+
+2020-07-09 13:13:14 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+       * gst-libs/gst/video/video-converter.c:
+         videoconverter: Relax frame size checks
+         Since we are using VideoMeta, the converter (similarly to the video_frame_copy
+         utility) should have no issue dealing with frames that are slightly larger.
+         This situation occure as some element will use padded width/height for
+         allocation, which results in a VideoMeta width/height being larger then the
+         display width/height found in the negotiated caps.
+         Fixes #790
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/747>
+
+2020-07-09 12:45:27 +0300  Sebastian Dröge <sebastian@centricular.com>
+
+       * gst-libs/gst/audio/gstaudioaggregator.c:
+         audioaggregator: Fix negotiation with downstream if there is no peer yet
+         get_allowed_caps() will return NULL, which is not a problem in itself.
+         Just take the template caps for negotiation in that case instead of
+         erroring out.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/744>
+
+2020-07-08 16:48:30 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-plugins-base.doap:
+       * meson.build:
+       * scripts/extract-release-date-from-doap-file.py:
+         meson: set release date from .doap file for releases
+         And fix up DOAP file XML. Parser would complain about
+         unknown entity &excl; here.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/743>
+
+2020-07-08 15:15:34 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * pkgconfig/gstreamer-plugins-base-uninstalled.pc.in:
+       * pkgconfig/gstreamer-plugins-base.pc.in:
+       * pkgconfig/meson.build:
+         pkgconfig: fix gstreamer-plugins-base-1.0 .pc files for no OpenGL case
+         Don't put gl into the libraries list if the gst-gl library isn't
+         being built, and also don't include it in the list of linker flags
+         then.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/613
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/742>
+
+2020-07-02 22:33:44 +0900  Seungha Yang <seungha@centricular.com>
+
+       * gst-libs/gst/gl/win32/gstglwindow_win32.c:
+         glwindow/win32: Fix possible deadlock around key/mouse event handling
+         Calling gst_gl_window_send_{key,mouse}_event() from GstGLContext
+         thread might cause a deadlock. Instead, use the dedicated event handling
+         thread in GstGLDisplay.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/721>
+
+2020-06-23 16:41:31 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/examples/overlay/win32-videooverlay.c:
+         examples: win32-videooverlay: Add test for fullscreen mode switch
+         Add test option "--fullscreen" for testing fullscreen mode switch.
+         When enabled, user can switch fullscreen mode via SPACE key or
+         right mouse button click.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/721>
+
+2020-07-08 09:53:42 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * pkgconfig/gstreamer-gl-uninstalled.pc.in:
+       * pkgconfig/gstreamer-gl.pc.in:
+         pkgconfig: fix meson warnings about GL_CFLAGS in gstreamer-gl .pc files
+         We added GL_CFLAGS in autotools because we unconditionally included OpenGL
+         headers. We do not do that anymore for a standard #include <gst/gl/gl.h>.
+         OpenGL headers are only included for the platform specific files
+         e.g. #include <gst/gl/x11/gstgldisplay_x11.h> which must always be hidden
+         behind a #if GST_GL_HAVE_WINDOW_X11, or #include <gst/gl/gstglfuncs.h> to
+         gain access to the contents of the GstGLFuncs object.
+         Users of our headers must include the necessary include paths for the
+         platforms they are intending to support.
+         We might introduce extra .pc files for what GstGL was built against though.
+         Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/735
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/741>
+
+2020-07-08 04:08:33 +0900  Seungha Yang <seungha@centricular.com>
+
+       * tests/examples/gl/qt/qglwtextureshare/qglrenderer.cpp:
+         examples/gl/qt: Don't include GL/glx.h unconditionally
+         The header file might not be available on non-*nix platform.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/740>
+
+2020-07-07 20:01:33 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * tests/validate/meson.build:
+         tests: validate: fix meson warning
+         meson.build:4: WARNING: Trying to compare values of different types (ExecutableHolder, bool) using ==.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/739>
+
+2020-07-07 14:55:06 +0200  Edward Hervey <edward@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+         docs: Update cache for removed properties
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/738>
+
+2020-07-07 10:57:38 +0200  Edward Hervey <edward@centricular.com>
+
+       * docs/plugins/gst_plugins_cache.json:
+       * gst/playback/gstplay-enum.c:
+         playback: Clarify flag usage for playbin3
+         Forcing software-decoder has no effect on playbin3 now.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/738>
+
+2020-07-07 10:52:40 +0200  Edward Hervey <bilboed@bilboed.com>
+
+       * gst/playback/gstdecodebin3.c:
+       * gst/playback/gstplaybin3.c:
+       * gst/playback/gsturidecodebin3.c:
+         Revert "playbin3: handle GST_PLAY_FLAG_FORCE_SW_DECODERS"
+         This reverts commit f4bcf8290b3568690dacf0dac95af7f7036f7110.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/738>
+
+2020-07-02 14:25:27 +0200  Edward Hervey <edward@centricular.com>
+
+       * gst/playback/gstdecodebin3.c:
+       * gst/playback/gstplaybin3.c:
+       * gst/playback/gsturidecodebin3.c:
+         decodebin3: Only override the selection if needed
+         Whenever a new collection is calculated, the internal `select_streams_seqnum`
+         variable is reset. This ensures that we reliably know whether a select-streams
+         event has been received for that new collection.
+         Use that to decide whether we should add previously un-selected streams or new
+         streams in the current selection
+         Fixes #784
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/733>
+
+2020-06-29 18:21:23 -0400  Olivier Crête <olivier.crete@collabora.com>
+
+       * ext/alsa/gstalsaplugin.c:
+         alsadeviceprovider: Rank down to secondary so PulseAudio can hide it
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/727>
+
+2020-07-04 12:13:14 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst/compositor/compositororc-dist.c:
+         Update disted generated orc backup files
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/734>
+
+2020-07-04 00:31:49 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * gst-libs/gst/audio/meson.build:
+       * gst-libs/gst/video/meson.build:
+       * gst/adder/meson.build:
+       * gst/audiomixer/meson.build:
+       * gst/compositor/meson.build:
+       * gst/videotestsrc/meson.build:
+       * gst/volume/meson.build:
+       * meson.build:
+       * scripts/update-orc-dist-files.py:
+         meson: add update-orc-dist target
+         Add target to update backup orc -dist.[ch] files.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/734>
+
+2020-07-04 00:39:18 +0200  Mathieu Duponchelle <mathieu@centricular.com>
+
+       * gst-libs/gst/video/video-color.h:
+         video-color.h: fix comment syntax
+
+2020-06-26 12:22:08 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst-libs/gst/video/video-color.c:
+       * gst-libs/gst/video/video-color.h:
+       * gst-libs/gst/video/video-converter.c:
+       * gst/videoconvert/gstvideoconvert.c:
+         video-converter: Make fast path work for equivalent transfer functions
+         For example, BT709, BT601, and BT2020_10 all have theoretically
+         different transfer functions, but the same function in practice. In
+         these cases, we should use the fast path for negotiating. Also,
+         BT2020_12 is essentially the same as the other three, just with one more
+         decimal point, so it gives the same result for fewer bits. This is now
+         also aliased to the former three.
+         Also make videoconvert do passthrough if the caps have equivalent
+         transfer functions but are otherwise matching.
+         As of the previous commit, we write the correct transfer function for
+         BT601, instead of the (functionally identical but different ISO code)
+         transfer function for BT709. Files created using GStreamer prior to that
+         commit write the wrong transfer function for BT601 and are, strictly
+         speaking, 2:4:5:4 instead. However, this commit takes care of
+         negotiation, so that conversions from/to the same transfer function are
+         done using the fast path.
+         Fixes #783
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/724>
+
+2020-06-25 20:56:48 +0300  Vivia Nikolaidou <vivia@ahiru.eu>
+
+       * gst-libs/gst/video/video-color.c:
+       * gst-libs/gst/video/video-color.h:
+       * gst-libs/gst/video/video-info.c:
+       * tests/check/libs/video.c:
+         video-color: Add bt601 transfer function
+         Functionally the same as 709 but technically has a different value, and
+         external software (e.g. ffmpeg) finds "wrong" values produced by
+         GStreamer.
+         Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/724>
+
+2020-07-03 02:03:24 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * meson.build:
+         Back to development
+
 === release 1.17.2 ===
 
 2020-07-03 00:24:57 +0100  Tim-Philipp Müller <tim@centricular.com>
        * gst-libs/gst/fft/fft.h:
        * gst-libs/gst/fft/gstfft.h:
        * gst-libs/gst/pbutils/Makefile.am:
-       * gst-libs/gst/pbutils/gstpbutils.h:
        * gst-libs/gst/riff/Makefile.am:
        * gst-libs/gst/riff/riff.h:
        * gst-libs/gst/rtp/Makefile.am: