=== release 1.20.1 ===

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

	* NEWS:
	* RELEASE:
	* docs/gst_plugins_cache.json:
	* gst-plugins-good.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-02-22 10:13:28 +0100  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* gst/rtpmanager/rtpsource.c:
	  rtpsource: fix rtp_source_get_nack_deadlines doc
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1950>

2022-01-14 23:42:27 -0600  Tim Mooney <Tim.Mooney@ndsu.edu>

	* sys/v4l2/ext/types-compat.h:
	  v4l2: include <sys/ioccom.h> on Illumos
	  Needed for _IOR/_IORW
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1947>

2022-03-03 13:47:05 +0800  Hou Qi <qi.hou@nxp.com>

	* sys/v4l2/gstv4l2bufferpool.c:
	  v4l2bufferpool: Fix race condition between qbuf and pool streamoff
	  There is a chance that pool->buffers[index] sets BUFFER_STATE_QUEUED, but
	  it has not been queued yet which makes pool->buffers[index] still NULL.
	  At this time, if pool_streamff release all buffers with BUFFER_STATE_QUEUED
	  state regardless of whether the buffer is NULL or not, it will cause segfault.
	  To fix this, also check buffer when streamoff release buffer.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1948>

2022-03-11 10:32:42 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/deinterlace/tvtime/scalerbob.c:
	  deinterlace: scalerbob: Reduce latency to 0
	  We only need the current field, just like `linear`.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1944>

2022-03-12 17:13:48 +0200  Vivia Nikolaidou <vivia@ahiru.eu>

	* gst/deinterlace/yadif.c:
	  yadif: Fix CHECK macro for YUY2 format
	  Used to make comb artifacts for videotestsrc pattern=ball for YUY2
	  format only (not AYUV).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1943>

2022-03-10 18:43:45 +0900  Sangchul Lee <sc11.lee@samsung.com>

	* gst/rtp/gstrtpvp8depay.c:
	  rtpvp8depay: Fix crash when making 'GstRTPPacketLost' custom event
	  This patch fixes a seg.fault in gst_structure_new() with warnings as below.
	  GLib-GObject-WARNING **:
	  ../gobject/gtype.c:4330: type id '0' is invalid
	  GLib-GObject-WARNING **:
	  can't peek value table for type '<invalid>' which is not currently referenced
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1920>

2022-03-09 12:17:11 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* ext/soup/gstsouploader.c:
	  soup: Load the runtime library, not the development library
	  libsoup-2.4.so / libsoup-3.0.so are symlinks installed by development
	  packages, they are not available at runtime.
	  Also eliminate G_MODULE_SUFFIX since it's not useful for us, and is
	  actually incorrect on macOS anyway.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1071
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1907>

2021-02-08 21:40:19 +0100  Havard Graff <havard@pexip.com>

	* gst/rtpmanager/gstrtprtxreceive.c:
	* gst/rtpmanager/gstrtprtxreceive.h:
	* gst/rtpmanager/gstrtprtxsend.c:
	* gst/rtpmanager/gstrtprtxsend.h:
	  rtprtx: don't access type-system per buffer
	  When doing only a single stream of audio/video this hardly matters,
	  but when doing many at the same time, the fact that you have to get
	  a hold of the glib global type-system lock every time you process a buffer,
	  means that there is a limit to how many streams you can process in
	  parallel.
	  Luckily the fix is very simple, by doing a cast rather than a full
	  type-check.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1890>

2020-02-10 14:37:30 +0100  Havard Graff <havard@pexip.com>

	* tests/check/elements/rtprtx.c:
	  rtprtx: signed/unsigned and style fixes
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1888>

2022-03-04 15:36:20 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/deinterlace/gstdeinterlace.c:
	  deinterlace: Prevent race between _set_method and latency query
	  It's possible that the method is being manipulated while downstream
	  queries our latency, leading to crashes.
	  Prevent that from happening.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1859>

2022-03-03 23:04:36 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* ext/soup/gstsouploader.c:
	  soup: Fix static build with MSVC
	  ../ext/soup/gstsouploader.c(818): error C4098: '_soup_session_send_async': 'void' function returning a value
	  It's technically a false warning, but that's how MSVC works, so fix
	  it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1846>

2022-03-03 00:37:57 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* ext/soup/meson.build:
	  soup: Fix pkgconfig generation and documentation
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1846>

2022-03-02 23:22:39 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* ext/soup/meson.build:
	  soup: Fix static build when default_library=both
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1007
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1846>

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

	* ext/soup/meson.build:
	  soup: Don't error out in static build unless option is enabled
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1846>

