=== release 1.20.2 ===

2022-05-02 23:29:25 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-base.doap:
	* meson.build:
	  Release 1.20.2

2022-05-02 23:29:19 +0100  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	  Update ChangeLogs for 1.20.2

2022-04-27 10:18:39 +0100  Philippe Normand <philn@igalia.com>

	* gst-libs/gst/video/gstvideodecoder.c:
	  videodecoder: release stream lock after handling gap events
	  The stream lock is taken before handling gap events but was not released in all
	  possible runtime situations. This issue was introduced in:
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1274
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2326>

2022-04-28 15:32:27 +1000  Matthew Waters <matthew@centricular.com>

	* gst/subparse/samiparse.c:
	  subparse: don't deref a potentially NULL variable
	  If the html SAMI data is malformed, then retrieving the attribute name
	  may fail.  We then cannot retrieve the attribute value.
	  Fixes: https://oss-fuzz.com/testcase-detail/4700130671984640
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2325>

2022-04-27 09:22:40 +0200  Edward Hervey <edward@centricular.com>

	* gst/playback/gstparsebin.c:
	* tools/gst-play.c:
	  parsebin: Expose streams of unknown type
	  This actually respects the existing `expose-all-streams` property by exposing
	  them and having them present in the stream collection (as streams of type
	  unknown).
	  Fixes #1179
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2323>

2022-04-27 02:08:00 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* gst-libs/gst/rtp/gstrtpbasepayload.c:
	  rtpbasepayload: always store input buffer meta before negotiation
	  The decision to store the input buffer depends on whether extensions
	  are to be added to the output buffer, I assume as an optimization.
	  This creates an issue for subclasses that call negotiate(), where
	  header_exts is actually populated, from their handle_buffer()
	  implementation: at chain time, no header extension has been negotiated
	  yet, which means that we don't add extensions to the first batch of
	  buffers that comes out.
	  Keep track of whether negotiate has been called (this is different
	  from the negotiated field) and always store the input buffer until
	  then. This fixes the issue while largely preserving the optimization.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2321>

2022-04-26 10:58:08 +0200  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* gst/videorate/gstvideorate.c:
	  videorate: fix assertion when pushing last and only buffer without duration
	  Fixing this pipeline:
	  gst-launch-1.0 filesrc location=sample.png ! pngdec ! videorate ! fakesink
	  - videorate receives a single buffer with pts = 0, duration = invalid;
	  - then it receives eos triggering this buffer to be pushed downstream;
	  - the pushing code was assuming that a duration was set, which is
	  impossible as we received a single buffer and no output framerate was
	  set either. So the best we can do is to push the buffer without
	  duration.
	  Fix #1177
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2320>

2022-04-21 11:41:43 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/videorate/gstvideorate.c:
	  Revert "videorate: Update the base time on segment updates"
	  This reverts commit 75b4809ebc23814009bebc70c775ab44d85decf2.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2255>

2022-04-21 11:41:36 +0300  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/elements/videorate.c:
	  Revert "videorate: Add test for segment update"
	  This reverts commit a76f38b2c7ddbed546bb058c32ebcf8a553c003f.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2255>

2022-04-21 11:41:25 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/videorate/gstvideorate.c:
	* tests/check/elements/videorate.c:
	  Revert "videorate: Only "close" the segment if it is discontinous"
	  This reverts commit 6f7922b4dbba5ed780e7b0988669a81848a9e333.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2255>

2022-04-21 11:41:15 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/videorate/gstvideorate.c:
	  Revert "videorate: Drop incoming buffers that are outside of the segment"
	  This reverts commit 24fd80344dbc059b72e13d813ca82f414a9d6cce.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2255>

2022-04-21 11:40:47 +0300  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/elements/videorate.c:
	  Revert "videorate: Add unit test for closing a segment and opening a separate one"
	  This reverts commit 98f2a84a289ed4d4cfac9bc5c73182a56eefa99c.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2186
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2255>

2022-03-02 03:45:48 +1100  Jan Schmidt <jan@centricular.com>

	* gst/playback/gstplaybin3.c:
	  playbin3: Remove stale code
	  Remove now-unused get_stream_type_for_event() function.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2236>

2022-01-18 05:48:08 +1100  Jan Schmidt <jan@centricular.com>

	* gst/playback/gstplaybin3.c:
	  playbin3: Hold playbin lock on pad-added
	  Take the playbin lock when accessing the combiner
	  to add a new pad to link to. Fixes races against
	  streams-selected messages triggering reconfiguration.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2236>

2022-01-18 02:52:47 +1100  Jan Schmidt <jan@centricular.com>

	* gst/playback/gstplaybin3.c:
	  playbin3: Reconfigure on streams-selected message.
	  Don't reconfigure outputs when the select-streams
	  event is sent from the app, as the selection may
	  not take effect for some time. Instead, wait
	  for the pipeline to confirm the new set of
	  selected streams when it sends the message.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2236>

