=== release 1.22.10 ===

2024-02-13 14:39:08 +0000  Tim-Philipp Müller <tim@centricular.com>

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

2023-05-11 20:01:45 +0200  Piotr Brzeziński <piotr@centricular.com>

	* gst-libs/gst/gl/cocoa/gstglwindow_cocoa.m:
	  macos: Set activation policy in osxvideosink and glimagesink
	  Upon creating a window, glimagesink and osxvideosink now set the policy to
	  NSApplicationActivationPolicyRegular, which lets us show an icon in the Dock
	  for convenience and appear in the top menu bar like other apps.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6103>

2024-02-08 15:50:43 +0100  Edward Hervey <edward@centricular.com>

	* gst-libs/gst/pbutils/descriptions.c:
	  musepack: Prefer using FFmpeg musepack decoder/demuxer
	  * Bump the rank of the musepack v7/v8 FFmpeg demuxers to SECONDARY
	  * Bump the rank of the musepack v7/v8 FFmpeg audio decoders to SECONDARY
	  * Demote the rank of the musepackdec element to MARGINAL
	  This is for two reasons:
	  * The musepack library is no longer maintained, whereas the FFmpeg
	  implementation can/will receive fixes
	  * The `musepackdec` implementation was a all-in-one "parsing and decoding" blob
	  which doesn't play nicely with decodebin3 and others
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3033
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6085>

2024-01-31 00:10:59 +0100  Alexander Slobodeniuk <aslobodeniuk@fluendo.com>

	* gst-libs/gst/video/gstvideoaggregator.c:
	  videoaggregator: fix bufferpool leak
	  that happens if it fails to activate the pool
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6047>

2024-01-26 10:56:19 +0100  Christian Curtis Veng <vengzor@gmail.com>

	* gst-libs/gst/gl/gstglcolorconvert.c:
	  glcolorconvert: fix wrong RGB to YUV matrix with bt709
	  Converting from RGB to YUV: When comparing the info.colorimetry to
	  GST_VIDEO_COLORIMETRY_BT709 it does not make sense to look at the input
	  signal because that is of type of RGB. The plugin needs to look at the
	  output YUV-type and compare GST_VIDEO_COLORIMETRY_BT709 to that, because
	  that is the YUV-type the plugin needs to convert input-RGB into.
	  Converting from YUV to RGB: Comparing to the input is correct, but because
	  here the color encoding info BT601/BT709 is on input side of the plugin.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6046>

2024-01-24 03:17:32 +1100  Jan Schmidt <jan@centricular.com>

	* docs/plugins/gst_plugins_cache.json:
	* ext/gl/gstglvideoflip.c:
	  glvideoflip: fix setting of method property at construction time
	  A port of the same fix that
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4536
	  did for the non-GL videoflip element
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3245
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6010>

2024-01-25 00:18:12 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5990>

=== release 1.22.9 ===

2024-01-24 18:21:13 +0000  Tim-Philipp Müller <tim@centricular.com>

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

2023-12-14 12:31:01 +0100  Michael Tretter <m.tretter@pengutronix.de>

	* gst/videorate/gstvideorate.c:
	  videorate: keep pool if max_buffers is unlimited
	  The value 0 for max_buffers means unlimited. If the max_buffers are unlimited,
	  the videorate element shouldn't throw away the bufferpool, but just increase the
	  min_buffers value.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5957>

2023-08-12 10:43:14 +1000  Jan Schmidt <jan@centricular.com>

	* gst-libs/gst/audio/gstaudiobasesink.c:
	  audiobasesink: Don't wait on gap events
	  Don't call wait_event() at all for gap events, as basesink will
	  end up waiting for the time that the gap event would be rendered
	  out at the audio device. There's no need to render it at all,
	  just treat it as a handy point to resync the audio if needed,
	  let the ringbuffer render silence, and place the next buffer
	  into the ringbuffer where it belongs.
	  The only thing we really need to do is make sure the ringbuffer
	  and clock are running, and wait for preroll.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2749
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5953>

2024-01-18 20:32:44 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/gl/gstglcolorconvert.c:
	  glcolorconvert: Correct transform_caps direction
	  If GST_PAD_SINK is passed in this means that we're supposed to convert
	  from sink caps to src caps, not the other way around. In other words, if
	  GST_PAD_SINK is passed we're supposed to produce the possible output
	  caps.
	  Previously this was inverted. This had the effect that glcolorconvert
	  pretended to be able to convert *to* I420 without glDrawBuffers, which is
	  not possible, and pretended not to be able to convert *from* I420
	  without glDrawBuffers, which it always supports.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5947>