2022-02-27 15:45:01 +0100  Philippe Normand <philn@igalia.com>

	* ext/soup/gstsouploader.c:
	  soup: Lookup libsoup dylib files on Apple platforms
	  Fixes #1007
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1846>

2022-03-01 20:59:30 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/matroska/matroska-mux.c:
	  matroska-mux: Handle pixel-aspect-ratio caps field correctly when checking caps equality
	  Not having this field is equivalent with it being 1/1 so consider
	  it like that. The generic caps functions are not aware of these
	  semantics and would consider the caps different, causing a negotiation
	  failure when caps are changing from caps with to caps without or the
	  other way around.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1833>

2022-03-01 20:56:43 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/matroska/matroska-mux.c:
	  matroska-mux: Handle multiview-mode/flags caps fields correctly when checking caps equality
	  Not having these fields is equivalent with them being mono/0 so consider
	  them like that. The generic caps functions are not aware of these
	  semantics and would consider the caps different, causing a negotiation
	  failure when caps are changing from caps with to caps without or the
	  other way around.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1833>

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-03-01 00:12:56 +0200  Vivia Nikolaidou <vivia@ahiru.eu>

	* gst/deinterlace/x86/yadif.asm:
	  yadif.asm: Fix improper usage of LOAD macro
	  LOAD macro relies in m7 being zero for interleaving purposes. Using LOAD
	  on the m7 register makes it interleave with its new content instead of
	  with 0.
	  The effect of this bug was bobbing on some static lines that appeared
	  over fast-moving content.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1823>

2022-03-01 00:12:33 +0200  Vivia Nikolaidou <vivia@ahiru.eu>

	* gst/deinterlace/x86/yadif.asm:
	  yadif.asm: Typo fixes in comments
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1823>

2022-02-28 20:39:11 +0200  Vivia Nikolaidou <vivia@ahiru.eu>

	* gst/deinterlace/yadif.c:
	  yadif: Fix bug in C implementation of CHECK
	  It was different compared to the corresponding part in both ffmpeg and
	  the asm implementation. Fixing this makes videotestsrc pattern=spokes
	  not jump at all when not using the asm optimisations.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1823>

2021-12-06 12:49:18 -0500  Joseph Donofry <rubberduckie3554@gmail.com>

	* sys/osxaudio/gstosxaudiodeviceprovider.c:
	  osxaudiosrc: Support a device as both input and output
	  osxaudiodeviceprovider now probes devices more than once to determine
	  if the device can function as both an input AND and output device.
	  Previously, if the device provider detected that a device had any output
	  capabilities, it was treated solely as an Audio/Sink.  This causes issues
	  that have both input and output capabilities (for example, USB interfaces
	  for professional audio have both input and output channels).  Such devices
	  are now listed as both an Audio/Sink as well as an Audio/Source.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1809>

2022-02-24 20:28:23 +0530  Sanchayan Maity <sanchayan@asymptotic.io>

	* docs/gst_plugins_cache.json:
	* gst/rtp/gstrtpldacpay.c:
	* gst/rtp/gstrtpldacpay.h:
	  rtp: ldac: Set frame count information in payload
	  The RTP payload seems to be required as it carries the frame count
	  information. Also, gst_rtp_base_payload_allocate_output_buffer had
	  the second argument incorrect.
	  Strangely some devices like Shanling MP4 and Sony XM3 would still
	  work without this while some like the Sony XM4 do not.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1804>

2022-02-25 12:44:26 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/deinterlace/tvtime/greedyh.c:
	  deinterlace: greedyh: Stop adding 2 to cur_field_idx
	  Just a simplification.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1799>

2022-02-24 17:36:40 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/deinterlace/tvtime/greedyh.c:
	  deinterlace: greedyh: Use _plane in _packed, fix planar formats
	  This greatly reduces code duplication. It also exposed the cause for
	  planar formats not being properly deinterlaced:
	  The planar path was missing the initial offset adjustment that the
	  packed path did to `L2` and `L2P` in the case of an even field, which
	  caused it to select the wrong weave lines every other field.
	  Add those offsets in `_plane`.
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1047
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1799>

2022-02-25 12:39:31 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/deinterlace/tvtime/greedyh.c:
	  deinterlace: greedyh: Rename _planar_plane to _plane
	  As well as `i` to `plane`.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1799>

