=== release 1.24.9 ===

2024-10-30 20:33:30 +0000  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.9

2024-10-29 17:39:02 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/flv/gstflvmux.c:
	  flvmux: Consider timestamps before segment start to map to segment start
	  Instead of mapping them to running time 0, which is wrong if e.g. the segment
	  base is not equal to 0.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7798>

2024-10-29 15:30:59 +0200  Sebastian Dröge <sebastian@centricular.com>

	* gst/flv/gstflvmux.c:
	  flvmux: Use first running time on the initial header instead of 0
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7798>

2024-08-08 12:28:11 +0000  Johan Sternerup <johast@axis.com>

	* gst/rtpmanager/rtptwcc.c:
	* tests/check/elements/rtpsession.c:
	  twcc: Handle wrapping of reference time
	  Previously the wrapping of the 24-bit reference time was not handled
	  correctly when transforming it into GstClockTime. Given the unit of 64ms
	  the span that could be represented by 24 bits is 12 days and depending
	  on the start value we could get a wrapping problem anytime within this
	  time frame. This turned out to be particularly problematic for the GCC
	  algorithm in gst-plugins-rs which tried to evict old packages based on
	  the "oldest" timestamp, which due to wrapping problems could be in the
	  future. Thus, the container managing the packets could grow without
	  limits for a long time thereby creating both CPU and memory problems.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7792>

2024-10-29 16:43:33 +0000  Tim-Philipp Müller <tim@centricular.com>

	* docs/gst_plugins_cache.json:
	* gst/rtp/gstrtppassthroughpay.c:
	  rtppassthrough: fix rtp-stats message compatibility with GstRTPBasePayload
	  "clock-rate" and "pt" are G_TYPE_UINT in the base class, so let's
	  keep them like that here too, since the entire purposes of the
	  passthrough element is to fake being a payloader. The types in the
	  message don't have to be consistent with the types in the caps.
	  Reverts part of commit a6fa53b7 of !7526
	  https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7552#note_2576653
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7784>

2024-10-25 12:02:54 +0200  Ognyan Tonchev <ognyan@axis.com>

	* gst/rtpmanager/rtpsession.c:
	* gst/rtpmanager/rtpsource.c:
	  rtpmanager: skip RTPSources which are not ready in the RTCP generation
	  If a stream has an 'irregular' frame rate (e.g. metadata) RTCP SR
	  may be generated way too early, before the RTPSource has received
	  the first packet after Latency was configured in the pipeline.
	  We skip such RTPSources in the RTCP generation.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7777>

2024-10-03 12:48:31 +0200  Andoni Morales Alastruey <ylatuya@gmail.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: fix parsing of matrix with 180 rotation
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7665>

2024-09-26 09:15:34 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Check fourcc of a second CEA608 atom instead of assuming it's cdt2
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7583>

2024-09-23 16:48:26 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* docs/gst_plugins_cache.json:
	  doc: good: Update documentation cache
	  video4linux2 plugin now maps RGB15 which his didn't before.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-09-18 13:14:32 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Fix a gvalue leak on error
	  In case we failed enumerating the supported interlacing mode, we leaked the
	  gvalue.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-09-17 14:27:46 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2videodec.c:
	* sys/v4l2/gstv4l2videoenc.c:
	  v4l2: dec/enc: Flag leaked caps
	  We never free class held template caps, so flag the one that wasn't already
	  flagged.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-08-15 16:54:25 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2: object: Fix condition check to emit error
	  The check was reversed, so we could only emit a pipeline error
	  if there was no element associated with the object.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-09-17 13:28:45 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Always tell capture queue that we want to set the CSC
	  Not all drivers supports it, but in general we want to try and match the
	  negotiated caps, so lets always try to set the CSC.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-08-15 16:01:03 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2: object: Fix support for format:Interlaced in caps probe
	  This notably follow the way we order the template and keeps the
	  format:Interlaced caps at the end. This change also fixes
	  an early skip check, that would skip if a driver only supports
	  alternate interlacing for a specific format. It also fixes
	  a bug where only the last resolution of a discrete frame size
	  was allowed to use format:Interlaced. Finally, similar to template
	  caps code, simplify the caps for earch featurs, making the debug output
	  manageable and (marginally) improve negotiation speed.
	  This change will make it easier to introduce memory:DMABuf.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-08-15 13:07:31 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2.c:
	* sys/v4l2/gstv4l2object.c:
	* sys/v4l2/gstv4l2object.h:
	  v4l2: Move M2M template caps probe into v4l2object
	  This allow reusing the code that produces output and capture devices
	  templates. This fixes the lack of Interlaced caps feature for M2M
	  devices such as decoder, encoder or converters.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-08-14 15:26:58 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2: object: Remove over indentation
	  This is a style fix, no functional changes.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-08-14 15:21:44 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2: object: Map GST/V4L2 formats in a C array
	  This makes it easier to add new format in the future without
	  forgetting to update one of the numerous switch case. This
	  will also help mapping DRM formats.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-08-14 10:13:44 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	* sys/v4l2/gstv4l2object.h:
	  v4l2object: Expose convertion from v4l2 fourcc to GstVideoFormat
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-08-14 09:52:54 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Change dimensions format desc field to flag
	  The boolean naming wasn't obvious, and having this as a flag makes
	  the structure a little more compact.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7563>