2021-11-11 03:20:23 +1100  Jan Schmidt <jan@centricular.com>

	* gst/playback/gstplaysink.c:
	  playsink: Fix reconfiguration after removing text_sink
	  If we previously had subtitles coming in, the video
	  may be chained through a text overlay block. Before,
	  the code would end up trying to link pads that were
	  already linked and video would not get reconnected
	  properly.
	  To fix that, make sure that the candidate
	  pads are actually unlinked first. If a textoverlay
	  is present and no longer needed, it will be cleaned
	  up later in the reconfiguration sequence.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2236>

2021-05-25 14:41:51 +0200  Guillaume Desmottes <guillaume.desmottes@collabora.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: fix collection leak
	  get_merged_collection() returns an owned stream collection and was
	  leaked in the else block.
	  Fix leak when running:
	  GST_TRACERS=leaks GST_DEBUG="GST_TRACER:7,leaks:6" gst-play-1.0 --use-playbin3 test.mkv
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2216>

2022-04-15 14:03:08 +0900  hoonhee.lee <hoonhee.lee@lge.com>

	* gst/playback/gstplaybin3.c:
	  playbin3: fix missing lock when unknown stream type in pad-removed cb
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2209>

2022-04-14 15:21:48 +0200  Edward Hervey <edward@centricular.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: Don't duplicate stream selections
	  Make sure that the requested stream selection isn't identical to the current
	  one. If that's the case, just carry on as usual.
	  This avoids multiple `streams-selected` posting ... when the selection didn't
	  change.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2208>

2022-04-15 19:55:34 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/rtp/gstrtpbasepayload.c:
	  rtpbasepayload: Don't write header extensions if there's no corresponding input buffer for the packet
	  The GstRTPHeaderExtension API requires the input buffer to exist.
	  This can happen if the output packet is generated e.g. from a caps or
	  tags event like in the case for rtpgstpay.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2205>

2022-04-12 01:01:23 +0900  Seungha Yang <seungha@centricular.com>

	* tools/gst-play.c:
	* tools/meson.build:
	  win32: Enable high-resolution timer for MinGW build
	  timeapi.h is missing in our MinGW toolchain. Include mmsystem.h
	  header instead, which defines struct and APIs in case of our MinGW
	  toolchain. Note that in case of native Windows10 SDK (MSVC build),
	  mmsystem.h will include timeapi.h
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2167>

2022-04-14 18:44:48 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst-libs/gst/app/gstappsrc.c:
	  appsrc: fix annotations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2189>

2022-04-12 15:23:08 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/rtp/gstrtpbasepayload.c:
	  Fix `transfer` gobject-introspection annotation typos
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2163>

2022-04-10 10:55:02 +1000  Matthew Waters <matthew@centricular.com>

	* gst/subparse/gstsubparseelement.c:
	  subparse: don't try to index string with -1
	  If the len of the string turns out to be 0, str[len - 1] resolved to
	  str[-1] which is not a good idea.
	  Fixes: https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=46543
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2148>

2022-04-08 11:10:49 +1000  Matthew Waters <matthew@centricular.com>

	* ext/ogg/gstoggstream.c:
	* ext/ogg/vorbis_parse.c:
	* ext/ogg/vorbis_parse.h:
	  ogg: fix possible buffer overrun
	  If an ogg stream does not match our expectations of how the end of a
	  buffer may be structured, it was possible to read memory past the end of
	  the buffer parsed by libogg.  Include a bounds check for this case and
	  stop parsing.
	  Fixes https://bugs.chromium.org/p/oss-fuzz/issues/detail?id=3930
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2138>

2022-04-08 01:52:32 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* gst-libs/gst/rtp/gstrtpbasepayload.c:
	  rtpbasepayload: fix transfer annotation for push and push_list
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2137>

2022-04-07 10:08:37 +0900  hoonhee.lee <hoonhee.lee@lge.com>

	* gst-libs/gst/riff/riff-media.c:
	  riff-media: fix memory leak after usage for g_strjoin
	  This leak is observed with valgrind.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2136>

2022-04-06 18:08:46 +0200  Bastian Krause <bst@pengutronix.de>

	* ext/gl/gstgltransformation.c:
	* ext/gl/gstgltransformation.h:
	  gltransformation: let graphene alloc its structures memory aligned
	  With NEON instructions enabled, graphene expects the memory passed to it
	  16-byte-aligned. Otherwise unaligned memory access faults occur causing
	  SIGBUS signals.
	  graphene has alloc functions for its structures that take care of this,
	  so use them.
	  See also: https://github.com/ebassi/graphene/issues/215#issuecomment-794744829
	  Suggested-by: Sebastian Dröge <sebastian@centricular.com>
	  Signed-off-by: Bastian Krause <bst@pengutronix.de>
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2128>