2022-02-25 12:36:17 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/deinterlace/tvtime/greedyh.c:
	  deinterlace: greedyh: Move code from _planar into _planar_plane
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1799>

2022-02-25 12:30:21 +0100  Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>

	* gst/deinterlace/tvtime/greedyh.c:
	  deinterlace: greedyh: Move _planar_plane upwards
	  In preparation of refactoring. No functional change.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1799>

2022-02-18 15:23:13 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst/matroska/matroska-demux.c:
	  matroska-demux: Emit a warning when no codec data found
	  It is bad if an mkv file does not have codec data for the ProRes
	  variant, so we should emit a warning. ffmpeg does the same thing.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1766>

2022-02-21 13:27:06 +1100  Matthew Waters <matthew@centricular.com>

	* gst/rtp/gstrtpulpfecenc.c:
	  ulpfecenc: slightly safer dispose impl
	  Technically dispose can be called more than once (even if gstelement is
	  not actually set up to do that) so need to protect against that.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1767>

2022-02-21 13:24:07 +1100  Matthew Waters <matthew@centricular.com>

	* gst/rtp/gstrtpulpfecenc.c:
	  ulpfecenc: fix unmatched free() call
	  One must always match a g_slice_new with a g_slice_free and a g_new with
	  a g_free.  This was not the case for the internal ctx struct.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1767>

2021-11-09 17:37:24 +1100  Matthew Waters <matthew@centricular.com>

	* gst/rtp/gstrtpulpfecenc.c:
	  rtpulpfecenc: add some debug logging
	  Like, what configuration we are using or whether a fec packet is
	  generated.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1767>

2022-02-02 12:49:29 +0100  Rouven Czerwinski <rouven@czerwinskis.de>

	* sys/v4l2/gstv4l2tuner.c:
	  gstv4l2tuner: return NULL if no norm set
	  If the video4linux device supports norms but has no norm set, norm is
	  returned as an uninitialized variable after the ioctl call, leading to
	  gst_v4l2_tuner_get_norm_by_std_id() returning a random norm from the
	  supported norms. Catch this case and instead return NULL to indicate
	  that no norm is setup.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1758>

2022-02-17 17:36:22 +0100  Sebastian Wick <sebastian.wick@redhat.com>

	* gst/matroska/matroska-demux.c:
	  matroska: default prores fourcc apcn
	  If there is no codec private data for prores it should default to Apple
	  ProRes 422 Standard Definition (apcn). Can be tested with
	  strobe_scientist.mkv from
	  https://developers.google.com/media/vp9/hdr-encoding
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1753>

2021-04-08 12:18:09 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/gstqtmux.c:
	  qtmux: Don't post an error message if pushing a sample failed with FLUSHING
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1732>

2022-02-11 23:55:57 +0100  Marek Vasut <marex@denx.de>

	* ext/jpeg/gstjpegdec.c:
	  jpegdec: Pull row_stride from GST_VIDEO_FRAME_PLANE_STRIDE()
	  The libjpeg-turbo internal state might not be correctly initialized for
	  the first frame in a stream, pull the frame stride from gstreamer frame
	  metadata instead, which is correct even for the first frame, and which
	  makes this code consistent with the surrounding lines.
	  Fixes: e6d83d8f96 ("jpegdec: Support libjpeg-turbo colorspace conversion")
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1716>

2022-02-11 23:44:24 +0100  Marek Vasut <marex@denx.de>

	* ext/jpeg/gstjpegdec.c:
	  jpegdec: Call gst_jpeg_turbo_parse_ext_fmt_convert() before jpeg_start_decompress()
	  It is imperative that the libjpeg-turbo state is properly initialized
	  before jpeg_start_decompress() is called. Make sure cinfo.out_color_space
	  and cinfo.raw_data_out are set to their final values matching their peer
	  caps before calling jpeg_start_decompress().
	  Fixes: e6d83d8f96 ("jpegdec: Support libjpeg-turbo colorspace conversion")
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1716>

2022-02-11 23:44:20 +0100  Marek Vasut <marex@denx.de>

	* ext/jpeg/gstjpegdec.c:
	  jpegdec: Factor out gst_jpeg_turbo_parse_ext_fmt_convert()
	  Pull out peer caps checking code into gst_jpeg_turbo_parse_ext_fmt_convert().
	  This code is used by libjpeg-turbo extras to determine whether peer is capable
	  of handling buffers into which libjpeg-turbo can directly decode data. This
	  kind of check must be performed before jpeg_start_decompress() is called in
	  gst_jpeg_dec_prepare_decode() as well as in gst_jpeg_dec_negotiate(), hence
	  the common code.
	  This commit does modify the code a little to make it easier to call from both
	  call sites without much duplication, hence the extra `if (*clrspc)` test.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1716>