2024-07-29 09:07:40 +0800  Shengqi Yu <shengqi.yu@mediatek.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: append non colorimetry structure to probed caps
	  If the stream has a special colorimetry that is not in the colorimetry
	  list, it will cause negotiation to fail. We should allow passing any
	  colorimetry, so add an extra structure without the colorimetry field.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7570>

2024-09-24 09:50:34 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: Skip zero-sized boxes instead of stopping to look at further boxes
	  A zero-sized box is not really a problem and can be skipped to look at any
	  possibly following ones.
	  BMD ATEM devices specifically write a zero-sized bmdc box in the sample
	  description, followed by the avcC box in case of h264. Previously the avcC box
	  would simply not be read at all and the file would be unplayable.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7565>

2024-08-13 15:07:07 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* ext/qt6/qt6glwindow.cc:
	* ext/qt6/qt6glwindow.h:
	  qml6glsrc: Reduce capture delay
	  In qml6glsrc, we capture the application by copying the back buffer into
	  our own FBO. The afterRendering() signal is too soon as from the apitrace, the
	  application has been rendered into a QT internal buffer, to be used as a cache
	  for refresh.
	  Use afterFrameEnd() signal instead. This works with no delay on GLES. With GL
	  it seems to reduce from 2 to 1 frame delay (this may be platform specific). A
	  different recording technique would need to be used to completely remove this
	  delay.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7562>

2024-09-18 12:34:39 +0200  Piotr Brzeziński <piotr@centricular.com>

	* docs/gst_plugins_cache.json:
	* gst/rtp/gstrtppassthroughpay.c:
	* gst/rtp/gstrtppassthroughpay.h:
	  rtppassthroughpay: Fix reading clock-rate and payload type from caps
	  They were using wrong types - while uint is correct technically, for compatibility reasons caps have them as signed int.
	  Values are now correctly read + added simple guards just to be sure.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7552>

2024-09-19 12:12:53 +0200  Tim-Philipp Müller <tim@centricular.com>

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

=== release 1.24.8 ===

2024-09-19 12:01:21 +0200  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.8

2024-08-13 16:38:37 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	* sys/v4l2/gstv4l2videoenc.c:
	  v4l2: encoder: Add dynamic framerate support
	  This is not trully supported in V4L2, but we can emulate this similar to
	  what other elements do. In this patch we ensure that 0/1 is supported by
	  encoders (caps query),and uses a default of 30fps whenever we need to
	  set a framerate into the driver.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7545>

2024-09-11 13:23:35 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/matroska/matroska-mux.c:
	  matroskamux: Include end padding in the block duration for Opus streams
	  It has to be included in the block duration but in GStreamer we're not
	  including it in the buffer duration, so it has to be added again here.
	  Not including it in the block duration can lead to fatal errors when playing
	  back with Firefox if there are more padding samples than actual samples, e.g.
	  > D/MediaDemuxer WebMDemuxer[7f6a0808b900] ::GetNextPacket: Padding frames larger
	  > than packet size, flagging the packet for error (padding: {13500000,1000000000},
	  > duration: {6000,1000000}, already processed: false)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7517>

2024-09-05 22:07:24 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/adaptivedemux2/gstadaptivedemux.c:
	* gst/deinterlace/gstdeinterlace.c:
	* gst/monoscope/gstmonoscope.c:
	* gst/shapewipe/gstshapewipe.c:
	* gst/videomixer/videomixer2.c:
	  video: Don't overshoot QoS earliest time by a factor of 2
	  By setting the earliest time to timestamp + 2 * diff there would be a difference
	  of 1 * diff between the current clock time and the earliest time the element
	  would let through in the future. If e.g. a frame is arriving 30s late at the
	  sink, then not just all frames up to that point would be dropped but also 30s of
	  frames after the current clock time.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7518>

2024-09-11 08:28:39 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/multifile/gstsplitmuxsink.c:
	  splitmuxsink: Override LATENCY query to pretend to downstream that we're not live
	  splitmuxsink can't possibly know how much latency it will introduce as it always
	  keeps one GOP around before outputting something. This breaks the latency
	  configuration of the pipeline and we're better off just pretending that
	  everything downstream of the sinkpads is not live.
	  Especially muxers that are based on aggregator and time out on the latency
	  deadline can easily misbehave otherwise as the deadline will be exceeded usually.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7515>