2023-12-19 12:01:30 -0500  Damian Hobson-Garcia <damian@hobsong.com>

	* ext/gl/gstgloverlay.c:
	  gloverlay: Apply updated overlay coordinates correctly
	  When overlay coordinates are updated, after the initial coordinates
	  are set, the shader indices are applied to the wrong buffer, resulting
	  in the background image appearing where the overlay should.
	  Bind the array buffer before applying subsequent coordinate
	  updates.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5909>

2023-12-18 10:28:18 +0100  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* gst/audioconvert/gstaudioconvert.c:
	  audioconvert: change gst_audio_convert_get_unit_size() log levels
	  INFO is a bit high for such technical details and best to use WARNING
	  when it fails.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5832>

2023-12-18 13:52:12 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5826>

=== release 1.22.8 ===

2023-12-18 12:09:37 +0000  Tim-Philipp Müller <tim@centricular.com>

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

2023-11-27 09:01:38 -0500  Doug Nazar <nazard@nazar.ca>

	* gst-libs/gst/audio/gstaudioringbuffer.c:
	  audioringbuffer: Don't try to map MONO channel
	  Avoids critical message:
	  gstaudioringbuffer.c: line 2155 (gst_audio_ring_buffer_set_channel_positions):
	  should not be reached
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5793>

2023-12-02 00:32:31 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/app/gstappsrc.c:
	* tests/check/elements/appsrc.c:
	  appsrc: Fix flow return when buffer is dropped
	  Flow EOS on buffer drop (upstream leaky mode) was not
	  intended behavior. Appsrc should return OK instead.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5755>

2023-12-01 18:46:35 +0900  Jimmy Ohn <yongjin.ohn@lge.com>

	* gst/playback/gstdecodebin2.c:
	  decodebin2: Properly free when shutting down in gst_decode_bin_expose
	  missing_plugin_details causes memory leakages when shutting down.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5750>

2023-12-01 17:55:28 +0900  Jimmy Ohn <yongjin.ohn@lge.com>

	* gst-libs/gst/pbutils/encoding-target.c:
	  encoding-target: Properly free when missing type field in parse_encoding_profile
	  pname and description in parse_encoding_profile function causes
	  memory leakages when missing the 'type' field for streamprofile.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5750>

2023-11-27 10:36:01 +0000  Philippe Normand <philn@igalia.com>

	* gst-libs/gst/pbutils/codec-utils.c:
	* tests/check/libs/pbutils.c:
	  pbutils: Don't include default vp9 parameters in resulting codec mime string
	  According to the document defining the vp9 codec string, the optional fields
	  should all be present only if at least one of them has a non-default value.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5719>

2023-11-17 10:48:21 -0500  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* gst/videorate/gstvideorate.c:
	  videorate: Don't forget last_ts on caps changes
	  Whenever that caps changes does not imply that a new segment will start.
	  Don't reset the last_ts if only the caps have changed. This fixes issues
	  if you have a stream without only first frame with TS=0, and have resolution
	  change happening. This was a regression introduced by !3059, which issue was
	  described in #1352. The reported issue is still fix after this change.
	  Fixes #1034
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5712>

2023-11-13 14:57:09 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5650>

=== release 1.22.7 ===

2023-11-13 11:04:22 +0000  Tim-Philipp Müller <tim@centricular.com>

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

2023-11-07 00:27:57 +0100  Piotr Brzeziński <piotr@centricular.com>

	* ext/pango/gstbasetextoverlay.c:
	  basetextoverlay: Fix overlay never rendering again if width reaches 1px
	  If text width ever reached 1px, for example after resizing the output window, the overlay would stop rendering
	  and never return again. The 1px condition itself does not seem to make much sense here anyway.
	  This was a chain of events: width reached 1, so the composition was set to NULL. Then, after resizing the output window,
	  push_frame() was called but would not attempt to renegotiate because composition is NULL. This caused the width/height
	  to never be updated again, as that only happens during negotiation, so the overlay was gone for good.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5623>

2023-10-19 19:41:27 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/audio/gstaudioaggregator.c:
	  audioaggregator: Make access to the pad list thread-safe while mixing
	  When mixing every single buffer the object lock is shortly released and
	  acquired again. In the meantime the pad list can become invalid because
	  a pad was removed or added, and equally the current pad might as well
	  have been finalized in the meantime.
	  To get around that, take a snapshot of all sinkpads before mixing and
	  work with that list of pads.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3052
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5553>

2023-10-05 13:49:16 +1100  Jan Schmidt <jan@centricular.com>

	* gst-libs/gst/gl/gstglfilter.c:
	  glfiter: Protect GstGLContext access
	  The propose and decide allocation vfuncs are called directly from
	  basetransform and need to use the locked accessor function for
	  retrieving a reliable reference to the GstGLContext (if available)
	  Fixes spurious crashes on shutdown during pad reconfiguration
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5518>