2022-04-04 10:46:24 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/app/gstappsrc.c:
	  appsrc: Clarify buffer ref semantics in signals
	  The documentation could be read to mean that the caller continuous to
	  'own' the buffer, and that there is some other mechanism to find out
	  when to unref it.
	  Clarify that "not taking ownership" here means "taking a reference",
	  and specify that you can unref it at any time after calling the
	  function.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2118>

2021-01-21 16:01:38 +0800  Zhao Zhili <quinkblack@foxmail.com>

	* tests/examples/gl/gtk/gstgtk.c:
	* tests/examples/playback/playback-test.c:
	  examples: fix build on macOS with gtk+-quartz-3.0
	  gdk_quartz_window_get_nsview is not declared in the header file now:
	  error: implicit declaration of function 'gdk_quartz_window_get_nsview'
	  is invalid in C99 [-Werror,-Wimplicit-function-declaration]
	  fixes #979
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2116>

2022-04-01 10:25:23 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/playback/gstplaybin2.c:
	* gst/playback/gstplaybin3.c:
	  playbin/playbin3: Allow setting a NULL URI
	  The URI is already initialized to NULL at the beginning and GstPlayer
	  was assuming that it is possible to set to NULL at a later time too.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1124
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2105>

2022-03-28 12:13:12 +0200  Edward Hervey <edward@centricular.com>

	* gst-libs/gst/pbutils/descriptions.c:
	  pbutils: Fix wmv screen detection
	  strncmp vs !strncmp :)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2076>

2022-03-16 10:31:56 +0000  Corentin Damman <c.damman@intopix.com>

	* gst/rawparse/gstrawvideoparse.c:
	  rawvideoparse: set format from caps in gst_raw_video_parse_set_config_from_caps
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2054>

2022-03-27 16:35:14 +1100  Matthew Waters <matthew@centricular.com>

	* ext/gl/gstglmixerbin.c:
	  glmixerbin: slightly better pad/element creation
	  Use the return value from gst_element_link_pads() and gst_bin_add()
	  Fixes:
	  ../ext/gl/gstglmixerbin.c:305:12: error: variable 'res' set but not used [-Werror,-Wunused-but-set-variable]
	  gboolean res = TRUE;
	  ^
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2053>

2022-03-18 20:43:24 +1100  Matthew Waters <matthew@centricular.com>

	* gst-libs/gst/pbutils/gstdiscoverer-types.c:
	  discoverer: chain up to parent finalize methods in all our types
	  Fixes a memory leak:
	  Direct leak of 32 byte(s) in 1 object(s) allocated from:
	  #0 0x5ac5cd in malloc /src/llvm-project/compiler-rt/lib/asan/asan_malloc_linux.cpp:129:3
	  #1 0x1007007 in g_malloc /work/glib-2.72.0/_builddir/../glib/gmem.c:125:13
	  #2 0xf82e82 in g_data_set_internal /work/glib-2.72.0/_builddir/../glib/gdataset.c:464:8
	  #3 0xf833f7 in g_datalist_id_set_data_full /work/glib-2.72.0/_builddir/../glib/gdataset.c:670:3
	  #4 0xef81be in g_object_notify_queue_freeze /work/glib-2.72.0/_builddir/../gobject/gobject.c:295:7
	  #5 0xef79c6 in g_object_unref /work/glib-2.72.0/_builddir/../gobject/gobject.c:3632:16
	  #6 0x5e58bf in LLVMFuzzerTestOneInput /src/gstreamer/ci/fuzzing/gst-discoverer.c:132:5
	  #7 0x4dd1a2 in fuzzer::Fuzzer::ExecuteCallback(unsigned char const*, unsigned long) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:611:15
	  #8 0x4dc98a in fuzzer::Fuzzer::RunOne(unsigned char const*, unsigned long, bool, fuzzer::InputInfo*, bool, bool*) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:514:3
	  #9 0x4de6c4 in fuzzer::Fuzzer::ReadAndExecuteSeedCorpora(std::__Fuzzer::vector<fuzzer::SizedFile, std::__Fuzzer::allocator<fuzzer::SizedFile> >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:809:5
	  #10 0x4dea29 in fuzzer::Fuzzer::Loop(std::__Fuzzer::vector<fuzzer::SizedFile, std::__Fuzzer::allocator<fuzzer::SizedFile> >&) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerLoop.cpp:857:3
	  #11 0x4ce4a0 in fuzzer::FuzzerDriver(int*, char***, int (*)(unsigned char const*, unsigned long)) /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerDriver.cpp:912:6
	  #12 0x4f6f52 in main /src/llvm-project/compiler-rt/lib/fuzzer/FuzzerMain.cpp:20:10
	  #13 0x7f1c709980b2 in __libc_start_main (/lib/x86_64-linux-gnu/libc.so.6+0x240b2)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1996>