2024-09-09 13:49:58 +0200  Wim Taymans <wtaymans@redhat.com>

	* ext/jack/gstjackaudiosrc.c:
	  jackaudiosrc: actually use the queried ports from JACK
	  When no ports are given, gst_jack_get_ports() is called to get all the
	  (physical) output ports but then the result is ignored, triggering the
	  "No physical output ports found..." error.
	  Instead, move the queried ports to the variable we're going to use
	  later.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7488>

2024-09-09 11:23:53 -0400  Randy Li (ayaka) <ayaka@soulik.info>

	* sys/v4l2/gstv4l2bufferpool.c:
	  v4l2bufferpool: actually queue back the empty buffer flagged LAST
	  The buffer would fail at gst_v4l2_is_buffer_valid() before,
	  since it has a reference on it, it is not writable.
	  Fixes: 105d232fdec1 ("v4l2bufferpool: queue back the buffer flagged LAST but empty")
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7485>

2024-09-02 17:45:30 +0900  Hou Qi <qi.hou@nxp.com>

	* sys/v4l2/gstv4l2videoenc.c:
	  v4l2videoenc: unref buffer pool after usage properly
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7478>

2024-08-29 12:10:23 -0400  Thibault Saunier <tsaunier@igalia.com>

	* sys/osxaudio/gstosxaudiosink.c:
	* sys/osxaudio/gstosxaudiosrc.c:
	  osxaudio: Avoid dangling pointer on shutdown
	  When tearing down the elements we were still referring to the ringbuffer unique_id
	  as our property while it was already freed, leading to potential segfaults when
	  accessing the property.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7451>

2024-08-21 12:33:28 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.24.7

=== release 1.24.7 ===

2024-08-21 12:25:15 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.7

2024-07-22 19:28:13 +0800  Qian Hu (胡骞) <qian.hu@mediatek.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: handle unsupported hlg colorimetry gracefully
	  This patch addresses the issue where GStreamer would throw an error when
	  attempting to use bt2100-hlg colorimetry with V4L2, which is not
	  supported by the current V4L2 kernel. When bt2100-hlg colorimetry is set
	  from caps, the check for transfer (GST_VIDEO_TRANSFER_ARIB_STD_B67) is
	  bypassed.
	  The main improvement is to avoid checking the transfer value in
	  gst_v4l2_video_colorimetry_matches when it is
	  GST_VIDEO_TRANSFER_ARIB_STD_B67. This is because the transfer value in
	  the cinfo parameter comes from gst_v4l2_object_get_colorspace, which
	  converts the transfer to another value, causing a mismatch.
	  Since the kernel does not support GST_VIDEO_TRANSFER_ARIB_STD_B67,
	  gst_v4l2_object_get_colorspace cannot map it correctly from V4L2 to
	  GStreamer. Therefore, we ignore this check to prevent errors.
	  changes:
	  - Added a condition in gst_v4l2_video_colorimetry_matches to bypass the
	  transfer check when the transfer is GST_VIDEO_TRANSFER_ARIB_STD_B67.
	  - Ensured that the pipeline does not throw errors due to unsupported
	  bt2100-hlg colorimetry in V4L2.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7369>

2024-07-03 16:03:47 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* docs/gst_plugins_cache.json:
	* gst/rtsp/gstrtspsrc.c:
	* gst/rtsp/gstrtspsrc.h:
	  rtspsrc: expose property for forcing usage of non-compliant URLs
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7346>

2024-08-07 15:56:08 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* ext/qt6/qt6glwindow.cc:
	  qt6glwindow: Fallback to GL_RGB on CopyTexImage2D error
	  With GLES 2.0 we are forced to use CopyTextImage2D which requires
	  passing an internal format. With QT6 eglfs, we need to pass GL_RGB
	  instead, probably because of how the texture has been created. As its
	  hard to guess, simply fallback to GL_RGB on failure. This fixes usage
	  or qml6glsrc with eglfs backend, without loosing support for
	  semi-transparent window on other platforms.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7345>

2024-08-01 11:21:09 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* ext/qt6/qt6glwindow.cc:
	  qmlgl6src: Fix crash when use-default-fbo is false
	  When that property is set to its default qmlgl6src element simply crash
	  as it will call gst_video_frame_unmap() twice.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7344>

2024-08-01 12:15:17 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* ext/qt6/qt6glwindow.cc:
	  qt6glwindow: Only use GL_READ_FRAMEBUFFER when we do blits
	  This fbo target is not always supported, and should only be used
	  along with the frame buffer blit extension.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7295>