2023-10-09 14:48:35 +0200  Piotr Brzeziński <piotr@centricular.com>

	* gst-libs/gst/gl/gstglfilter.c:
	  glfilter: Only add parent meta if inbuf != outbuf
	  This was causing a memory leak in cases like `gltestsrc ! gltransformation scale-x=0.5 ! glimagesink`.
	  Parent meta was being added in assumption that those buffers are different, which was not the case here,
	  creating a reference loop and never freeing the buffer.
	  Co-authored-by: Matthew Waters <matthew@centricular.com>
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5453>

2023-09-21 08:12:47 -0400  Eric <ekc4yz@virginia.edu>

	* gst-libs/gst/rtsp/gstrtspconnection.c:
	  rtspconnection: Ignore trailing whitespace in headers
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5382>

2023-09-20 16:07:35 +0200  Michiel Westerbeek <happylinks@gmail.com>

	* gst-libs/gst/audio/audio-resampler.c:
	* gst-libs/gst/video/video-scaler.c:
	  video-scaler, audio-resampler: downgrade 'can't find exact taps' to debug
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5381>

2023-09-20 19:41:00 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5371>

=== release 1.22.6 ===

2023-09-20 18:10:57 +0100  Tim-Philipp Müller <tim@centricular.com>

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

2023-08-26 15:12:05 +0200  Stephan Seitz <sseitz@nvidia.com>

	* gst-libs/gst/sdp/gstsdpmessage.c:
	  sdp: fix wrong error message for missing clock-rate in caps
	  When using `gst_sdp_media_set_media_from_caps` on `application/x-rtp` caps
	  without `clock-rate` it wrongly reports missing payload type even if `payload`
	  is present in the caps.
	  This seems to be a copy&paste error from the error message for missing payload
	  type.
	  When using payload=10, both `clock-rate` and some other media properties are
	  defined by the RTP standard so I was wondering whether I could omit `clock-rate`
	  and was confused about the error message.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5252>

2023-08-19 01:00:16 +1000  Jan Schmidt <jan@centricular.com>

	* gst-libs/gst/audio/gstaudiobasesrc.c:
	* gst-libs/gst/audio/gstaudioringbuffer.c:
	  audio: Make sure to stop ringbuffer on error
	  Add gst_audio_ring_buffer_set_errored() that will mark the
	  ringbuffer as errored only if it is currently started or paused,
	  so gst_audio_ringbuffer_stop() can be sure that the error
	  state means that the ringbuffer was started and needs stop called.
	  Fixes a crash with osxaudiosrc if the source element posts
	  an error, because the ringbuffer would not get stopped and CoreAudio
	  would continue trying to do callbacks.
	  Also, anywhere that modifies the ringbuffer state, make sure to
	  use atomic operations, to guarantee their visibility
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5216>

2023-08-09 17:35:39 -0400  Olivier Crête <olivier.crete@collabora.com>

	* gst-libs/gst/sdp/gstsdpmessage.c:
	  sdpmessage: Parse zero clock-rate as default
	  It seems there is at least one broken RTSP server out there that returns a clock-rate of 0.
	  Let's just ignore it and use the default in that case.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5199>

2023-08-01 15:14:29 +0100  Philippe Normand <philn@igalia.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: Ensure the slot is unlinked before linking to decoder
	  When switching from a raw stream to an encoded stream we need to make sure the
	  slot is unlinked, there is code in place for this but it wasn't triggered
	  because the slot being reconfigured wasn't advertised as linked beforehand.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5133>

2023-05-18 16:08:03 +0800  Haihua Hu <jared.hu@nxp.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: avoid identity, sinkpad, parsebin leakage when reset input
	  when reset_input, need remove identity/parsebin from decodebin3
	  when release_pad, need call free or reset input if collection
	  didn't change
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5086>

2023-07-20 16:57:47 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5082>

=== release 1.22.5 ===

2023-07-20 15:22:48 +0100  Tim-Philipp Müller <tim@centricular.com>

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

2023-07-18 01:25:47 +0000  Ruslan Khamidullin <ruslank@borisfx.com>

	* tests/check/libs/videotimecode.c:
	  video: add extensive tests for gst_video_time_code_is_valid()
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5061>

2023-07-12 22:45:28 +0000  Ruslan Khamidullin <ruslank@borisfx.com>

	* gst-libs/gst/video/gstvideotimecode.c:
	  video: accept timecode of 119.88 (120/1.001) FPS
	  The drop-frame rules are specified in “SMPTE ST 12-3:2016” and are
	  consistent with the traditional ones:
	  “
	  To minimize fractional time deviation from real time, the first two
	  super-frame numbers (00 and 01) shall be omitted from the count at the
	  start of each minute except minutes 00, 10, 20, 30, 40, and 50. Thus the
	  first eight frame numbers (0 through 7) are omitted from the count at
	  the start of each minute except minutes 00, 10, 20, 30, 40, and 50.
	  ”
	  Where “super-frame” is a group of 4 frames for 120 FPS.
	  Fixes #2797
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5061>