2022-03-15 12:57:49 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/rtp/gstrtpbuffer.c:
	  rtpbuffer: The out args for rtp extension data are optional
	  The code checks that these are != NULL before dereferencing them.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1980>

2021-08-06 19:27:02 +1000  Jan Schmidt <jan@centricular.com>

	* gst/playback/gstplaysink.c:
	  playsink: Complete reconfiguration on pad release.
	  Requesting a new pad can start a reconfiguration cycle, where
	  playsink will block all input pads and wait for data on them
	  before doing internal reconfiguration. If a pad is released,
	  that reconfiguration might never trigger because it's now waiting
	  for a pad that doesn't exist any more.
	  In that case, complete the reconfiguration on pad release.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1940>

2022-03-14 14:48:01 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development

=== release 1.20.1 ===

2022-03-14 11:33:33 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* gst-plugins-base.doap:
	* meson.build:
	  Release 1.20.1

2022-03-14 11:33:25 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	  Update ChangeLogs for 1.20.1

2022-03-09 16:02:06 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/rtp/gstrtpbasepayload.c:
	* tests/check/libs/rtpbasepayload.c:
	  rtpbasepayload: Remove dead twcc code
	  This feature was removed in 7a53fbad68d702ca4905f7da223f4d2884548edc,
	  but this code was left behind.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1922>

2022-03-02 03:43:00 +1100  Jan Schmidt <jan@centricular.com>

	* gst/playback/gstplaybin3.c:
	  playbin3: Add lock to protect buffering messages
	  Fix a small race where a group can receive stream-start
	  and post a pending buffering message just as another
	  thread posts a different buffering message, causing them
	  to be received by the application out of order. In the
	  worst case, this leads the application receiving a
	  stale 99% buffering message and going back to buffering
	  right after the 100% buffering message.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1901>

2022-03-04 22:21:13 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/gl/gstgldisplay.c:
	  gldisplay: Reorder GST_GL_WINDOW check for egl-device
	  "egl-device" should be checked before the "egl", otherwise unexpected egl will be picked
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1862>

2022-02-21 10:49:15 +0100  Sebastian Fricke <sebastian.fricke@collabora.com>

	* gst-libs/gst/tag/licenses.c:
	  Remove the uninstalled term
	  Remove the symbolic link `gst-uninstalled` which points to `gst-env`.
	  The `uninstalled` is the old name and the project should stick to a
	  single name for the procedure.
	  Remove the term from all the files, exceptions are variables from
	  dependencies like `uninstalled_variables` from pkgconfig and
	  `meson-uninstalled`.
	  Adjust mentions of the script in the documentation and README.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1829>

2022-02-23 11:10:11 +0100  Sebastian Fricke <sebastian.fricke@collabora.com>

	* README.md:
	  Maintain build instructions at a single location
	  Do not maintain similar build instructions within each gst-plugins-*
	  subproject and the subproject/gstreamer subproject. Use the build
	  instructions from the mono-repository and link to them via hyperlink.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1829>

2022-01-22 01:30:57 +1100  Jan Schmidt <jan@centricular.com>

	* tools/gst-play.c:
	  gst-play: Fix trick-mode handling.
	  The instant-rate value in the TrickMode enum is a
	  flag, but the other values are not. Move instant-rate
	  to the end of the enum and give it a value large enough
	  for it to be used without modifying the trick-mode
	  setting.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1793>

2022-02-22 15:08:48 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst-libs/gst/video/gstvideoaggregator.c:
	  videoaggregator: Correct use of start_time/end_time
	  When 29713c5d changed most uses of `start_time` and `end_time` to
	  `start_running_time` and `end_running_time`, it missed two.
	  Fixes: 29713c5d40a1d7d1f21dada68f55f7a97f0b7025
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1038
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1782>

2022-02-22 10:54:23 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/rtp/gstrtpbasepayload.c:
	  rtpbasepayload: Copy all buffer metadata instead of just GstMetas for the input meta buffer
	  This gives RTP header extensions some more metadata to work from.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1777>

2022-02-20 14:05:05 +0100  Sebastian Groß <s3b.gr0ss@gmail.com>

	* gst-libs/gst/pbutils/gstaudiovisualizer.c:
	  audiovisualizer: shader: Fix dframe out of bound write
	  shader_fade_and_move_horiz_out writes a complete stride at the end of its
	  dframe data
	  This led to SIGSEGV since the stride reached into sframe->map[0]->memory
	  which could not be umpapped later on.
	  This is due to `d` is increased twice. Once at the end of the upper loop
	  and at the start of the lower loop.
	  The corresponding dframe stride is therefore skipped.
	  Rewind `d` and start at the correct position.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1702
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1765>

2022-02-19 01:58:20 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/gstvideoaggregator.c:
	  videoaggregator: Use floor() to calculate current position
	  ... instead of round(). Depending on framerate, calculated position
	  may not be clearly represented by using uint64, 30000/1001 for example.
	  Then the result of round() can be sliglhtly larger (1ns) than
	  buffer timestamp. And that will cause unnecessary frame delay.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1755>