2022-02-11 23:29:27 +0100  Marek Vasut <marex@denx.de>

	* ext/jpeg/gstjpegdec.c:
	  Revert "jpegdec: only allow conversions from RGB"
	  This reverts commit 2aa2477208c029b0e1b8232d69f4f99a3bf1d473.
	  The commit is completely wrong, libjpeg-turbo is perfectly capable
	  of decoding I420 (YUV) to RGB. The test case provided alongside the
	  aforementioned commit passes without this revert because it decodes
	  image of JCS_YCrCb color space, so the new `if (clrspc == JCS_RGB)`
	  condition is false on that image, and the libjpeg-turbo decoding
	  does not get used. The real bug is hidden by that commit.
	  The real problem is in the call order of gst_jpeg_dec_prepare_decode()
	  and gst_jpeg_dec_negotiate(). The gst_jpeg_dec_prepare_decode() calls
	  jpeg_start_decompress() which sets up internal state of the libjpeg,
	  however, neither cinfo.out_color_space nor cinfo.raw_data_out are
	  set correctly yet. Those two are set up in gst_jpeg_dec_negotiate()
	  which is called a bit later. Therefore, the real fix is the set up
	  cinfo.out_color_space and cinfo.raw_data_out before calling
	  jpeg_start_decompress(). This is however a separate patch.
	  Fixes: 2aa2477208 ("jpegdec: only allow conversions from RGB")
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1716>

2022-02-11 21:35:54 +0100  Heiko Becker <heirecka@exherbo.org>

	* ext/lame/meson.build:
	  meson: Don't build lame plugin with -Dlame=disabled
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1720>

2022-02-01 14:28:24 +0100  Bastien Nocera <hadess@hadess.net>

	* ext/gtk/gtkgstglwidget.c:
	  gtk: Fix rotation not being applied when paused
	  The video wouldn't be redrawn immediately when a rotation was applied
	  but the pipeline was paused, as no new buffers were scheduled to be
	  displayed.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1710>

2022-02-01 14:26:02 +0100  Bastien Nocera <hadess@hadess.net>

	* ext/gtk/gtkgstbasewidget.c:
	* ext/gtk/gtkgstbasewidget.h:
	  gtk: Add a way to queue redrawing the base GTK widget
	  This will be used to request a redraw of the GTK widget should the
	  display be changed using properties not directly handled by the base GTK
	  widget, but by one of its descendants.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1710>

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

	* docs/gst_plugins_cache.json:
	* 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:
	* docs/gst_plugins_cache.json:
	* gst-plugins-good.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-01 05:07:04 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* docs/meson.build:
	* sys/osxvideo/osxvideosink.m:
	  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>

2022-01-30 19:06:29 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* sys/osxaudio/gstosxaudiosink.c:
	* sys/osxaudio/gstosxaudiosrc.c:
	* sys/osxvideo/osxvideosink.m:
	  docs: Rename "OS X" to "macOS" in some documentation
	  No one uses the term "Mac OS X" anymore, it's "macOS". "OS X" is even
	  worse, because people will usually start the search with "mac".
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1607>

2022-01-30 03:56:14 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* docs/gst_plugins_cache.json:
	* sys/osxaudio/gstosxaudioelement.c:
	  osxaudio: Document GstOsxAudioElement interface
	  This is listed as a public interface implemented by osxaudio, so we
	  need to mark it as a plugin API so that it's listed in the
	  documentation correctly.
	  This is an ancient symbol, so add it to the symbol index too.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1601>

2022-01-28 23:15:28 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* docs/gst_plugins_cache.json:
	  applemedia: Document vtenc / vtdec elements
	  Also preserve-alpha property should only be exposed on the
	  vtenc_prores element since h264 does not support transparency.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-docs/-/issues/94
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1601>

2022-01-29 12:56:22 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouputils.c:
	  soup: Don't store a strong reference to the logging object
	  Otherwise this causes a reference cycle between the session, the logger
	  and the logging object (i.e. the sink element or session wrapper).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1603>

2022-01-29 12:55:30 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: Always abort the session once its last user is gone
	  And wait until there are no pending GSources on the main context anymore
	  afterwards.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1603>

2022-01-29 12:54:23 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: Post context message after setting up the context from the source's thread
	  This simplifies the code and especially the locking a bit, and makes
	  sure we only export the session after it is fully set up.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1603>