2023-04-10 12:54:51 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/video/gstvideotimecode.c:
	* tests/check/libs/videotimecode.c:
	  video: timecode: Add support for framerates lower than 1fps
	  These are not explicitly defined but the existing calculations can be
	  extended to also cover that case by inverting them to avoid floating
	  point calculations.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2465
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5074>

2023-07-18 15:15:40 +0100  Philippe Normand <philn@igalia.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: Prevent a critical warning when reassigning output slots
	  Do not attempt to send a streams-selected message when reassigning
	  an output slot in case upstream signalled that it is handling stream selection.
	  In this case decodebin3 doesn't keep track of stream
	  collections (`dbin->collection` is NULL).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5069>

2023-07-17 15:23:35 +0100  Philippe Normand <philn@igalia.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: Fix slot input linking when the associated stream has changed
	  Setting the input field on the empty slot prevents future linking of it and will
	  result in flow errors later on.
	  This was observed in WebKit's MediaStream source element, when it changes the
	  caps on one of its associated streams, from an encoded format to a raw video
	  format. The associated stream-id on the sticky stream-start event doesn´t
	  change, but the element creates a new GstStream with a different ID and sets it
	  on the stream-start event. Stream parsing is disabled in urisourcebin, so
	  decodebin3 handles the parsing. Without this patch we would end-up with unlinked
	  pads in decodebin3 after switching to the raw video format.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5067>

2023-01-31 16:12:17 +0100  Edward Hervey <edward@centricular.com>

	* gst/playback/gsturisourcebin.c:
	  urisourcebin: Set source element to READY before querying it
	  Generating the source element is done when urisourcebin is doing the READY to
	  PAUSED state change, so it is reasonable to set the new source element to that
	  state.
	  This also allows detecting early failures with backing libraries or
	  hardware (checks done in NULL->READY).
	  Finally it makes more sense to have an element in READY when attempting to query
	  information from it (such as SCHEDULING queries or probing live-ness).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5058>

2023-06-21 13:45:13 +0200  Andoni Morales Alastruey <ylatuya@gmail.com>

	* gst-libs/gst/video/gstvideodecoder.c:
	* tests/check/libs/videodecoder.c:
	  videodecoder: fix segfault copying buffer metas
	  The current implementation copies metas without checking if the buffer
	  is writable.
	  The operation that needs to be done, replacing the input buffer and
	  copying the metas, is only part of that process. We create a new function
	  that does both.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5054>

2023-07-12 17:08:32 +0100  Philippe Normand <philn@igalia.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: Remove spurious input locking during parsebin reconfiguration
	  Commit 22917b140ffac5208eff173321fa7cdad8976cca added extra locks in
	  `reset_input_parsebin()` but all call sites of that function already take the
	  input lock.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5025>

2023-05-16 21:24:44 +1000  Matthew Waters <matthew@centricular.com>

	* gst-libs/gst/gl/meson.build:
	* gst-libs/gst/gl/viv-fb/gstglviv-fb.h:
	  gl: provide a pkg-config/gir file for the viv-fb backend
	  Required to be able to generate coherent bindings for window system
	  specific APIs due to limitations in gobject-introspection.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4959>

2023-05-16 22:09:48 +1000  Matthew Waters <matthew@centricular.com>

	* gst-libs/gst/gl/meson.build:
	  gl: don't install the viv-fb window header file
	  It is not needed at all by any external implementations and should not
	  be exposed to the outside world.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4959>

2023-06-30 13:53:19 +0200  Carlos Rafael Giani <crg7475@mailbox.org>

	* gst-libs/gst/gl/meson.build:
	  gl: Separate viv direct texture checks from viv-fb winsys check
	  Vivante direct textures do not depend on the viv-fb windowing system.
	  Decouple these two to be able to use direct textures even when viv-fb
	  is not enabled.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4959>

2023-03-09 00:25:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/gl/meson.build:
	  meson: Install viv-fb GL headers, needed by i.MX
	  Needed by qmlglsink at build time to allocate a viv-fb display.
	  Without this, the GL fastpath doesn't work, and performance is really
	  bad.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4959>

2023-03-26 16:40:28 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/subparse/gstsubparse.c:
	  taglist, plugins: fix compiler warnings with GLib >= 2.76
	  Fix compiler warnings about not using the return value when
	  freeing the GString segment with g_string_free(.., FALSE):
	  ignoring return value of ‘g_string_free_and_steal’ declared with attribute ‘warn_unused_result’
	  which we get with newer GLib versions. These were all harmless.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5015>