2024-07-31 09:06:21 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* ext/qt6/qt6glwindow.cc:
	  qt6: glwindow: Don't leak previously rendered buffer
	  If the consumer reads the buffers too slowily, simply unref the
	  previously rendered buffer instead of leaking it.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7289>

2023-02-13 16:49:40 +0800  Hou Qi <qi.hou@nxp.com>

	* sys/v4l2/gstv4l2object.c:
	* sys/v4l2/gstv4l2object.h:
	  v4l2: Fix colorimetry mismatch for encoded format with RGB color-matrix
	  video-info supports encoded format to have RGB color-matrix, while
	  v4l2object just leave the v4l2 matrix to default when mapping
	  GST_VIDEO_COLOR_MATRIX_RGB. It causes gst matrix changed to be
	  GST_VIDEO_COLOR_MATRIX_BT601 when mapping v4l2 colorimetry.
	  So add support for encoded format with RGB color-matrix in v4l2object.
	  Note that for M2M encoders, we should in theory assume that that we can
	  transfer this value from OUTPUT to CAPTURE queues, though its only true
	  if the drivers does not do CSC. For now, we don't support any RGB
	  codecs, but leaving a note for the future.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>

2024-07-29 14:39:06 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: SRGB colorspace is documented limited-range
	  Split JPEG and SRGB so that we can follow the specified difference. The
	  SRGB definition in V4L2 does not follow the standard, and is document
	  so. This is also why JPEG colorspace exists.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>

2024-07-29 11:40:01 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Fix size of plane_size array calculation
	  Due to missing parenthesys, only the first element of the array was
	  being cleared. As it is a staticly sized array in the object, this
	  code could also be simplified.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>

2024-07-29 11:37:29 -0400  Nicolas Dufresne <nicolas.dufresne@collabora.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: Fix translation of quantization
	  The V4L2_MAP_QUANTIZATION macro has been fixed to something a lot saner,
	  fix our replica accordingly. The new macro now simply set the quantization
	  to full range is the pixel formats is RGB based, or if the JPEG
	  colorspace is used.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7284>

2024-07-29 16:48:02 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.24.6

=== release 1.24.6 ===

2024-07-29 16:41:37 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.6

2024-06-01 15:15:18 +0300  Piotr Brzeziński <piotr@centricular.com>

	* sys/osxaudio/gstosxaudiodeviceprovider.c:
	  macos: Listen for audio devices being added/removed
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7258>

2024-06-12 23:25:52 +1000  Matthew Waters <matthew@centricular.com>

	* ext/qt/gstqsgmaterial.cc:
	  qml/glsink: also support GLES2 needing shader 'precision' directives
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3616
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7125>

2024-07-23 15:32:22 +0200  Loïc Yhuel <loic.yhuel@softathome.com>

	* meson.build:
	  meson: fix SIZEOF_OFF_T when cross-compiling with Meson >= 1.3.0
	  https://mesonbuild.com/Release-notes-for-1-3-0.html#clarify-of-implicitlyincluded-headers-in-clike-compiler-checks
	  With only stddef.h, off_t is not defined, so when cross-compiling SIZEOF_OFF_T is -1.
	  We now use sys/types.h which should define off_t.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7218>

2024-07-01 10:00:42 +0800  Shengqi Yu <shengqi.yu@mediatek.com>

	* sys/v4l2/gstv4l2object.c:
	  v4l2object: use v4l2 reported width for padded_width when complex video formats
	  Stride means bytes per line, and padded_width means pixels. Here,
	  padded_width shoule be pix width reported by v4l2 instead of stride.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7122>

2024-06-02 11:40:04 +0300  Jan Schmidt <jan@centricular.com>

	* ext/adaptivedemux2/hls/m3u8.c:
	  adaptivedemux: Fix handling closed caption streams
	  Fix a typo "CLOSED_CAPTION" -> "CLOSED-CAPTION" and
	  a broken if statement that always bailed out for
	  closed captions
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7105>

2024-06-20 13:02:19 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.24.5

=== release 1.24.5 ===

2024-06-20 12:54:15 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.5

2024-06-19 02:10:29 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/dtmf/gstrtpdtmfsrc.c:
	  rtpdtmfsrc: minor logging clean-up
	  Only serialise event structure for debug logging purposes
	  if logging is actually enabled.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7062>

2024-06-19 01:55:57 +0100  Tim-Philipp Müller <tim@centricular.com>

	* gst/dtmf/gstrtpdtmfsrc.c:
	* tests/check/elements/dtmf.c:
	  rtpdtmfsrc: fix leak when shutting down mid-event
	  .. and update rtpdtmfdepay unit test to trigger
	  the potential leak more reliably (without the fix).
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3633
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7062>

2024-06-14 16:50:12 +0100  Tim-Philipp Müller <tim@centricular.com>

	* tests/check/elements/dtmf.c:
	  rtpdtmfdepay: add unit test for caps fixation issue with downstream audioconvert
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7048>