2022-01-07 20:02:46 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/gstvideoaggregator.c:
	* tests/check/elements/compositor.c:
	  videoaggregator: Fix for unhandled negative rate
	  Nagative rates have been considered only in
	  gst_video_aggregator_advance_on_timeout(). Update other places
	  to fix broken reverse playback.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1714>

2021-08-25 20:18:20 +0900  Seungha Yang <seungha@centricular.com>

	* gst/typefind/gsttypefindfunctions.c:
	* tests/check/gst/typefindfunctions.c:
	  typefindfunctions: Fix WebVTT format detection
	  If WebVTT file consists of "WebVTT" header without body,
	  the file size can be smaller than 10 bytes.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1713>

2022-02-07 09:30:58 +0100  David Svensson Fors <davidsf@axis.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	  codec-utils: Avoid out-of-bounds error
	  For artificial input (in unit tests), all six bytes of
	  constraint_indicator_flags in hevc_caps_get_mime_codec() can be
	  zero. Add a guard against an out-of-bounds error that occurred in that
	  case. Change variables to signed int so comparison with -1 works.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1706>

2021-12-22 18:46:44 +0000  Thibault Saunier <tsaunier@igalia.com>

	* gst-libs/gst/video/navigation.h:
	  navigation: Fix Since marker for mouse scroll
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1703>

2022-02-03 01:04:40 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/video-color.c:
	  video-color: Fix for missing clipping in PQ EOTF function
	  * Add missing clipping in EOTF
	  * Use pre-calculated values
	  * Update variable names to specification's defined ones
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1700>

2022-02-07 16:17:28 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development

=== release 1.20.0 ===

2022-02-03 19:53:25 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* README:
	* RELEASE:
	* gst-plugins-base.doap:
	* meson.build:
	  Release 1.20.0

2022-02-03 19:53:18 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	  Update ChangeLogs for 1.20.0

2022-02-03 18:18:03 +0000  Tim-Philipp Müller <tim@centricular.com>

	* gst-libs/gst/video/meson.build:
	* gst-libs/gst/video/video.c:
	* gst-libs/gst/video/video.h:
	  video: fix up GstVideoOrientationMethod type registration
	  ... in order to make older g-i happy (~1.60) which doesn't like
	  freeform descriptions in the value_name field. Which in turn
	  then makes hotdoc happy instead of erroring out when we bump
	  the symbol index version.
	  We usually only (ab)use the name field for description strings
	  for private plugin enums, not for public API visible to bindings.
	  This lets glib-mkenum generate the _get_type() function for the
	  enum again, which in turn will generate the expected value names
	  to match the enums.
	  We might be able to add this back later once we can upgrade the
	  g-i version requirement (and the documentation job image).
	  This reverts most of commit b0aab48cdcf0a454d14aeb4d907209d8ee3f1add

2021-11-21 17:52:48 -0500  Jeremy Cline <jeremy@jcline.org>

	* gst-libs/gst/tag/gsttagdemux.c:
	  tagdemux: Fix crash when presented with malformed files
	  There's a race condition in gsttagdemux.c between typefinding and the
	  end-of-stream event. If TYPE_FIND_MAX_SIZE is exceeded,
	  demux->priv->collect is set to NULL and an error is returned. However,
	  the end-of-stream event causes one last attempt at typefinding to occur.
	  This leads to gst_tag_demux_trim_buffer() being called with the NULL
	  demux->priv->collect buffer which it attempts to dereference, resulting
	  in a segfault.
	  The malicious MP3 can be created by:
	  printf "\x49\x44\x33\x04\x00\x00\x00\x00\x00\x00%s", \
	  "$(dd if=/dev/urandom bs=1K count=200)" > malicious.mp3
	  This creates a valid ID3 header which gets us as far as typefinding. The
	  crash can then be reproduced with the following pipeline:
	  gst-launch-1.0 -e filesrc location=malicious.mp3 ! queue ! decodebin ! audioconvert ! vorbisenc ! oggmux ! filesink location=malicious.ogg
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/967
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1620>

2022-02-01 05:07:04 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* docs/meson.build:
	  docs: Add objc and objcpp files to hotdoc gst_c_sources
	  Hotdoc should be able to extract and parse comments out of these. Just
	  need to be careful to only add the glob in directories that actually
	  contain *.m (objc) and *.mm (objcpp) files.
	  Also fix some doc comments and remove redundant ones.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1614>

=== release 1.19.90 ===

2022-01-28 14:28:35 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* gst-plugins-base.doap:
	* meson.build:
	  Release 1.19.90

2022-01-28 14:28:28 +0000  Tim-Philipp Müller <tim@centricular.com>

	* ChangeLog:
	  Update ChangeLogs for 1.19.90