2023-07-07 16:01:33 +0300  Maksym Khomenko <maksym.khomenko@skelia.partners>

	* gst-libs/gst/app/gstappsink.c:
	  appsink: add missing make_writable call
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/5013>

2023-07-05 14:27:22 -0400  Thibault Saunier <tsaunier@igalia.com>

	* gst-libs/gst/audio/gstaudioaggregator.c:
	  bad: audioaggregator: Do not post message before being constructed
	  `gst_aggregator_set_latency` will post a message on the bus which
	  triggers traces for not constructed objects which fails in rust tracers
	  as object should have names in all traces.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4984>

2023-07-04 15:37:16 +0200  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* gst/playback/gstsubtitleoverlay.c:
	  subtitleoverlay: fix mutex error if sink caps is not video
	  We were trying to unlock a mutex that was not locked.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4972>

2023-06-20 19:10:38 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4907>

=== release 1.22.4 ===

2023-06-20 17:42:25 +0100  Tim-Philipp Müller <tim@centricular.com>

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

2023-06-13 12:58:26 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/subparse/gstsubparse.c:
	  subparse: Skip after the end of a valid closing tag instead of only skipping `<`
	  This is a small optimization and avoids restarting the next parsing
	  iteration on already accepted data.
	  On its own it would also fix ZDI-CAN-20968 (see previous commit) but the
	  previous commit independently is also a valid fix for it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4898>

2023-06-13 12:53:13 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/subparse/gstsubparse.c:
	  subparse: Look for the closing `>` of a tag after the opening `<`
	  Previously when fixing up subrip markip, we were looking from the start
	  of the remaining buffer instead. Due to how skipping over closing tags
	  works, the remaining buffer will still contain the closing `>` of the
	  previous tag so if a unexpected closing tag is found after another
	  closing tag, we would potentially do an out of bounds memmove().
	  Fixes ZDI-CAN-20968
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2662
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4898>

2023-06-13 13:22:57 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/tag/tags.c:
	  tags: Don't allow image tags with G_MAXUINT32 length
	  This will cause an integer overflow a little bit further down because we
	  allocate a bit more memory to allow for a NUL-terminator.
	  The caller should've avoided passing that much data in already as it's
	  not going to be a valid image and there's likely not even that much data
	  available.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4897>

2023-06-13 10:30:16 +0800  Haihua Hu <jared.hu@nxp.com>

	* gst-libs/gst/gl/gstglfilter.c:
	  glfilter: add parent meta to output buffer for input buffer
	  glfilter will unref input buffer after _transform() call immidiately,
	  but gpu may still reading input buffer for rendering because gl
	  api is executed async. Need hold reference for input buffer by
	  adding parent meta to output buffer.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4846>

2023-06-07 14:24:46 -0400  Xavier Claessens <xavier.claessens@collabora.com>

	* ext/opus/gstopusenc.c:
	  opus: Fix crash when getting unexpected channel position
	  gst_opus_channel_names is a static array with only 13 items.
	  GstAudioChannelPosition have bigger values than that.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4843>

2016-06-01 11:52:38 +0100  William Manley <will@williammanley.net>

	* docs/plugins/gst_plugins_cache.json:
	* ext/pango/gstbasetextoverlay.c:
	  basetextoverlay: Fix typo in "text-y" property description
	  Looks like a copy and paste error.
	  Co-authored-by: Fabian Orccon <cfoch.fabian@gmail.com>
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4827>

2023-06-09 21:08:36 +0800  Kevin Song <kesong@nvidia.com>

	* gst-libs/gst/app/gstappsink.c:
	  appsink: unref gstbuffer in prev sample early
	  Appsink will unref prev sample in dispose function. Which is later
	  when V4L2 video decoder link with appsink as V4L2 video decoder
	  will close V4L2 device fd during GST_STATE_CHANGE_READY_TO_NULL.
	  If the video buffer return to V4L2 video decoder after the decoder
	  closed V4L2 device fd, V4L2 can't release the video frame buffer
	  which allocated with MMAP mode as application can't call
	  VIDIOC_REQBUFS 0 to release the video frame buffer by V4L2 driver.
	  The memory of the video frame will leak.
	  Unref the gstbuffer in stop() function, so V4L2 video decoder
	  can received all video frame buffers and release it before close
	  V4L2 device fd.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4820>

2023-06-07 13:46:39 +1000  Matthew Waters <matthew@centricular.com>

	* ext/gl/gstgldownloadelement.c:
	  gldownload: handle passthrough without a critical
	  With passthrough mode, gldownload/glbasefilter may not ever retrieve a
	  relevant GstGLContext as it doesn't actually query the surrounding
	  elements.  Guard against that.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4800>