=== release 1.19.90 ===

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

	* ChangeLog:
	* NEWS:
	* RELEASE:
	* docs/gst_plugins_cache.json:
	* gst-plugins-good.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-28 15:47:44 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpclientsink.c:
	  souphttpsink: Protect against spurious wakeups during startup
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1594>

2022-01-28 15:33:04 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpclientsink.c:
	* ext/soup/gstsouphttpsrc.c:
	* ext/soup/gstsouputils.c:
	* ext/soup/gstsouputils.h:
	  souphttpsrc: Don't use the source element after setup from the session thread
	  The source element might be gone already if the session is shared with
	  other source elements.
	  As a consequence, do all logging via the session object instead of using
	  the source element.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1594>

2022-01-28 15:31:55 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: Don't abort all pending operations on the session if shutting down a source with a shared session
	  Only do it for a non-shared session. Other sources would otherwise get
	  their requests cancelled unexpectedly.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1594>

2022-01-28 15:31:25 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: Don't set boolean to FALSE right after checking that it is FALSE
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1594>

2022-01-28 15:30:56 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/soup/gstsouphttpsrc.c:
	  souphttpsrc: soup_session_new_with_options() can't fail with NULL
	  So don't check for it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1594>

2022-01-27 16:28:48 +0100  Stéphane Cerveau <scerveau@collabora.com>

	* gst/autodetect/gstautodetect.h:
	  autodetect: fix debug init category
	  Since the split of elements, the debug category
	  was default for autodetect.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1590>

2022-01-21 16:09:30 +0100  Daniel Kolesa <dkolesa@igalia.com>

	* ext/soup/gstsouphttpsrc.c:
	* ext/soup/gstsouphttpsrc.h:
	* ext/soup/gstsouploader.c:
	* ext/soup/gstsouploader.h:
	  soup: move libsoup session into its own thread
	  Starting with libsoup3, there is no attempt to handle thread safety
	  inside the library, and it was never considered fully safe before
	  either. Therefore, move all session handling into its own thread.
	  The libsoup thread has its own context and main loop. When some
	  request is made or a response needs to be read, an idle source
	  is created to issue that; the gstreamer thread issuing that waits
	  for that to be complete. There is a per-src condition variable to
	  deal with that.
	  Since the thread/loop needs to be longer-lived than the soup
	  session itself, a wrapper object is provided to contain them. The
	  soup session only has a single reference, owned by the wrapper
	  object.
	  It is no longer possible to force an external session, since this
	  does not seem to be used anywhere within gstreamer and would be
	  tricky to implement; this is because one would not have to provide
	  just a session, but also the complete thread arrangement made in
	  the same way as the system currently does internally, in order to
	  be safe.
	  Messages are still built gstreamer-side. It is safe to do so until
	  the message is sent on the session. Headers are also processed on
	  the gstreamer side, which should likewise be safe.
	  All requests as well as reads on the libsoup thread are issued
	  asynchronously. That allows libsoup to schedule things with as
	  little blocking as possible, and means that concurrent access
	  to the session is possible, when sharing the session.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/947
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1555>

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

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

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

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: Fix critical while serializing timeout element message
	  The "cause" field wasn't registered as a GEnumValue, so do that.
	  Fixes this critical in gst_structure_to_string():
	  `gst_value_serialize: assertion 'G_IS_VALUE (value)' failed`
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1573>

2022-01-24 10:45:33 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/multifile/gstsplitmuxsink.c:
	  splitmuxsink: Warn when calculating the next fragment time in timecode mode fails
	  But only if timecode mode is enabled as it will fail all the time
	  otherwise.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1557>

2022-01-25 15:05:47 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* tests/examples/qt/qmlsink-multisink/videoitem/videoitem.cpp:
	  qt: Retain compatibility with Qt 5.9
	  QSharedPointer.get() was added in Qt 5.11, and it does the same thing
	  as .data()
	  https://doc.qt.io/qt-5/qsharedpointer.html#get
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/867
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1565>

2022-01-21 14:13:12 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/ext/types-compat.h:
	* sys/v4l2/ext/v4l2-common.h:
	* sys/v4l2/ext/v4l2-controls.h:
	* sys/v4l2/ext/videodev2.h:
	  video4linux2: Sync kernel headers against 5.16.0
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/965>