2022-01-27 14:22:26 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/rtp/gstrtphdrext.c:
	  rtphdrext: Return non-floating references from `gst_rtp_header_extension_create_from_uri()`
	  The header extension objects are never getting a parent object and using
	  floating references only complicates usage, especially via dynamic API
	  like signals.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1582>

2022-01-27 14:26:26 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/rtp/gstrtphdrext.c:
	  rtphdrext: Use `set_metadata()` instead of `set_static_metadata()`
	  The latter needs a static string.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1583>

2022-01-26 00:02:49 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst-libs/gst/audio/audio-info.c:
	* gst-libs/gst/audio/audio-info.h:
	* gst-libs/gst/video/video-info.c:
	* gst-libs/gst/video/video-info.h:
	  VideoInfo, AudioInfo: fix usage with python bindings
	  * Expose an actual constructor from caps
	  * Error out in overrides for code that was using the "manual
	  allocation" pattern which only worked by chance. Direct
	  the script writer to the new_from_caps constructor instead.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-python/-/issues/47
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1571>

2022-01-27 01:38:12 +0000  Tim-Philipp Müller <tim@centricular.com>

	* po/de.po:
	* po/fr.po:
	* po/ro.po:
	  gst-plugins-base: update translations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1579>

2022-01-24 12:26:25 +0200  Vivia Nikolaidou <vivia@ahiru.eu>

	* gst-libs/gst/audio/gstaudioaggregator.c:
	  audioaggregator: Return NOT_NEGOTIATED when the configuration is invalid
	  Otherwise we just end up outputting garbage.
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/957
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1558>

2022-01-26 11:12:34 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/video/gstvideoaggregator.h:
	  videoaggregator: Remove extra semicolon in macro usage
	  This is usually necessary to allow gst-indent to treat it as
	  a statement, but we do not run gst-indent on headers and we do not
	  have extra semicolons in other places that this macro is used in the
	  header. Fixes warnings when using the header:
	  ```
	  In file included from gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/video.h:185,
	  from XYZ:9001:
	  gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.h:206:78: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic]
	  206 | G_DEFINE_AUTOPTR_CLEANUP_FUNC(GstVideoAggregatorConvertPad, gst_object_unref);
	  |                                                                              ^
	  gstreamer/subprojects/gst-plugins-base/gst-libs/gst/video/gstvideoaggregator.h:214:181: warning: ISO C does not allow extra ‘;’ outside of a function [-Wpedantic]
	  214 | G_DECLARE_DERIVABLE_TYPE (GstVideoAggregatorParallelConvertPad, gst_video_aggregator_parallel_convert_pad, GST, VIDEO_AGGREGATOR_PARALLEL_CONVERT_PAD, GstVideoAggregatorConvertPad);
	  |                                                                                                                                                                                     ^
	  ```
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1572>

2022-01-24 12:57:10 +0200  Vivia Nikolaidou <vivia@ahiru.eu>

	* gst/audiotestsrc/gstaudiotestsrc.c:
	  audiotestsrc: Produce a default channel mask if possible
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/957
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1560>

2021-12-10 20:09:42 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/video-converter.c:
	  video-converter: Fix for broken gamma remap with high bitdepth YUV output
	  Scale down the matrix before calculating RGB -> YUV matrix
	  otherwise offset values will be wrong
	  Fixing pipeline
	  videotestsrc ! video/x-raw,format=ARGB ! videoconvert gamma-mode=remap ! \
	  video/x-raw,format=P010_10LE,colorimetry="bt2020"
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1432>

2022-01-23 13:38:37 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/video/gstvideodecoder.c:
	  videodecoder: Fix property description for new properties
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1556>

2022-01-19 02:42:35 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/playback/gstdecodebin2.c:
	  decodebin2: raise multiqueue max-size-bytes
	  The earlier size of 2 MB was set back in 2009, it doesn't
	  seem unreasonable to raise it to 8 MB these days. The use
	  case at hand is matroskademux containing both a video stream
	  with a very low amount of compression but no decoding latency,
	  and a H265 stream.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1538>

2021-12-27 03:35:29 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/gstvideodecoder.c:
	  Revert "videodecoder: Forward hdr-format info downstream"
	  This reverts commit 9b852181d8a1fa2fb1bf3ba898c6ffa04eea3fd4.
	  It's leftover commit which should've been reverted as a part of
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/1148
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1475>

2022-01-20 03:17:58 +0900  Seungha Yang <seungha@centricular.com>

	* tools/gst-play.c:
	* tools/meson.build:
	  tools: gst-play: Enable Windows high-resolution clock
	  Apply https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/817
	  to gst-play as well, especially for better high-framerate
	  (60fps or higher) video support, because
	  15ms default clock precision (actual value is system dependent)
	  is not sufficient for such scenario.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1541>

2022-01-15 19:03:33 +0100  Tomasz Andrzejak <andreiltd@gmail.com>

	* gst-libs/gst/sdp/gstsdpmessage.c:
	* tests/check/libs/sdp.c:
	  Add FEC SDP message test
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1527>