2023-05-27 13:06:22 +0100  Philippe Normand <philn@igalia.com>

	* ext/ogg/gstoggdemux.c:
	* ext/ogg/gstoggdemux.h:
	* ext/ogg/gstoggstream.c:
	  oggdemux: vp8: Detect keyframe packets
	  decodebin3 drops data on video streams until a keyframe or header is detected,
	  so for Ogg/VP8 we now need to correctly flag and signal keyframes downstream.
	  The first buffer pushed from each src pad also has the HEADER flag set.
	  Fixes playback of
	  https://github.com/web-platform-tests/wpt/raw/master/media/test.ogv in playbin3.
	  Fixes #1418
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4745>

2023-05-31 16:26:45 +0200  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* gst/playback/gststreamsynchronizer.c:
	  streamsynchronizer: check reset-time when handling FLUSH_STOP
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4755>

2023-05-31 16:05:48 +0200  Guillaume Desmottes <guillaume.desmottes@onestream.live>

	* gst/playback/gststreamsynchronizer.c:
	  streamsynchronizer: reset eos on STREAM_START
	  self->eos was never reset after streamsynchronizer has sent EOS
	  (except on explicit flush or switching back to PAUSED).
	  As a result, synchronization was broken if new streams were pushed later
	  as gst_stream_synchronizer_wait() does not wait if self->eos is set.
	  Fix this by reseting self->eos on STREAM_START as that means a new
	  stream is being sent upstream and so a new EOS will follow later on.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4755>

2023-05-29 02:14:44 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/video-blend.h:
	  video-blend: Fix linking error with C++
	  Add missing extern "C"
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4735>

2023-05-19 15:20:16 +0800  He Junyan <junyan.he@intel.com>

	* gst-libs/gst/video/gstvideometa.c:
	  videometa: Only validate the alignment only when it contains some info
	  When the alignment contains nothing, all its fields are 0 and always
	  can be satisfied. So there is no need to validate it in this case.
	  And there are a lot of places just setting this alignment to default
	  all zero value, this validation generates lots of warnings.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4704>

2023-05-15 15:57:15 -0400  Nicolas Beland <nicolas@inogeni.com>

	* ext/alsa/gstalsasink.c:
	* ext/alsa/gstalsasink.h:
	  alsasink: Fix stall for transition of alsasink from PAUSED to READY with USB speakerphone
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4699>

2022-07-05 05:14:01 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/convertframe.c:
	  video: convertframe: Add D3D11 specific conversion path
	  Add d3d11 conversion path to make gst_video_convert_sample() work
	  for GstD3D11Memory.
	  Note that just adding "d3d11download" to the exisitng code is
	  suboptimal from GstD3D11 point of view because:
	  * d3d11convert element can support crop/colorspace-conversion/scale
	  all at once while existing software pipeline needs intermediate steps
	  for the conversion
	  * "Process everything on GPU then download it to CPU memory" would be likely
	  faster than "download GPU memory to CPU then processing it on CPU"
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4689>

2022-07-05 04:42:57 +0900  Seungha Yang <seungha@centricular.com>

	* gst-libs/gst/video/convertframe.c:
	  video: convertframe: Remove pointless const qualifier
	  const keyword for refcounted object does not very make sense
	  and unnecessary in this case
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4689>

2023-05-19 12:36:19 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4679>

=== release 1.22.3 ===

2023-05-19 09:23:19 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* README.md:
	* RELEASE:
	* gst-plugins-base.doap:
	* meson.build:
	  Release 1.22.3

2023-05-17 21:43:21 +1000  Matthew Waters <matthew@centricular.com>

	* gst-libs/gst/gl/meson.build:
	  Revert "meson: Install viv-fb GL headers, needed by i.MX"
	  Missing pkg-config files and gir files as is required from any public
	  facing GL API for bindings reasons.
	  This reverts commit c95b7b8e7aa80276c0604dd3dd03eeda634f42b9.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4657>

2023-05-10 16:34:16 +0800  Haihua Hu <jared.hu@nxp.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: fix random hang when remove failing stream
	  When reconfigure_output_stream entry missing decoder path,
	  requested_selection should been update with what is really
	  active/selected immdiately with SELECTION_LOCK hold. So
	  use an optional message return from reconfigure_output_stream
	  and post it after release SELECTION_LOCK. This can make sure
	  other thread call to check_slot_reconfiguration will got
	  a correct requested_selection.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4656>

2023-03-07 11:40:42 +0100  Edward Hervey <edward@centricular.com>

	* gst/playback/gsturidecodebin3.c:
	  uridecodebin3: Ensure atomic urisourcebin state change
	  When dynamically adding and synchronizing the state of urisourcebin, we need to
	  ensure that no-one else attempts to change the state in case of failures
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/1803
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4620>

