New Upstream Release - gst-plugins-base1.0
Ready changes
Summary
Merged new upstream version: 1.22.9 (was: 1.22.8).
Diff
diff --git a/ChangeLog b/ChangeLog
index 04353e48..2d0e2d71 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,76 @@
+=== 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>
diff --git a/NEWS b/NEWS
index d561a390..7b31da80 100644
--- a/NEWS
+++ b/NEWS
@@ -2736,6 +2736,131 @@ List of merge requests and issues fixed in 1.22.8
- List of Merge Requests applied in 1.22.8
- List of Issues fixed in 1.22.8
+1.22.9
+
+The ninth 1.22 bug-fix release (1.22.9) was released on 24 January 2024.
+
+This release only contains bugfixes and security fixes and it should be
+safe to update from 1.22.x.
+
+Highlighted bugfixes in 1.22.9
+
+- More Security fixes for the AV1 video codec parser
+- va: fixes for Mesa Gallium drivers in Mesa versions older than v23.2
+- v4l2src: Consider framerate during caps selection
+- v4l2codec: decoder fixes
+- rtspsrc: multicast fixes
+- camerabin viewfinder fixes
+- various bug fixes, build fixes, memory leak fixes, and other
+ stability and reliability improvements
+
+gstreamer
+
+- aggregator: fix use-after-free in queries processing
+- multiqueue: Ignore queue fullness for most events
+
+gst-plugins-base
+
+- audiobasesink: Don’t wait on gap events
+- audioconvert: change gst_audio_convert_get_unit_size() log levels
+- glcolorconvert: Correct transform_caps direction
+- gloverlay: Apply updated overlay coordinates correctly
+- videorate: keep pool if max_buffers is unlimited
+
+gst-plugins-good
+
+- rtpsession: Only warn once if configured latency needs to be known
+ but isn’t yet
+- rtphdrext-clientaudiolevel: Fix level value being written by the
+ extension
+- rtspsrc: set multicast-iface on udpsinks and fix RTCP sink TTL
+- v4l2object: clear old fds when initializing poll during opening v4l2
+ device
+- v4l2src: Consider framerate during caps selection
+- vpxdec: Use appropriate domain and code for decoding errors
+
+gst-plugins-bad
+
+- av1parser: Fix potential stack overflow during tile list parsing
+- camerabin: Correctly relink viewfinderbin_queue
+- GstPlay: Fix error details parsing
+- h264decoder: Handle malformed avc/avc3 packets
+- h264decoder: h265decoder: Align with wraparound fix
+- vp8decoder: vp9decoder: av1decoder: mpeg2decoder: Fix multiplication
+ wraparound
+- vah264enc/vah264dec issues after recent upgrade to 1.22.8 from
+ 1.22.7
+- va: fixes for Mesa Gallium drivers in Mesa versions older than v23.2
+- vp9parse: Fix critical warning during caps negotiation
+
+gst-plugins-ugly
+
+- No changes
+
+gst-plugins-rs
+
+- No changes
+
+gst-libav
+
+- No changes
+
+gst-rtsp-server
+
+- No changes
+
+gstreamer-vaapi
+
+- No changes
+
+gstreamer-sharp
+
+- No changes
+
+gst-omx
+
+- No changes
+
+gst-python
+
+- No changes
+
+gst-editing-services
+
+- No changes
+
+gst-validate + gst-integration-testsuites
+
+- No changes
+
+gst-examples
+
+- No changes
+
+Development build environment
+
+- No changes
+
+Cerbero build tool and packaging changes in 1.22.9
+
+- No changes
+
+Contributors to 1.22.9
+
+Alexander Slobodeniuk, Chao Guo, Damian Hobson-Garcia, Dan Searles,
+Guillaume Desmottes, Jan Schmidt, Marek Vasut, Mengkejiergeli Ba,
+Michael Tretter, Philippe Normand, Robert Mader, Sanchayan Maity,
+Sebastian Dröge, Seungha Yang, Tim-Philipp Müller, Víctor Manuel Jáquez
+Leal, Xavier Claessens,
+
+… and many others who have contributed bug reports, translations, sent
+suggestions or helped testing. Thank you all!
+
+List of merge requests and issues fixed in 1.22.9
+
+- List of Merge Requests applied in 1.22.9
+- List of Issues fixed in 1.22.9
+
Schedule for 1.24
Our next major feature release will be 1.24, and 1.23 will be the
@@ -2743,7 +2868,7 @@ unstable development version leading up to the stable 1.24 release. The
development of 1.23/1.24 will happen in the git main branch of the
GStreamer mono repository.
-The plan for the 1.24 development cycle is yet to be confirmed.
+The target for an initial 1.24 release is February 2024.
1.24 will be backwards-compatible to the stable 1.22, 1.20, 1.18, 1.16,
1.14, 1.12, 1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
diff --git a/RELEASE b/RELEASE
index ed965548..5f62c444 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,4 +1,4 @@
-This is GStreamer gst-plugins-base 1.22.8.
+This is GStreamer gst-plugins-base 1.22.9.
The GStreamer team is thrilled to announce a new major feature release
of your favourite cross-platform multimedia framework!
diff --git a/debian/changelog b/debian/changelog
index 8eff0c6c..ad28bc5d 100644
--- a/debian/changelog
+++ b/debian/changelog
@@ -1,3 +1,9 @@
+gst-plugins-base1.0 (1.22.9-1) UNRELEASED; urgency=low
+
+ * New upstream release.
+
+ -- Debian Janitor <janitor@jelmer.uk> Mon, 29 Jan 2024 07:07:08 -0000
+
gst-plugins-base1.0 (1.22.8-1) unstable; urgency=medium
* Team upload.
diff --git a/ext/gl/gstgloverlay.c b/ext/gl/gstgloverlay.c
index 7fcd8e73..9336791d 100644
--- a/ext/gl/gstgloverlay.c
+++ b/ext/gl/gstgloverlay.c
@@ -497,6 +497,8 @@ gst_gl_overlay_callback (GstGLFilter * filter, GstGLMemory * in_tex,
gl->BindVertexArray (overlay->overlay_vao);
}
+ _bind_buffer (overlay, overlay->overlay_vbo);
+
if (overlay->geometry_change) {
gint render_width, render_height;
gfloat x, y, image_width, image_height;
@@ -536,8 +538,6 @@ gst_gl_overlay_callback (GstGLFilter * filter, GstGLMemory * in_tex,
GL_STATIC_DRAW);
}
- _bind_buffer (overlay, overlay->overlay_vbo);
-
gl->BindTexture (GL_TEXTURE_2D, image_tex);
gst_gl_shader_set_uniform_1f (overlay->shader, "alpha", overlay->alpha);
diff --git a/gst-libs/gst/audio/gstaudiobasesink.c b/gst-libs/gst/audio/gstaudiobasesink.c
index 891941d1..1f843acf 100644
--- a/gst-libs/gst/audio/gstaudiobasesink.c
+++ b/gst-libs/gst/audio/gstaudiobasesink.c
@@ -1124,6 +1124,15 @@ gst_audio_base_sink_wait_event (GstBaseSink * bsink, GstEvent * event)
/* Make sure the ringbuffer will start again if interrupted during event_wait() */
g_atomic_int_set (&sink->eos_rendering, 1);
clear_force_start_flag = TRUE;
+
+ /* For gap events, don't actually wait for the clock to
+ * reach that time, or it will drain the ringbuffer, just
+ * ensure we're prerolled and let the next actual buffer
+ * get rendered where it belongs */
+ if (GST_EVENT_TYPE (event) == GST_EVENT_GAP) {
+ ret = gst_base_sink_do_preroll (bsink, GST_MINI_OBJECT_CAST (event));
+ goto done;
+ }
break;
default:
break;
diff --git a/gst-libs/gst/gl/gstglcolorconvert.c b/gst-libs/gst/gl/gstglcolorconvert.c
index 6ccfb143..1851dbe6 100644
--- a/gst-libs/gst/gl/gstglcolorconvert.c
+++ b/gst-libs/gst/gl/gstglcolorconvert.c
@@ -1255,7 +1255,7 @@ gst_gl_color_convert_transform_caps (GstGLContext * context,
GstPadDirection direction, GstCaps * caps, GstCaps * filter)
{
caps = gst_gl_color_convert_caps_transform_format_info (context,
- direction == GST_PAD_SRC, caps);
+ direction == GST_PAD_SINK, caps);
if (filter) {
GstCaps *tmp;
diff --git a/gst-plugins-base.doap b/gst-plugins-base.doap
index 8e9e9607..ccd83a8b 100644
--- a/gst-plugins-base.doap
+++ b/gst-plugins-base.doap
@@ -34,6 +34,16 @@ A wide range of video and audio decoders, encoders, and filters are included.
</GitRepository>
</repository>
+ <release>
+ <Version>
+ <revision>1.22.9</revision>
+ <branch>1.22</branch>
+ <name></name>
+ <created>2024-01-24</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.22.9.tar.xz" />
+ </Version>
+ </release>
+
<release>
<Version>
<revision>1.22.8</revision>
diff --git a/gst/audioconvert/gstaudioconvert.c b/gst/audioconvert/gstaudioconvert.c
index 474dcaea..43f07f54 100644
--- a/gst/audioconvert/gstaudioconvert.c
+++ b/gst/audioconvert/gstaudioconvert.c
@@ -310,13 +310,13 @@ gst_audio_convert_get_unit_size (GstBaseTransform * base, GstCaps * caps,
goto parse_error;
*size = info.bpf;
- GST_INFO_OBJECT (base, "unit_size = %" G_GSIZE_FORMAT, *size);
+ GST_DEBUG_OBJECT (base, "unit_size = %" G_GSIZE_FORMAT, *size);
return TRUE;
parse_error:
{
- GST_INFO_OBJECT (base, "failed to parse caps to get unit_size");
+ GST_WARNING_OBJECT (base, "failed to parse caps to get unit_size");
return FALSE;
}
}
diff --git a/gst/videorate/gstvideorate.c b/gst/videorate/gstvideorate.c
index 4a097306..4e42775d 100644
--- a/gst/videorate/gstvideorate.c
+++ b/gst/videorate/gstvideorate.c
@@ -1372,7 +1372,7 @@ gst_video_rate_propose_allocation (GstBaseTransform * trans,
gst_query_parse_nth_allocation_pool (query, i, &pool, &size, &min, &max);
- if (min == max) {
+ if (max != 0 && min == max) {
if (pool)
gst_object_unref (pool);
gst_query_remove_nth_allocation_pool (query, i);
diff --git a/meson.build b/meson.build
index 64589409..150d6d60 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
project('gst-plugins-base', 'c',
- version : '1.22.8',
+ version : '1.22.9',
meson_version : '>= 0.62',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])
diff --git a/po/gst-plugins-base-1.0.pot b/po/gst-plugins-base-1.0.pot
index fe7b5404..c73df5da 100644
--- a/po/gst-plugins-base-1.0.pot
+++ b/po/gst-plugins-base-1.0.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base-1.22.8\n"
+"Project-Id-Version: gst-plugins-base-1.22.9\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-12-18 12:11+0000\n"
+"POT-Creation-Date: 2024-01-24 18:22+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
diff --git a/po/gst-plugins-base.pot b/po/gst-plugins-base.pot
index fe7b5404..c73df5da 100644
--- a/po/gst-plugins-base.pot
+++ b/po/gst-plugins-base.pot
@@ -6,9 +6,9 @@
#, fuzzy
msgid ""
msgstr ""
-"Project-Id-Version: gst-plugins-base-1.22.8\n"
+"Project-Id-Version: gst-plugins-base-1.22.9\n"
"Report-Msgid-Bugs-To: \n"
-"POT-Creation-Date: 2023-12-18 12:11+0000\n"
+"POT-Creation-Date: 2024-01-24 18:22+0000\n"
"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n"
"Last-Translator: FULL NAME <EMAIL@ADDRESS>\n"
"Language-Team: LANGUAGE <LL@li.org>\n"
More details
Historical runs
- failed: build failed stage apt-get-dist-upgrade
- malformed-transform: Tree transform is malformed [('unversioned executability', 'new-6'), ('unversioned executability', 'new-82'), ('unversioned executability', 'new-92'), ('unversioned executability', 'new-121'), ('unversioned executability', 'new-335'), ('unversioned executability', 'new-343'), ('unversioned executability', 'new-347'), ('unversioned executability', 'new-353'), ('unversioned executability', 'new-362'), ('unversioned executability', 'new-366'), ('unversioned executability', 'new-381'), ('unversioned executability', 'new-423')]
- malformed-transform: Tree transform is malformed [('unversioned executability', 'new-6'), ('unversioned executability', 'new-82'), ('unversioned executability', 'new-92'), ('unversioned executability', 'new-121'), ('unversioned executability', 'new-335'), ('unversioned executability', 'new-343'), ('unversioned executability', 'new-347'), ('unversioned executability', 'new-353'), ('unversioned executability', 'new-362'), ('unversioned executability', 'new-366'), ('unversioned executability', 'new-381'), ('unversioned executability', 'new-423')]