2022-01-17 11:44:47 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2videodec.c:
	  v4l2videdec: Fix race condition between drain and state changes
	  This is due to an unsafe usage of the pad task. We didn't ensure proper
	  ownership of the task. That race involved the task being released too early,
	  and was detected, luckily, by the glib mutex implementationt that
	  reported the mutex being disposed while being locked.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1478>

2022-01-16 14:41:41 +0000  Philippe Normand <philn@igalia.com>

	* ext/soup/gstsoup.c:
	* ext/soup/gstsouploader.c:
	* ext/soup/gstsouploader.h:
	* ext/soup/gstsouputils.h:
	* ext/soup/meson.build:
	  soup: Reintroduce compile-time libsoup dependency for static builds
	  On Android (especially) and for static builds in general it is safer to link
	  against libsoup and have the dynamic custom loading disabled. For those cases we
	  can safely assume the application will use either libsoup2 or libsoup3 and not
	  both.
	  Fixes #939
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1536>

2022-01-16 14:40:11 +0000  Philippe Normand <philn@igalia.com>

	* ext/soup/gstsoupelement.c:
	  soup: Initialize debug category before use
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1536>

2022-01-16 14:39:42 +0000  Philippe Normand <philn@igalia.com>

	* ext/soup/gstsouploader.c:
	  soup: Fix return types for a couple VTable functions
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1536>

2022-01-14 19:53:29 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* ext/cairo/meson.build:
	  meson: Build cairo subproject when unavailable on the system
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/952
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1523>

2022-01-20 17:59:30 +0100  Aleksandar Topic <aleks@qtec.com>

	* gst/imagefreeze/gstimagefreeze.c:
	  imagefreeze: Fix example launch line format issue
	  The currently shown example launch line will not run, because it
	  cannot handle png images.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1547>

2021-05-07 18:22:06 +0200  Bastien Nocera <hadess@hadess.net>

	* docs/gst_plugins_cache.json:
	* ext/gtk/gstgtkbasesink.c:
	* ext/gtk/gstgtkbasesink.h:
	* ext/gtk/gtkgstbasewidget.c:
	* ext/gtk/gtkgstbasewidget.h:
	  gtk: Add "video-aspect-ratio-override" property
	  Allow front-ends to override the pixel aspect ratio found inside the
	  video file itself, or most likely, missing from the video file.
	  This is a long-standing feature of totem.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137>

2021-10-13 15:33:14 +0200  Bastien Nocera <hadess@hadess.net>

	* ext/gtk/gtkgstbasewidget.c:
	  gtk: Remove _update_par() forward declaration
	  No functional changes.
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137/diffs#note_1102782
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137>

2021-10-13 15:38:52 +0200  Bastien Nocera <hadess@hadess.net>

	* ext/gtk/gtkgstbasewidget.c:
	  gtk: Mark properties as changeable in the PLAYING state
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137#note_1102789
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137>

2021-05-11 11:28:57 +0200  Bastien Nocera <hadess@hadess.net>

	* docs/gst_plugins_cache.json:
	* ext/gtk/gstgtkbasesink.c:
	* ext/gtk/gtkgstbasewidget.c:
	  gtk: Fix "pixel-aspect-ratio" property range
	  Fix the arguments passed to gst_param_spec_fraction in the incorrect
	  order.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137>

2021-05-07 18:19:55 +0200  Bastien Nocera <hadess@hadess.net>

	* ext/gtk/gstgtkbasesink.c:
	* ext/gtk/gtkgstbasewidget.c:
	  gtk: Rename display pixel aspect ratio related constants
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137>

2021-05-07 18:16:30 +0200  Bastien Nocera <hadess@hadess.net>

	* ext/gtk/gtkgstbasewidget.c:
	  gtk: Make "pixel-aspect-ratio" changes immediate
	  Schedule a resize when the display's pixel aspect ratio has changed, if
	  one isn't already scheduled.
	  Closes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/883
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1137>

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-30 16:31:33 +0000  Heinrich Kruger <heinrich.kruger@sohonet.com>

	* gst/rtp/gstrtphdrext-colorspace.c:
	  rtp-hdrext-colorspace: Fix color range encoding
	  The color space RTP header extension encodes color range as specified in
	  https://www.webmproject.org/docs/container/#Range. In other words:
	  0: Unspecified,
	  1: Broadcast Range,
	  2: Full range,
	  3: Defined by matrix coefficients and transfer characteristic.
	  This does not match the values of GstVideoColorRange, so it is not
	  correct to just write the colorimetry.range value to the header
	  extension.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1482>