2024-06-14 16:20:31 +0100  Tim-Philipp Müller <tim@centricular.com>

	* docs/gst_plugins_cache.json:
	* gst/dtmf/gstrtpdtmfdepay.c:
	* tests/check/elements/dtmf.c:
	  rtpdtmfdepay: fix caps negotiation with audioconvert
	  Specify "layout" field in src template to make sure it's
	  set and gets fixated properly if the downstream element
	  supports both interleaved and non-interleaved caps.
	  Fixes
	  gst_pad_set_caps: assertion 'caps != NULL && gst_caps_is_fixed (caps)' failed
	  critical with e.g.
	  gst-launch-1.0 rtpdtmfsrc ! rtpdtmfdepay ! audioconvert ! fakesink
	  Not that the layout really matters in our case since we always
	  output mono anyway, but non-interleaved requires adding AudioMeta,
	  so this is the easiest fix.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7048>

2024-06-13 18:23:46 +0200  Mathieu Duponchelle <mathieu@centricular.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: fix invalid seqnum assertions
	  Upon fatal errors the loop function will first post an error message
	  then push out an EOS event.
	  An application may react immediately to the error message by setting the
	  state of the pipeline to NULL, meaning by the time we push out the EOS
	  event PAUSED_TO_READY may have reset the seek seqnum to -1.
	  While this is harmless, the assertion when setting an invalid seqnum
	  isn't tidy, fix this by simply not resetting to INVALID as it serves no
	  practical purpose and the next READY_TO_PAUSED will select a new seqnum
	  anyway.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7034>

2024-06-11 19:03:21 +0000  Jakub Vaněk <linuxtardis@gmail.com>

	* sys/v4l2/gstv4l2src.c:
	  v4l2src: Interpret V4L2 report of sync loss as video signal loss
	  Certain V4L2 drivers can report that a video receiver is seeing
	  some signal, but that it is unable to synchronize to it. IOW: the driver
	  can sometimes report V4L2_IN_ST_NO_SYNC and not report V4L2_IN_ST_NO_SIGNAL.
	  In particular, I've seen the tc358743 (HDMI-to-CSI2 converter) driver
	  sometimes report this when deployed to a fleet of embedded Raspberry Pis.
	  The relevant kernel code is in [1]. The video output is not practically
	  usable when V4L2_IN_ST_NO_SYNC is reported (only visually corrupted frames,
	  sometimes with random "snow", are received). I assume that this happens when
	  either the HDMI cable is poorly plugged in or damaged or when a CSI2 FFC
	  cable is used and is damaged.
	  The change in this commit is useful for detecting this working-but-not-really
	  condition in application code. Applications already listening for the "Signal lost"
	  message will gain the ability to handle this condition.
	  There seem to be more V4L2 error flags like this, see [2]. However, I do not
	  have practical experience with them and adding only V4L2_IN_ST_NO_SYNC seems
	  like a safer option.
	  [1]: https://github.com/raspberrypi/linux/blob/be8498ee21aa/drivers/media/i2c/tc358743.c#L1534
	  [2]: https://www.kernel.org/doc/html/v6.6/userspace-api/media/v4l/vidioc-enuminput.html
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/7027>

2024-06-04 15:30:37 +0000  Corentin Damman <c.damman@intopix.com>

	* ext/qt6/gstqsg6material.cc:
	  gstqsg6material: fix RGB format support
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6997>

2024-05-27 14:14:24 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: Only update from the Content-Base header in the initial OPTION / DESCRIBE response
	  Some servers send a new content base in the SETUP response, which is
	  just the non-aggregate control URL of the individual streams.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3563
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6982>

2024-05-26 14:03:11 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: Handle the case of `*` as session-wide control URL from the SDP
	  Just like the comment above says this is supposed to indicate that the
	  same URL should be used as for the connection so far. If encountering
	  this case simply do nothing.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6982>

2024-05-26 14:02:12 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: Also handle `rtsps://` and similar URLs as absolute in other places
	  Previously a direct comparison with `rtsp://` was performed, which
	  didn't catch cases like `rtsps://`.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3563
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6982>

2024-05-26 13:00:02 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/rtsp/gstrtspsrc.c:
	  rtspsrc: Don't try the SETUP workaround for broken servers with absolute control URIs
	  Previously only control URIs that started with "rtsp://" were ignored
	  but it makes more sense to ignore all absolute URIs.
	  gst_uri_is_valid() conveniently checks for exactly that.
	  See https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3563
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6982>