2022-01-15 17:02:52 +0100  Tomasz Andrzejak <andreiltd@gmail.com>

	* gst-libs/gst/sdp/gstsdpmessage.c:
	  sdpmessage: fix mapping single char fmtp params
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1527>

2022-01-19 11:05:26 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	  codec-utils: Mark various string return values as `nullable`
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1539>

2022-01-18 23:17:49 +0000  Tim-Philipp Müller <tim@centricular.com>

	* gst-libs/gst/rtp/gstrtphdrext.h:
	  rtphdrext: increase GstRTPHeaderExtensionClass padding to LARGE
	  https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/merge_requests/748#note_1223253
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1537>

2022-01-15 10:06:23 +0000  Philippe Normand <philn@igalia.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	* gst-libs/gst/pbutils/encoding-profile.c:
	* gst-libs/gst/pbutils/encoding-target.c:
	* gst-libs/gst/pbutils/install-plugins.c:
	* gst-libs/gst/pbutils/missing-plugins.c:
	* gst-libs/gst/pbutils/pbutils.c:
	  pbutils: Define one debug category per module
	  Follow-up of https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1526>

2022-01-07 18:25:00 +0900  Seungha Yang <seungha@centricular.com>

	* gst/compositor/compositor.c:
	  compositor: Always draw if all input buffers are GAP
	  Otherwise output buffers will contain random scene
	  (previously rendered or arbitrary initial values) since we don't
	  draw onto output buffer at all.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1498>

2022-01-06 22:10:18 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/gstvideoaggregator.c:
	  videoaggregator: Don't pass GAP buffer to prepare_frame_start()
	  Likewise we do check the same condition in prepare_frames_finish(),
	  ignore GAP buffer (zero size with GST_BUFFER_FLAG_GAP flag) without
	  any further processing.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1498>

2022-01-13 23:00:41 +0900  Seungha Yang <seungha@centricular.com>

	* gst/playback/gsturidecodebin.c:
	  uridecodebin: Fix critical warnings
	  Don't pass non-GstObject object to there.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1519>

2022-01-09 09:39:32 +0000  Philippe Normand <philn@igalia.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	  pbutils: Simplify h264_caps_structure_get_profile_flags_level a bit
	  Refactoring, removing one level of indentation from the function.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505>

2022-01-08 14:57:00 +0000  Philippe Normand <philn@igalia.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	* tests/check/libs/pbutils.c:
	  pbutils: H.265 support for gst_codec_utils_caps_get_mime_codec()
	  The codec_data caps payload is parsed and a MIME codec string is generated
	  according to the ISO/IEC 14496-15 specification.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505>

2022-01-08 14:56:06 +0000  Philippe Normand <philn@igalia.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	* gst-libs/gst/pbutils/encoding-profile.c:
	* gst-libs/gst/pbutils/encoding-target.c:
	* gst-libs/gst/pbutils/pbutils.c:
	* tests/check/libs/pbutils.c:
	* tests/check/libs/profile.c:
	  pbutils: Add a pbutils debug category
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1505>

2022-01-07 14:17:46 +0200  Jordan Petridis <jordan@centricular.com>

	  gstglutils: introspection annotations fixups
	  * gst_gl_ensure_element_data: specify the type for the element arg
	  * gst_gl_handle_set_context: correctly annotate the display and
	  gl_ctx as just (out) instead of (inout)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1501>

2022-01-09 14:07:12 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	  codec-utils: Use nullable annotation instead of allow-none for various Opus functions
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1506>

2022-01-09 14:05:48 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	  codec-utils: Annotate out parameters for Opus functions as (optional)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1506>

2022-01-09 14:05:11 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	  codec-utils: Add missing annotations to gst_codec_utils_h264_get_profile_flags_level()
	  And fix some minor typos.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1506>

2022-01-05 02:07:59 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* docs/meson.build:
	* meson.build:
	  meson: Add explicit check: kwarg to all run_command() calls
	  This is required since Meson 0.61.0, and causes a warning to be
	  emitted otherwise:
	  https://github.com/mesonbuild/meson/commit/2c079d855ed87488bdcc6c5c06f59abdb9b85b6c
	  https://github.com/mesonbuild/meson/issues/9300
	  This exposed a bunch of places where we had broken run_command()
	  calls, unnecessary run_command() calls, and places where check: true
	  should be used.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1507>

2021-12-20 21:43:25 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/audio/gstaudioaggregator.c:
	* gst/audioresample/gstaudioresample.c:
	  audio: Add logging that was useful in figuring out the last commit
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1461>