2021-12-24 14:52:38 +0900  Jeongki Kim <jeongki.kim@jeongki.kim>

	* gst/rtp/gstrtpg726depay.c:
	  rtpg726depay: fix endian conversion
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1469>

2021-12-23 14:29:55 +0000  Corentin Damman <c.damman@intopix.com>

	* tests/check/elements/rtpjitterbuffer.c:
	  rtpjitterbuffer: fix typo in tests
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1466>

2021-12-20 09:28:50 +0000  Florian Zwoch <fzwoch@gmail.com>

	* ext/aalib/gstaatv.c:
	  aatv: Fixes for rain-mode
	  Some rain-mode properties tried to read float from int value.
	  Initialize rain after setting rain-mode. Rain was non-functional if
	  width/height were left at default values.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1459>

2021-12-07 23:48:39 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/gst_plugins_cache.json:
	* gst/rtp/gstrtpreddec.c:
	* gst/rtp/gstrtpreddec.h:
	  reddec: implement support for the BUNDLE case
	  When multiple streams are bundled together, there may be more
	  than one red payload type to handle.
	  In addition, as the red decoder works by filling in gaps in
	  the seqnums, there needs to be one rtp_history queue per sequence
	  domain.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1429>

2021-12-07 23:43:21 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/gst_plugins_cache.json:
	* gst/rtpmanager/gstrtpbin.c:
	  rtpbin: add new request-fec-decoder-full signal for BUNDLE
	  When multiple streams are bundled together, the application needs
	  to know about the payload type in order to instantiate the appropriate
	  FEC decoder.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1429>

2021-12-03 02:52:06 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtp/gstrtpredenc.c:
	* gst/rtp/gstrtpredenc.h:
	* gst/rtp/gstrtpulpfecenc.c:
	* gst/rtp/gstrtpulpfecenc.h:
	* tests/check/elements/rtpred.c:
	  rtp/redenc|ulpfecenc: add support for TWCC
	  In redenc, when input buffers have a header for the TWCC extension,
	  we now add one to our wrapper buffers.
	  In ulpfecenc we add one in that case to our protection buffers.
	  This makes TWCC functional when UlpRed is used in webrtcbin.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1414>

2021-12-02 13:32:33 +0000  Thibault Saunier <tsaunier@igalia.com>

	* gst/rtp/gstrtph264pay.c:
	* gst/rtp/gstrtph264pay.h:
	  rtph264pay: Handle 'profile' field
	  In order to allow "level-asymmetry-allowed" we now handle a new
	  "profile" field, which as the same semantics as the "profile" field in
	  H.264 stream so that we can force payloaded stream to have the right
	  format when using the `gst_sdp_media_get_caps_from_media` to set caps
	  filter after the payloader. This allows a simple negotiation in standard
	  RTP negotiation based on SDPs (like webrtc) for that particular case,
	  closely respecting the specs.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1410>

2021-12-10 16:08:27 +0100  Jakub Adam <jakub.adam@collabora.com>

	* sys/ximage/gstximagesrc.c:
	  ximagesrc: avoid blocking wait for X events
	  XNextEvent() blocks indefinitely in absence of X11 events, which can
	  prevent the pipeline from stopping.
	  This can cause problems when ximagesrc is used in "remote desktop"
	  scenarios and the GStreamer application itself, through which the user
	  is viewing and controlling the machine, is the only source of input
	  events.
	  Replace the call with non-blocking XCheckTypedEvent().
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1438>

2021-12-10 17:36:30 +0100  Célestin Marot <marotcelestin@gmail.com>

	* gst/multifile/gstmultifilesrc.c:
	  multifilesrc: fix caps leak
	  since `gst_caps_replace()` and `gst_pad_set_caps()` both ref the caps and neither of them takes the ownership of the caps -> it must be unreffed in `gst_multi_file_src_set_property()`
	  to test the leak (on Unix): `echo coucou > /tmp/file.txt && GST_TRACERS=leaks GST_DEBUG="GST_TRACER:7" gst-launch-1.0 multifilesrc location=/tmp/file.txt caps='txt' ! fakesink`
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1436>

2021-12-06 15:37:06 +0100  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* ext/jpeg/gstjpegdec.c:
	  jpegdec: only allow conversions from RGB
	  libjpeg-turbo only supports converting from RGB to other RGB formats.
	  Fix runtime error when trying to convert from a YUV format for example.
	  Fix #916
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1421>