2024-05-28 13:04:20 +0200  Edward Hervey <bilboed@bilboed.com>

	* ext/adaptivedemux2/hls/m3u8.c:
	  hlsdemux2: Minor refactoring of starting segment check
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-15 08:47:12 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/m3u8.c:
	  hlsdemux2: Be more tolerant when matching segments with PDT
	  Some servers might not provide 100% matching PDT when doing updates, or accross
	  variants. This would cause the code matching segments using PDT to fail if the
	  segment PDT was 1 microsecond (or whatever small value) before the candidate
	  segment. And would pick the (wrong) following segment as the matching one.
	  In order to be more tolerant when matching, we instead check whether the
	  candidate segment is within the first segment of the segment we are trying to
	  match.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-12 15:53:08 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/gsthlsdemux-stream.c:
	  hlsdemux2: Fix failure to find a replacement segment on resync
	  If we end up with a segment with an internal time that varies from the supposed
	  one, this could be for two reasons:
	  * We guess-timated the wrong segment to go to when advancing or switching
	  variants. In that case we try to find the actual segment to go to (just before
	  this change).
	  * There was a complete playlist change (for whatever reason) and we can't find a
	  replacement. In that case we want to carry on playback from this position but
	  need to remember that we moved (by setting the stream to DISCONT, and
	  resetting the new mapping).
	  Fixes playback on several broken stream
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-12 15:52:23 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/gsthlsdemux-stream.c:
	* ext/adaptivedemux2/hls/gsthlsdemux.c:
	* ext/adaptivedemux2/hls/gsthlsdemux.h:
	  hlsdemux2: Refactor update of GstHLSTimeMap values
	  This was also missing transferring the PDT if present
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-12 15:48:34 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/m3u8.c:
	  hlsdemux2: Fix parsing of EXT-X-DISCONTINUITY-SEQUENCE:0
	  Since the default value of `m3u8->discont_sequence` (before parsing of the
	  playlist data) was 0 .. we would never properly detect the presence of that
	  field if it was present with a value of 0.
	  This would later on cause havoc in playlist synchronization where we would
	  assume it didn't have a discontinuity sequence specified (whereas it did, and it
	  was 0).
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-12 15:45:16 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/gsthlsdemux-stream.c:
	  hlsdemux2: Increase tolerance for discontinuity detection
	  A lot of streams will do a poor job of estimating proper duration of fragments
	  in the playlist, but over several fragments have it correct.
	  Instead of constantly trying to realign the estimated stream time, allow for a
	  more realistic tolerance of 3-4 video frames
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-11 16:37:36 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/gsthlsdemux-stream.c:
	  hlsdemux2: Ensure a discont will be set when resetting for lost sync
	  This is to ensures we inform the demuxer/parsers that what follows is not contiguous
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-11 15:30:27 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/gsthlsdemux-stream.c:
	* ext/adaptivedemux2/hls/gsthlsdemux-stream.h:
	* ext/adaptivedemux2/hls/gsthlsdemux.c:
	* ext/adaptivedemux2/hls/m3u8.c:
	* ext/adaptivedemux2/hls/m3u8.h:
	  hlsdemux2: Fix handling of variant switching and playlist updates
	  When updating playlists, we want to know whether the updated playlist is
	  continuous with the previous one. That is : if we advance, will the next
	  fragment need to have the DISCONT buffer set on it or not.
	  If that happens (because we switched variants, or the playlist all of a sudden
	  changed) we remember that there is a pending discont for the next fragment. That
	  will be used and resetted the next time we get the fragment information.
	  Previously this was only partially done. And it was racy because it was set
	  directly on `GstAdaptiveDemux2Stream->discont` when a playlist was updated,
	  instead of when the next fragment was prepared.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-11 15:19:50 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/gstadaptivedemux-stream.c:
	  adaptivedemux2: Only set DISCONT on beginning of fragments
	  This avoids accidentally setting it in the middle of a fragment, which could
	  cause havoc in demuxer/parsers
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-04-08 16:13:13 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/hls/m3u8.c:
	  hlsdemux2: Fix getting starting segment on live playlists
	  When dealing with live streams, the function was assuming that all segments of
	  the playlist had valid stream_time. But that isn't TRUE, for example in the case
	  of failing to synchronize playlists.
	  Fixes losing sync due to not being able to match playlist on updates
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6961>

2024-05-13 11:08:15 +0300  Sergey Krivohatskiy <s.krivohatskiy@gmail.com>

	* gst/audioparsers/gstflacparse.c:
	  flacparse: fix buffer overflow in gst_flac_parse_frame_is_valid
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6960>

2024-05-29 13:51:27 +0300  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.24.4

=== release 1.24.4 ===

2024-05-29 13:44:50 +0300  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.4

2024-05-21 17:49:33 +0300  Sebastian Dröge <sebastian@centricular.com>

	* ext/gtk/gstgtkbasesink.c:
	  gtk: Fail initialization of the sink if GTK4 is already initialized in the same process
	  Initializing GTK3 and GTK4 in the same process does not work and is not
	  supported.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6905>