2023-03-09 00:25:51 +0530  Nirbheek Chauhan <nirbheek@centricular.com>

	* gst-libs/gst/gl/meson.build:
	  meson: Install viv-fb GL headers, needed by i.MX
	  Needed by qmlglsink at build time to allocate a viv-fb display.
	  Without this, the GL fastpath doesn't work, and performance is really
	  bad.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4618>

2023-04-26 12:20:25 +0200  Edward Hervey <edward@centricular.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: Handle streams without CAPS or TIME segment
	  decodebin3 will do its best to figure out whether a parsebin is required to
	  process the incoming stream.
	  The problem is that for push-based stream it could happen that the stream would
	  not provide any caps, resulting in nothing being linked internally.
	  Furthermore, there is the possibility that a stream *with* caps would not be
	  using a TIME segment, which is required for multiqueue to properly work.
	  In order to fix those two issues, we force the usage of parsebin on push-based
	  streams:
	  * When the pad is linked, if upstream can't provide any caps
	  * When we get a non-TIME segment
	  Fixes #2521
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4499>

2023-04-22 11:42:36 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/audiotestsrc/gstaudiotestsrc.c:
	  audiotestsrc: Initialize all samples in wave=ticks mode
	  Previously samples were only initialized in 2 out of 3 cases.
	  Probably fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-rs/-/issues/337
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4476>

2023-04-20 10:03:27 +0200  Patricia Muscalu <patricia@axis.com>

	* gst/playback/gstplaysink.c:
	  playsink: Fix volume leak
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4463>

2023-04-10 16:06:19 +0200  Jan Alexander Steffens (heftig) <heftig@archlinux.org>

	* tests/check/libs/allocators.c:
	  tests: allocators: Fix fdmem test with recent GLib
	  The test failed with recent GLib, where `g_close` emits a critical
	  warning on EBADF. Remove the `g_close` check from `test_fdmem` and add
	  another version that tests `GST_FD_MEMORY_FLAG_DONT_CLOSE`.
	  We will depend on the Valgrind test run to warn us about leaked FDs.
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2480
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4422>

2023-04-06 08:54:30 +0200  Matthias Fuchs <matthias1.fuchs@zeiss.com>

	* ext/gl/gstglvideoflip.c:
	  glvideoflip: fix leaked caps
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4420>

2023-04-05 13:20:19 +0200  Matthias Fuchs <matthias1.fuchs@zeiss.com>

	* gst-libs/gst/gl/wgl/gstglcontext_wgl.c:
	  glcontext_wgl: fix missing unref
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4419>

2023-04-12 00:31:17 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development

=== release 1.22.2 ===

2023-04-11 17:29:28 +0100  Tim-Philipp Müller <tim@centricular.com>

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

2023-04-10 13:49:55 +0100  Tim-Philipp Müller <tim@centricular.com>

	* po/ka.po:
	* po/sr.po:
	  gst-plugins-base: update translations
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4390>

2023-04-06 07:58:03 +0200  Rouven Czerwinski <r.czerwinski@pengutronix.de>

	* gst-libs/gst/gl/wayland/gstglwindow_wayland_egl.c:
	  gst-plugins-base: gl: wayland: cleanup on close
	  The proxy and queue are created in the gst_gl_window_wayland_egl_open()
	  function and will be recreated on open. This leaks both objects, the
	  wayland client documentation mentions that they should be destroyed
	  using the appropriate destroy functions.
	  Found during valgrind memory leak testing, these blocks were marked as
	  definitely lost.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4355>

2023-04-04 19:21:56 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst-libs/gst/sdp/gstsdpmessage.c:
	  sdp: Skip source-specific caps fields when creating an SDP media from caps
	  Regression from https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/2132
	  We parse the source-specific fields from the SDP and put it into the
	  caps, but when converting caps into an SDP again this would need special
	  handling. By default it would end up as part of the fmtp field, which is
	  simply wrong.
	  Automatically putting it into the caps and SDP will need some more work.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4344>

2023-03-31 04:40:58 +0900  Seungha Yang <seungha@centricular.com>

	* tools/gst-device-monitor.c:
	* tools/gst-discoverer.c:
	* tools/gst-play.c:
	  tools: Count argc after parsing GOption on Windows
	  Existing codes rely on modified argc value by g_option_context_parse()
	  but g_option_context_parse_strv() is used in case of Windows.
	  Count arguments after the option parsing manually.
	  Fixing command "gst-inspect-1.0.exe -b"
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4322>

2023-03-30 16:09:06 +0200  Robert Rosengren <robertr@axis.com>

	* ext/alsa/gstalsasink.c:
	  alsasink: Fix for being stuck in stop_streaming_threads state
	  Moving from PLAYING to NULL will set the stop_streaming_threads to TRUE,
	  but when moving back upwards its not reset to FALSE (as only done in
	  uncalled init and resume callbacks).
	  Fix by reseting value in the prepare callback.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4321>