2021-11-29 15:35:36 +0100  Wim Taymans <wtaymans@redhat.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2: handle 0x0 sizes gracefully
	  Also ignore 0x0 sizes in the fallback case and assume the size can be
	  anything between 1x1 and MAXxMAX.
	  This fixes the case where a width=0, height=0 caps are created. Whith
	  this patch the caps will contain width=[1,MAX], height=[1,MAX].
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1396>

2021-11-23 20:54:57 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtpmanager/gstrtpfunnel.c:
	* tests/check/elements/rtpfunnel.c:
	  rtpfunnel: fix extmap handling on accept-caps
	  Follow-up on 97d83056b315c56834eaa6776ae4c6a0848b5ef9, only check
	  for intersection with the current srccaps when checking if a sinkpad
	  can accept caps.
	  I must have been lucky in my firefox testing then, and always entered
	  the code path with audio getting negotiated first, thus not failing
	  the is_subset check when srccaps had been negotiated as
	  application/x-rtp, and an accept-caps query was made for the video
	  caps with a defined extmap.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1384>

2021-11-12 13:54:59 +0100  Jean Felder <jean.felder@gmail.com>

	* ext/taglib/gstid3v2mux.cc:
	  id3v2mux: Map GST_TAG_MUSICBRAINZ_RELEASETRACKID
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1342>

2021-11-12 13:51:56 +0100  Jean Felder <jean.felder@gmail.com>

	* ext/taglib/gstid3v2mux.cc:
	  id3v2mux: Map GST_TAG_MUSICBRAINZ_RELEASEGROUPID
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1342>

2021-11-18 16:27:17 +0000  Tobias Reineke <tobi@g3th.net>

	* ext/shout2/gstshout2.c:
	  shout2: Add compatibility for libshout >= 2.4.2
	  In libshout >=2.4.2 shout_open() can return SHOUTERR_RETRY in addition
	  to SHOUTERR_BUSY.
	  The nonblocking example in libshout fixes the problem in a similar
	  way, as mentioned by the author in this issue:
	  https://gitlab.xiph.org/xiph/icecast-libshout/-/issues/2316
	  Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/848
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1363>

2021-11-15 14:39:14 +1100  Matthew Waters <matthew@centricular.com>

	* ext/qt/qtitem.cc:
	  qmlglsink: fix another resize case
	  If qt asks us to redraw before we have both set a buffer and caps we
	  would attempt to use the new caps with the old buffer which could result
	  in bad things happening.
	  Only update caps from new_caps once the buffer has actually been set.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1346>

2021-11-01 10:08:32 +0700  Trung Do <trung1.dothanh@toshiba.co.jp>

	* sys/v4l2/gstv4l2object.c:
	  v4l2: Update fmt if padded height is greater than fmt height
	  If padded height is greater, buffer bytesused could be larger than plane length,
	  and cause VIDIOC_QBUF failure.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1355>

2021-11-09 19:41:14 +0100  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtpmanager/gstrtpfunnel.c:
	* tests/check/elements/rtpfunnel.c:
	  rtpfunnel: don't enforce twcc during upstream negotiation
	  A previous patch has caused rtpfunnel to output twcc-related
	  information downstream, however this leaked into upstream
	  negotiation (through funnel->srccaps), causing payloader to
	  negotiate twcc caps even when not prompted to do so by the user.
	  Fix this by only enforcing that upstream sends us application/x-rtp
	  caps as was the case originally.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1278>

2021-10-30 01:18:18 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtpmanager/rtptwcc.c:
	  rtptwcc: complete bufferlist fix
	  When dealing with bufferlists, we need to store one "SentPacket"
	  structure per buffer, not one per buffer list!
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1278>

2021-11-12 17:59:22 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Log cslg_shift that was determined
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1294>

2021-11-12 13:00:56 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Use a composition time offset of 0 for "no decode samples" for the time being
	  This needs codec-specific handling, but using 0 instead of G_MININT32 at
	  least gives somewhat reasonable behaviour.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/883
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1294>

2021-11-12 12:46:56 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Always check ctts for unreasonably large offsets
	  If this happens then ignore the whole ctts. Previously we only did this
	  if the PTS/DTS shift was determined from the ctts instead of the cslg.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1294>

2021-11-12 12:39:17 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux_dump.c:
	  qtdemux: Dump composition time offsets in trun as signed integers
	  Just like we do for ctts without regard of the version of the box.
	  Huge offsets are interpreted as negative offsets by qtdemux so this
	  works.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/1294>

2021-11-12 11:36:31 +0200  Sebastian Dröge <sebastian@centricular.com>