2024-05-21 17:49:42 +0200  Piotr Brzeziński <piotr@centricular.com>

	* sys/osxaudio/gstosxcoreaudio.c:
	* sys/osxaudio/gstosxcoreaudio.h:
	* sys/osxaudio/gstosxcoreaudiocommon.h:
	  osxaudio: Avoid using private APIs on iOS
	  Turns out AudioConvertHostTimeToNanos and AudioGetCurrentHostTime are macOS-only APIs, which prevents apps using
	  GStreamer on iOS from being accepted into App Store.
	  This commit replaces those functions with a manual version of what they do - mach_absolute_time() for the current time,
	  and data from mach_timebase_info() at the beginning to convert host timestamps to nanoseconds.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6899>

2024-05-09 10:01:22 +0300  Sebastian Dröge <sebastian@centricular.com>

	* gst/level/gstlevel.c:
	  level: Don't post a message on EOS without a valid audio info
	  If EOS is received before caps, e.g. because of an error, then rate and
	  number of channels would be 0 and some divisions by zero would happen.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6828>

2024-05-05 18:29:39 +0300  Sebastian Dröge <sebastian@centricular.com>

	* tests/check/elements/qtdemux.c:
	  qtdemux: Use `G_GUINT64_CONSTANT` when creating test caps
	  Otherwise this fails on 32 bit platforms.
	  Fixes https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3521
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6806>

2024-04-30 00:36:59 +0100  Tim-Philipp Müller <tim@centricular.com>

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

=== release 1.24.3 ===

2024-04-30 00:15:23 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.3

2024-04-22 10:40:13 -0400  William Wedler <william.wedler@videoray.com>

	* ext/qt/qtitem.cc:
	  fix: qmlglsink: video content resizes to new item size
	  Mark geometry dirty when the item rectangle changes in the
	  QtGLVideoItem::updatePaintNode method. This allows changes in the bounding
	  rectangle to be applied to the scene graph geometry node.
	  Fixes #3493
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6759>

2024-04-22 10:35:18 -0400  William Wedler <william.wedler@videoray.com>

	* ext/qt6/qt6glitem.cc:
	  fix: qml6glsink: video content resizes to new item size
	  Mark geometry dirty when the item rectangle changes in the
	  QtGLVideoItem::updatePaintNode method. This allows changes in the bounding
	  rectangle to be applied to the scene graph geometry node.
	  Fixes #3493
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6759>

2024-02-19 21:49:21 +0800  Tim Blechmann <tim@klingt.org>

	* sys/v4l2/v4l2_calls.c:
	  v4l2: silence valgrind warning
	  Valgrind complains about uninitialized memory used in an ioctl
	  Syscall param ioctl(VKI_V4L2_G_TUNER).reserved points to uninitialised byte(s)
	  at 0x719294F: ioctl (ioctl.c:36)
	  by 0x3126A817: gst_v4l2_fill_lists (v4l2_calls.c:185)
	  by 0x3126A817: gst_v4l2_open (v4l2_calls.c:589)
	  by 0x3123F1C2: gst_v4l2_device_provider_probe_device (gstv4l2deviceprovider.c:122)
	  by 0x3123F648: gst_v4l2_device_provider_device_from_udev (gstv4l2deviceprovider.c:301)
	  by 0x3123F998: provider_thread (gstv4l2deviceprovider.c:395)
	  by 0x796FA50: ??? (in /usr/lib/x86_64-linux-gnu/libglib-2.0.so.0.7200.4)
	  by 0x710CAC2: start_thread (pthread_create.c:442)
	  by 0x719DA03: clone (clone.S:100)
	  Address 0x44008a34 is on thread 11's stack
	  in frame #1, created by gst_v4l2_open (v4l2_calls.c:524)
	  Uninitialised value was created by a stack allocation
	  at 0x3126A024: gst_v4l2_open (v4l2_calls.c:524)
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6761>

2024-04-26 09:45:22 +0800  Tim Blechmann <tim@klingt.org>

	* ext/soup/gstsouphttpsrc.c:
	  soup: fix thread name
	  thread names should be below 16char, otherwise they won't be shown on
	  linux.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6739>

2024-04-19 11:31:04 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/gstadaptivedemux.c:
	  adaptivedemux2: Answer GST_QUERY_CAPS
	  If we have a generic caps, we can answer the query.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6716>

2024-04-19 11:29:25 +0200  Edward Hervey <edward@centricular.com>

	* ext/adaptivedemux2/gstadaptivedemux.c:
	  adaptivedemux2: Refactor output slot creation
	  Set as much information as possible on the slot (including the associated
	  track) *before* the associated source pad is added to the element.
	  We need this so that incoming event/queries can be replied to if they are
	  received when adding the pad
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6716>