2021-12-20 21:37:18 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/audio/audio-converter.c:
	* gst-libs/gst/audio/audio-resampler.c:
	  audio-converter: Fix resampling when there's nothing to output
	  Sometimes we can't output anything because we don't have enough
	  incoming frames. In that case, the resampler was trying to call
	  do_quantize() and do_resample() in a loop forever because there would
	  never be samples to output (so chain->samples would always be NULL).
	  Fix this by not calling chain->make_func() in a loop -- seems
	  completely unnecessary since calling it over and over won't change
	  anything if the make_func() can't output samples.
	  Also add some checks for the input and / or output being NULL when
	  doing conversion or quantization. This will happen when we have
	  nothing to output.
	  We can't bail early, because we need resampler->samples_avail to be
	  updated in gst_audio_resampler_resample(), so we must call that and
	  no-op everything along the way.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1461>

2021-12-16 16:43:37 +0100  Mark Nauwelaerts <mnauw@users.sourceforge.net>

	* gst/playback/gsturidecodebin.c:
	  uridecodebin: use non-floating object as signal argument
	  ... as was the case with source-setup signal until change of order
	  in commit 52bca104e447309898ca8904b3914211ec7d4114
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1457>

2021-12-13 16:19:44 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/video-info.c:
	  video-info: Don't assume colorimetry of UHD resolution as BT.2020
	  BT.2020 color primaries are designed to cover much wider range of
	  CIE chromaticity than BT.709, and also it's used for both SDR and HDR
	  contents. So, the incorrect assumption (i.e., BT.709 as a BT.2020)
	  is risky and resulting image color tends to be visually very wrong.
	  Unless there's obvious clue, don't consider color space of high resolution
	  video stream as BT.2020
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1445>

2021-12-03 01:45:49 +0000  Thibault Saunier <tsaunier@igalia.com>

	* gst-libs/gst/meson.build:
	* gst-libs/gst/sdp/gstsdpmessage.c:
	* gst-libs/gst/sdp/meson.build:
	* tests/check/libs/sdp.c:
	  sdp: Handle level-asymmetry-allowed for H264 streams
	  The ["level-asymmetry-allowed"] field states that the peer wants the
	  profile specified in the "profile-level-id" fields but doesn't care
	  about the level. To express this in GStreamer caps term, we add a
	  "profile" field in the caps, which reuses the usual "profile" semantics
	  for H.264 streams and, and remove "profile-level-id" and
	  "level-asymmetry-allowed" fields.
	  ["level-asymmetry-allowed"]: https://www.iana.org/assignments/media-types/video/H264
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1410>

2021-11-19 00:09:03 +0100  Thomas Klausner <tk@giga.or.at>

	* gst/tcp/gstmultifdsink.c:
	  tcp: fix build on Solaris
	  Add missing header.
	  From Claes Nästén via http://gnats.netbsd.org/56509
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1364>

2021-11-16 13:14:25 +0100  Víctor Manuel Jáquez Leal <vjaquez@igalia.com>

	* gst/playback/gsturidecodebin3.c:
	  uridecodebin3: Nullify current item after all play items are freed.
	  There's a potential race condition with this sort of pipelines on
	  certain systems (depends on the processing load):
	  GST_DEBUG_DUMP_DOT_DIR=/tmp \
	  gst-launch-1.0 uridecodebin3 uri=file://stream.mp4 ! glupload ! \
	  glimagesink --gst-debug=*:4
	  Right after the pipeline passes from PAUSED to READY, bin_to_dot_file
	  dumps uridecodebin3 properties, but current uri and suburi might be
	  already freed, causing a potential use-after-freed.
	  This patch makes NULL the current item right after all the play items
	  are freed.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1353>

2021-11-12 18:26:58 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/audio/audio-resampler.c:
	  audio-resampler: Fix segfault when we can't output any frames
	  Sometimes the resampler has enough space to store all the incoming
	  samples without outputting anything. When this happens,
	  gst_audio_resampler_get_out_frames() returns 0.
	  In that case, the resampler should consume samples and just return.
	  Otherwise, we get a segfault when gst_audio_resampler_resample() tries
	  to resample into a NULL 'out' pointer.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1343>

2021-11-11 19:11:25 +0000  Tim-Philipp Müller <tim@centricular.com>

	* gst-libs/gst/pbutils/gstpluginsbaseversion.c:
	* gst-libs/gst/pbutils/install-plugins.c:
	* gst-libs/gst/video/video-frame.c:
	* gst-libs/gst/video/videooverlay.c:
	  docs: fix unnecessary ampersand, < and > escaping in code blocks
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1340>

2021-11-09 12:10:50 +0000  Jiri Uncovsky <jiri.uncovsky@amit.cz>

	* gst-libs/gst/gl/egl/gstglcontext_egl.c:
	  glcontext/egl: add missing unref
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1328>

2021-11-09 12:01:13 +0100  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* gst-libs/gst/app/gstappsrc.c:
	  appsrc: log when segment changes
	  We were logging when it does not change but not when it does, which is
	  confusing when reading logs.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1327>

2021-11-03 18:44:03 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development