2023-03-18 11:54:15 +0200  Ilie Halip <ilie.halip@gmail.com>

	* gst/typefind/gsttypefindfunctions.c:
	  typefindfunctions: Increase xml typefinder closing brace limit
	  If the first XML element in a DASH manifest has its closing brance
	  beyond the first 512 bytes (because of, e.g. lots of attributes),
	  the MPD typefinder fails. Try to read a larger block, and then
	  smaller blocks until 512 bytes.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2385
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4302>

2023-03-28 15:49:36 +0200  Bart Van Severen <bart.vanseveren@barco.com>

	* gst-libs/gst/rtsp/gstrtspurl.c:
	  rtsp: gstrtspurl: gst_rtsp_url_get_request_uri: use rtsps scheme for tls transport methods
	  gst_rtsp_url_get_request_uri returns rtsp://... url when requested url is rtsps://, this is not
	  in accordance with https://www.rfc-editor.org/rfc/rfc7826.html#section-19.2.
	  This also impedes setting up a rtsps session with a live555 rtsp server.
	  Don't expose other than rtsp and rtsps internal gstreamer rtsp url schemes
	  to avoid regression:
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2412
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4298>

2023-03-28 15:38:07 +0200  Bart Van Severen <bart.vanseveren@barco.com>

	* gst-libs/gst/rtsp/gstrtspurl.c:
	  Revert "rtsp: gstrtspurl: gst_rtsp_url_get_request_uri: fix incorrect scheme for tls transport methods"
	  This reverts commit 024ef7659d3cb1ceee6628646aa37001399be92d because it causes a regression:
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/2412
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4298>

2023-03-27 11:18:09 +0800  Haihua Hu <jared.hu@nxp.com>

	* gst/playback/gstdecodebin3.c:
	  decodebin3: fix hang issue when remove failing stream
	  Need mark selection_update to true when update selection,
	  otherwise, pipeline will not handle this selection update
	  sometimes when this flag has been reset
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4284>

2023-03-20 16:16:34 +0100  Edward Hervey <edward@centricular.com>

	* gst/playback/gstparsebin.c:
	  parsebin: Improve elementary stream handling
	  The goal of parsebin is to figure out which elements to link together in order
	  to provide elementary streams given any random input.
	  The problem is that deciding whether a given stream should still have more
	  elements plugged in or not was dependent on ... the presence of compatible
	  decoders (sic).
	  Instead of that, if we can't plug anymore elements on a given stream *and* it is
	  detected as being an elementary stream, expose it.
	  Fixes #2118
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4237>

2023-03-20 11:53:35 +0100  Edward Hervey <edward@centricular.com>

	* gst/playback/gsturisourcebin.c:
	  urisourcebin: Activate pad before transferring sticky events
	  Otherwise they get refused since the pad is flushing
	  Fixes #2384 for good
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4233>

2023-03-17 16:32:45 +0200  Sebastian Dröge <sebastian@centricular.com>

	* ext/gl/gstglfilterglass.c:
	  plugins: Fix various trivial clang compiler warnings
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4221>

2023-03-17 09:58:55 +0100  Edward Hervey <edward@centricular.com>

	* gst/playback/gsturisourcebin.c:
	  urisourcebin: Propagate sticky events from parsebin
	  If sticky events are present on parsebin source pads, we propagate them to the
	  multiqueue source pads. Those will be propagated on the new urisourcebin source
	  pads like in the other code paths.
	  This ensures that STREAM_START event are present on new source pads. If CAPS
	  event are also present (not guaranteed), they will also be available.
	  Fixes #2384
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4218>

2023-03-04 16:13:04 +0000  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development

=== release 1.22.1 ===

2023-03-04 13:42:32 +0000  Tim-Philipp Müller <tim@centricular.com>

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

2023-03-01 16:26:20 -0500  Nicolas Beland <nicolas@inogeni.com>

	* ext/alsa/gstalsasink.c:
	* ext/alsa/gstalsasink.h:
	  alsasink: Fix stall when going from PLAYING to NULL (stucked at PAUSED) with uac1 gadget
	  This happened with a uac1 gadget which for some reason does not behave nicely.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4104>

2023-02-27 08:23:38 +0100  Carlos Falgueras García <cfalgueras@fluendo.com>

	* gst-libs/gst/gl/gstgldisplay.c:
	  gldisplay: Remove unused code
	  The code related with environment variable `GST_GL_PLATFORM` is unused
	  since commit 33c60bdbf9ae2fd2e88099ad89ad836b8b78c2f5.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/4091>