2024-04-05 17:30:01 +0200  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2allocator.c:
	  v4l2bufferpool: Ensure freshly created buffers are not marked as queued
	  Otherwise, if we run in to the copy case, this can cause these
	  groups to stay around with queued flag set, but never actually
	  queued, until gst_v4l2_allocator_flush() is called, which then
	  erroneously frees the associated memories, causing the release
	  function to decrement the allocator refcount where it was never
	  incremented, resulting in early allocator disposal, and either
	  deadlock or use after free.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6685>

2024-04-12 17:17:53 +0800  Qian Hu (胡骞) <qian.hu@mediatek.com>

	* docs/gst_plugins_cache.json:
	* sys/v4l2/gstv4l2object.c:
	  v4l2: add multiplane y42b(yuv422m)
	  for some jpg file, mediatek v4l2 jpeg decoder
	  hardware produce multi plane YUV 4:2:2 data
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6657>

2024-04-09 11:29:46 +0900  Hou Qi <qi.hou@nxp.com>

	* sys/v4l2/gstv4l2bufferpool.c:
	  v4l2bufferpool: queue back the buffer flagged LAST but empty
	  Some decoder drivers need to wait enough capture buffers before
	  starting to decode. But the dequeued buffer flag LAST but empty
	  has no chance to queue back to driver, which makes decode hang
	  after seek. So need to queue back such kind of buffer to driver.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6649>

2024-04-05 14:09:18 +0200  Philipp Zabel <p.zabel@pengutronix.de>

	* sys/v4l2/gstv4l2bufferpool.c:
	  v4l2: bufferpool: Drop writable check on output pool process
	  Output buffers don't have to be writable. Accepting read-only buffers
	  from the V4L2 buffer pool allows upstream elements to write directly
	  into the V4L2 buffers without triggering a CPU copy into a new buffer
	  from the same V4L2 buffer pool every time.
	  Tested with the vivid output device:
	  GST_DEBUG=GST_PERFORMANCE:7 gst-launch-1.0 videotestsrc ! v4l2sink device=/dev/video5
	  With this change, gst_v4l2_buffer_pool_dqbuf() must be allowed to not
	  resize read-only memories of output buffers.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6648>

2024-04-13 10:57:43 +0100  Philippe Normand <philn@igalia.com>

	* ext/vpx/gstvpxcompat.h:
	* ext/vpx/gstvpxdec.c:
	  vpxdec: Include vpx error details in errors and warnings
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6636>

2024-04-13 10:56:29 +0100  Philippe Normand <philn@igalia.com>

	* ext/vpx/gstvp9enc.c:
	  vp9enc: Include vpx error details in errors and warnings
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6636>

2024-04-13 10:55:55 +0100  Philippe Normand <philn@igalia.com>

	* ext/vpx/gstvpxcompat.h:
	* ext/vpx/gstvpxenc.c:
	  vpxenc: Rename GST_VPX_WARN to GST_VPX_ENC_WARN
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6636>

2024-04-12 16:57:00 +0800  Qian Hu (胡骞) <qian.hu@mediatek.com>

	* gst/isomp4/qtdemux.c:
	  qtdemux: fix wrong full_range offset when parsing colr box
	  use colr_data[18] >> 7 to get full range information, instead
	  of colr_data[17] >> 7
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6634>

2024-04-11 10:10:19 -0400  William Wedler <william.wedler@videoray.com>

	* ext/qt6/qt6glitem.cc:
	  fix: qml6glsink: Notify that the returned QSGNode node has changes
	  Sets the QSGNode::DirtyMaterial bit when a new buffer is used for the material's texture
	  Fixes: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/issues/3469
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6633>

2024-04-07 19:39:58 +0900  Jimmy Ohn <yongjin.ohn@lge.com>

	* ext/pulse/pulsedeviceprovider.c:
	  pulsedeviceprovider: Add is_default_device_name function and missing lock
	  Add is_default_device_name function to simplify compare device type
	  name and fix the missing lock when accessing default_sink_name and
	  default_source_name.
	  Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/6599>

2024-04-10 00:04:02 +0100  Tim-Philipp Müller <tim@centricular.com>

	* meson.build:
	  Back to development after 1.24.2

=== release 1.24.2 ===

2024-04-09 21:48:55 +0100  Tim-Philipp Müller <tim@centricular.com>

	* NEWS:
	* RELEASE:
	* gst-plugins-good.doap:
	* meson.build:
	  Release 1.24.2

2024-04-08 13:04:31 +0100  Philippe Normand <philn@igalia.com>

	* ext/vpx/gstvpxenc.c:
	  vpxenc: Include vpx error details in errors and warnings
