summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2021-09-08 20:01:46 +0100
committerTim-Philipp Müller <tim@centricular.com>2021-09-08 20:01:48 +0100
commit71c213f99ad5c8fc8f36a26238483f2bdf7d846a (patch)
treee6a1f701a9a66ce741513a04a5fbd992237a14d3
parent0b7c8ea66169caa7e263aeb0819254729e9245ef (diff)
Release 1.18.51.18.5
-rw-r--r--ChangeLog333
-rw-r--r--NEWS318
-rw-r--r--RELEASE2
-rw-r--r--gstreamer.doap10
-rw-r--r--meson.build2
5 files changed, 656 insertions, 9 deletions
diff --git a/ChangeLog b/ChangeLog
index 46efc7fa4c..44e40e6b8a 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,336 @@
+=== release 1.18.5 ===
+
+2021-09-08 20:01:46 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * ChangeLog:
+ * NEWS:
+ * RELEASE:
+ * gstreamer.doap:
+ * meson.build:
+ Release 1.18.5
+
+2020-12-24 00:40:33 +0700 Dmitry Samoylov <dmitry.samoylov@quantumsoft.ru>
+
+ * gst/gstvalue.c:
+ gst: Fix doc comments
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/883>
+
+2021-04-02 19:48:26 -0400 Chris White <cxwembedded@gmail.com>
+
+ * gst/gstchildproxy.c:
+ gst_child_proxy_get_property: accept G_VALUE_INIT
+ gst_child_proxy_get_property() can now take a value initialized to
+ G_VALUE_INIT. This parallels the corresponding change in
+ g_object_get_property(), GLib 2.60+.
+ https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/724#note_738531
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/882>
+
+2021-09-06 01:43:57 +1000 Jan Schmidt <jan@centricular.com>
+
+ * plugins/elements/gstmultiqueue.c:
+ multiqueue: Use running time of gap events for wakeups.
+ Use gap events to update the next_time of a queue the same
+ as buffers or segment events. Fixes problems where a group
+ consisting only of sparse streams primarily driven by
+ gap events would stall with a full multiqueue because
+ unlinked streams in the group were not being woken to
+ push data.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/881>
+
+2021-08-27 13:51:07 +1000 Matthew Waters <matthew@centricular.com>
+
+ * gst/gstelement.c:
+ element: NULL the lists of contexts in dispose()
+ If dispose() is called more than once, we may double unref the list of
+ GstContext's.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/876>
+
+2021-08-24 14:53:30 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * gst/gstpad.c:
+ pad: Keep IDLE probe hook alive during immediate callback
+ When the probe returns GST_PAD_PROBE_REMOVE and gets called concurrently
+ from the streaming thread while we're in the callback here, the hook has
+ already been destroyed by the time we've reacquired the object lock.
+ Consequently, cleanup_hook gets passed an invalid pointer.
+ Keep another reference to the hook alive to avoid this situation.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/874>
+
+2021-07-15 15:08:25 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst/parse/grammar.y.in:
+ parse: Backport "Don't do delayed property setting..."
+ Backport "parse: Don't do delayed property setting for top-level
+ properties."
+ Modified version of https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/832
+ that only warns when trying to set a non-existent property instead of
+ generating a hard parse error, to preserve compatibility.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/839>
+
+2021-08-20 16:34:16 +0200 Edward Hervey <edward@centricular.com>
+
+ * plugins/elements/gstconcat.c:
+ concat: Properly propagate seqnum of segment events
+ Was broken by https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/819
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/872>
+
+2021-08-18 10:23:38 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst/gstpad.c:
+ * tests/check/gst/gstpad.c:
+ pad: Ensure last flow return is set on sink pads in push mode
+ The last flow return field was never updated on sink pads in push mode. This
+ fixes it and makes it consistent.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/870>
+
+2021-08-10 13:35:14 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * gst/gstplugin.c:
+ plugin: load plugins with unknown license strings
+ We shouldn't fail to load plugins just because we don't
+ recognise the license string. It's not our job to validate
+ licenses, and the license list is outdated and ambiguous
+ anyway.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/865>
+
+2021-07-07 20:11:13 +0900 Seungha Yang <seungha@centricular.com>
+
+ * libs/gst/base/gstbasesink.c:
+ basesink: Don't swap rstart/rstop when stepping
+ Step handling is implemented based on unmodified start/stop
+ segment running time, and basesink takes rate into account for
+ stepping. This commit is partially undoing new behavior introduced by
+ the commit of 39b9cc554c960fec8d41f8394c41390883cadeed when stepping.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/858>
+
+2021-07-19 20:04:16 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * libs/gst/net/gstptpclock.c:
+ gstptpclock: Don't leak the GList
+ 120 bytes in 5 blocks are definitely lost in loss record 7,615 of 9,510
+ at 0x484486F: malloc (vg_replace_malloc.c:380)
+ by 0x58A2938: g_malloc (gmem.c:106)
+ by 0x58BA1F4: g_slice_alloc (gslice.c:1069)
+ by 0x588F059: g_list_prepend (glist.c:335)
+ by 0x5B9C5C0: select_best_master_clock (gstptpclock.c:756)
+ by 0x5B9CA8E: cleanup_cb (gstptpclock.c:1930)
+ by 0x589AD20: g_timeout_dispatch (gmain.c:4889)
+ by 0x589A4CE: UnknownInlinedFun (gmain.c:3337)
+ by 0x589A4CE: g_main_context_dispatch (gmain.c:4055)
+ by 0x58EE4E7: g_main_context_iterate.constprop.0 (gmain.c:4131)
+ by 0x5899A92: g_main_loop_run (gmain.c:4329)
+ by 0x5B9BA4C: ptp_helper_main (gstptpclock.c:1980)
+ by 0x58C8C31: g_thread_proxy (gthread.c:826)
+ 576 bytes in 24 blocks are definitely lost in loss record 8,782 of 9,510
+ at 0x484486F: malloc (vg_replace_malloc.c:380)
+ by 0x58A2938: g_malloc (gmem.c:106)
+ by 0x58BA1F4: g_slice_alloc (gslice.c:1069)
+ by 0x588F059: g_list_prepend (glist.c:335)
+ by 0x5B9C5C0: select_best_master_clock (gstptpclock.c:756)
+ by 0x5B9EFA0: handle_announce_message (gstptpclock.c:934)
+ by 0x5B9EFA0: handle_ptp_message (gstptpclock.c:1765)
+ by 0x5B9EFA0: have_stdin_data_cb (gstptpclock.c:1851)
+ by 0x589A4CE: UnknownInlinedFun (gmain.c:3337)
+ by 0x589A4CE: g_main_context_dispatch (gmain.c:4055)
+ by 0x58EE4E7: g_main_context_iterate.constprop.0 (gmain.c:4131)
+ by 0x5899A92: g_main_loop_run (gmain.c:4329)
+ by 0x5B9BA4C: ptp_helper_main (gstptpclock.c:1980)
+ by 0x58C8C31: g_thread_proxy (gthread.c:826)
+ by 0x5DA4298: start_thread (pthread_create.c:481)
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/857>
+
+2021-07-06 13:04:04 +0530 Nirbheek Chauhan <nirbheek@centricular.com>
+
+ * gst/gstpad.c:
+ gstpad: Don't spam INFO when default-chaining a buffer list
+ This is being logged for each buffer, so it should not use INFO.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/856>
+
+2021-07-02 01:59:18 +1000 Jan Schmidt <jan@centricular.com>
+
+ * gst/parse/grammar.y.in:
+ parse: Fix a critical when using the : operator.
+ Fix "has no handler with id" output criticals when the :
+ multilink operator is used. These were caused by disconnecting
+ a signal handler multiple times.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/850>
+
+2021-06-24 10:00:28 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * libs/gst/base/gstbasesrc.c:
+ basesrc: Print segments with GST_SEGMENT_FORMAT and not GST_PTR_FORMAT
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/844>
+
+2021-03-16 19:02:06 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * libs/gst/base/gstaggregator.c:
+ aggregator: Release the SRC lock while querying latency
+ This is required because the query could be intercepted and the
+ application could send any other requests to the element from this
+ thread.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/834>
+
+2021-05-11 21:16:01 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * plugins/elements/gstconcat.c:
+ concat: adjust running time offsets on events
+ When concat adjusts the base of the segments it forwards
+ downstream, it needs to also adjust the running time offsets,
+ as GstPad does when an offset is set by the application on a pad.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/823>
+
+2021-05-11 19:02:28 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * plugins/elements/gstconcat.c:
+ concat: fix locking in SEGMENT event handler
+ concat->current_start_offset needs the lock taken for safe access,
+ as it can be accessed from outside of the streaming thread, eg
+ in release_pad.
+ An early break is also added for an error case.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/822>
+
+2021-05-06 23:02:35 -0400 Doug Nazar <nazard@nazar.ca>
+
+ * plugins/elements/gstsparsefile.c:
+ sparsefile: Fix sparsefile on Win32
+ When switching between read/write a fseek() or fflush() is required.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/821>
+
+2021-05-06 23:00:57 -0400 Doug Nazar <nazard@nazar.ca>
+
+ * plugins/elements/gstdownloadbuffer.c:
+ downloadbuffer: close file before trying to remove
+ On Windows, the file handles must be closed before you can delete a file.
+ Also, it would cause an error if you try to close an already closed handle.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/821>
+
+2021-05-06 23:00:07 -0400 Doug Nazar <nazard@nazar.ca>
+
+ * plugins/elements/gstdownloadbuffer.c:
+ downloadbuffer: return flow error on read error
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/821>
+
+2021-05-06 12:54:46 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * plugins/elements/gstmultiqueue.c:
+ multiqueue: Ensure peer pad exists when iterating internal links
+ The pads can be NULL when we're racing with pad removal, e.g. when the
+ pads get removed between `gst_pad_iterate_internal_links` acquiring the
+ parent element and `gst_multi_queue_iterate_internal_links` locking the
+ multiqueue.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/811>
+
+2021-04-16 11:14:31 +0200 Miguel Paris <mparisdiaz@gmail.com>
+
+ * gst/gstpad.c:
+ pad: clear probes holding mutex
+ Protect clearing probes against concurrent modification which might happen
+ due to dispose does NOT guarantee that the object is not used anymore, as
+ it could be referenced again and so being continued used.
+ So, as in the rest of places where probes hook list is used, on dispose
+ it should be accessed holding the mutex "GST_OBJECT_LOCK (pad);" as
+ GHookList is not thread-safe.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/800>
+
+2021-04-16 11:36:33 +0200 Edward Hervey <edward@centricular.com>
+
+ * plugins/elements/gstqueue2.c:
+ queue2: Refuse all serialized queries when posting buffering messages
+ When posting buffering messages there are no safe places or timing to avoid
+ deadlocks.
+ Previously the code was trying to be "smart" by only forwarding serialized
+ queries if the queue was empty ... but that could happen when queue2 hadn't yet
+ posted a 100% buffering message. Meaning the pipeline might be paused and
+ pushing a serialized query downstream might never complete.
+ Therefore let's completely disable forwarding of serialized queries when
+ `queue2` is used as a buffering element (meaning `ALLOCATION` and `DRAIN`
+ queries).
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/797>
+
+2021-04-13 11:52:06 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst/gstsystemclock.c:
+ systemclock: Update monotonic reference time when re-scheduling
+ There is no guarantee that the clock is currently advancing, therefore if we
+ re-schedule (because of timeouts) a clock wait, we need to re-acquire the
+ current monotonic clock value against which we will wait.
+ Avoids spinning the cpu like mad (due to constant timeout) when clocks are
+ PAUSED.
+ Fixes #673
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/794>
+
+2021-04-07 04:46:23 -0400 Doug Nazar <nazard@nazar.ca>
+
+ * plugins/elements/gstclocksync.c:
+ clocksync: Fix providing system clock by default
+ clocksync defaults to sync=true so should advertise it by default.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/795>
+
+2021-03-18 14:46:15 +1100 Matthew Waters <matthew@centricular.com>
+
+ * gst/gstatomicqueue.c:
+ * gst/gstbuffer.c:
+ * gst/gstchildproxy.c:
+ * gst/gstdeviceprovider.c:
+ * gst/gstelement.c:
+ * gst/gstinfo.c:
+ * gst/gstparamspecs.c:
+ * gst/gstpluginloader.c:
+ * gst/gstpoll.c:
+ * gst/gstpreset.c:
+ * gst/gstpromise.c:
+ * gst/gstprotection.c:
+ * gst/gsttask.c:
+ * gst/gsturi.c:
+ * gst/gstvalue.c:
+ * libs/gst/base/gstaggregator.c:
+ * libs/gst/base/gstbaseparse.c:
+ * libs/gst/base/gstbasesink.c:
+ * libs/gst/base/gstbasesrc.c:
+ * libs/gst/base/gstbasetransform.c:
+ * libs/gst/base/gstflowcombiner.c:
+ * libs/gst/check/gstconsistencychecker.c:
+ * libs/gst/check/gstharness.c:
+ * libs/gst/controller/gsttimedvaluecontrolsource.c:
+ * libs/gst/net/gstnetaddressmeta.c:
+ * libs/gst/net/gstnetcontrolmessagemeta.c:
+ * plugins/elements/gstmultiqueue.c:
+ * plugins/elements/gstqueue2.h:
+ * plugins/elements/gstvalve.h:
+ * tests/check/gst/gstcontroller.c:
+ * tests/check/gst/gstmeta.c:
+ * tests/check/gst/gstminiobject.c:
+ * tests/check/gst/gstobject.c:
+ * tests/check/gst/gstpreset.c:
+ * tests/check/gst/gstprotection.c:
+ * tests/check/libs/controller.c:
+ * tests/examples/controller/control-sources.c:
+ gst: don't use volatile to mean atomic
+ volatile is not sufficient to provide atomic guarantees and real atomics
+ should be used instead. GCC 11 has started warning about using volatile
+ with atomic operations.
+ https://gitlab.gnome.org/GNOME/glib/-/merge_requests/1719
+ Discovered in https://gitlab.freedesktop.org/gstreamer/gst-plugins-good/-/issues/868
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/793>
+
+2021-04-06 20:56:55 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * libs/gst/base/gstaggregator.c:
+ * tests/check/libs/aggregator.c:
+ aggregator: Release pads' peeked buffer when removing the pad or finalizing it
+ The peeked buffer was always reset after calling ::aggregate() but under
+ no other circumstances. If a pad was removed after peeking and before
+ ::aggregate() returned then the peeked buffer would be leaked.
+ This can easily happen if pads are removed from the aggregator from a
+ pad probe downstream of the source pad but still in the source pad's
+ streaming thread.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gstreamer/-/merge_requests/785>
+
+2021-03-15 19:48:45 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson.build:
+ Back to development
+
=== release 1.18.4 ===
2021-03-15 17:47:24 +0000 Tim-Philipp Müller <tim@centricular.com>
diff --git a/NEWS b/NEWS
index 3ada8869cd..17f17457b8 100644
--- a/NEWS
+++ b/NEWS
@@ -2,13 +2,13 @@ GStreamer 1.18 Release Notes
GStreamer 1.18.0 was originally released on 8 September 2020.
-The latest bug-fix release in the 1.18 series is 1.18.4 and was released
-on 15 March 2021.
+The latest bug-fix release in the 1.18 series is 1.18.5 and was released
+on 8 September 2021.
See https://gstreamer.freedesktop.org/releases/1.18/ for the latest
version of this document.
-Last updated: Monday 15 March 2021, 13:00 UTC (log)
+Last updated: Wednesday 8 September 2021, 11:00 UTC (log)
Introduction
@@ -2102,7 +2102,10 @@ Possibly Breaking Changes
Known Issues
-- None in particular
+- GStreamer 1.18 versions <= 1.18.4 would fail to build on Linux with
+ Meson 0.58 due to an issue with the include directories. Either
+ apply the patch or build with an older Meson version (<= 0.57) until
+ there is a GStreamer 1.18.5 release that includes the fix.
Contributors
@@ -2879,6 +2882,307 @@ List of merge requests and issues fixed in 1.18.4
- List of Merge Requests applied in 1.18.4
- List of Issues fixed in 1.18.4
+1.18.5
+
+The fifth 1.18 bug-fix release (1.18.5) was released on 8 September
+2021.
+
+This release only contains bugfixes and security fixes and it should be
+safe to update from 1.18.x.
+
+Highlighted bugfixes in 1.18.5
+
+- basesink: fix reverse frame stepping
+- downloadbuffer/sparsefile: several fixes for win32
+- systemclock: Update monotonic reference time when re-scheduling,
+ fixes high CPU usage with gnome-music when pausing playback
+- audioaggregator: fix glitches when resyncing on discont
+- compositor: Fix NV12 blend operation
+- rtspconnection: Add IPv6 support for tunneled mode
+- avidemux: fix playback of some H.264-in-AVI streams
+- jpegdec: Fix crash when interlaced field height is not DCT block
+ size aligned
+- qmlglsink: Keep old buffers around a bit longer if they were bound
+ by QML
+- qml: qtitem: don’t potentially leak a large number of buffers
+- rtpjpegpay: fix image corruption when compiled with MSVC on Windows
+- rtspsrc: seeking improvements
+- rtpjitterbuffer: Avoid generation of invalid timestamps
+- rtspsrc: Fix behaviour of select-streams, new-manager,
+ request-rtcp-key and before-send signals with GLib >= 2.62
+- multiudpsink: Fix broken SO_SNDBUF get/set on Windows
+- openh264enc: fix broken sps/pps header generation and some minor
+ leaks
+- mpeg2enc: fix interlace-mode detection and unbound memory usage if
+ encoder can’t keep up
+- mfvideosrc: Fix for negative MF stride and for negotiation when
+ interlace-mode is specified
+- tsdemux: fix seek-with-stop regression and decoding errors after
+ seeking with dvdlpcmdec
+- rtsp-server: seek handling improvements
+- gst-libav: fix build (and other issues) with ffmpeg 4.4
+- cerbero: spandsp: Fix build error with Visual Studio 2019
+- win32 packages: Fix hang in GLib when G_SLICE environment variable
+ is set
+
+gstreamer
+
+- aggregator: Release the SRC lock while querying latency
+- aggregator: Release pads’ peeked buffer when removing the pad or
+ finalizing it
+- basesink: Don’t swap rstart/rstop when stepping
+- basesrc: Print segments with GST_SEGMENT_FORMAT and not
+ GST_PTR_FORMAT
+- childproxy: init value in gst_child_proxy_get_property() if needed
+- clocksync: Fix providing system clock by default
+- concat: Properly propagate seqnum of segment events
+- concat: adjust running time offsets on downstream events
+- concat: fix locking in SEGMENT event handler
+- downloadbuffer/sparsefile: several fixes for win32
+- element: NULL the lists of contexts in dispose()
+- multiqueue: Use running time of gap events for wakeups.
+- multiqueue: Ensure peer pad exists when iterating internal links
+- pad: Keep IDLE probe hook alive during immediate callback
+- pad: Ensure last flow return is set on sink pads in push mode
+- pad: Don’t spam the debug log at INFO level when default-chaining a
+ buffer list
+- pad: clear probes holding mutex
+- parse-launch: Fix a critical when using the : operator.
+- parse-launch: Don’t do delayed property setting for top-level
+ properties.
+- plugin: load plugins with unknown license strings
+- ptpclock: Don’t leak the GList
+- queue2: Refuse all serialized queries when posting buffering
+ messages
+- systemclock: Update monotonic reference time when re-scheduling
+- High CPU usage in 1.18 (but not master) when pausing playback in
+ gnome-music
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+
+gst-plugins-base
+
+- appsrc: Don’t leak buffer list while wrongly unreffing buffer on
+ EOS/flushing
+- audioaggregator: Don’t overwrite already written samples
+- audioaggregator: Resync on the next buffer when dropping a buffer on
+ discont resyncing
+- audiobasesink: Fix of double lock release
+- audioaggregator: Don’t overwrite already written samples
+- audiobasesrc: Fix divide by zero assertion
+- clockoverlay: Fix broken string formatting by strftime() on Windows
+- compositor: Fix NV12 blend operation
+- giosrc: Don’t leak scheme string in gst_gio_src_query()
+- giobasesink: Handle incomplete writes in gst_gio_base_sink_render()
+- gl/wayland: Use consistent wl_display when creating work queue for
+ proxy wrapper
+- gl: Fix build when Meson >= 0.58.0rc1
+- gl/wayland: provide a dummy global_remove function
+- playbin2: fix base_time selection when flush seeking live (such as
+ with RTSP)
+- rtspconnection: Add IPv6 support for tunneled mode
+- rtspconnection: Consistently translate GIOError to GstRTSPResult
+ (for rtspsrc)
+- rawbaseparse: check destination format correctly
+- uridecodebin: Don’t force floating reference for future reusable
+ decodebin
+- parsebin: Put stream flags in GstStream
+- splitmuxsink: always use factory property when set
+- video-converter: Set up matrix tables only once.
+- videoscale: Performance degradation from 1.16.2 -> 1.18.4
+- videotestsrc: Fix a leak when computing alpha caps
+- audio/video-converter: Plug some minor leaks
+- audio,video-format: Make generate_raw_formats idempotent for
+ assertions
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+- Fix build issue on MinGW64
+
+gst-plugins-good
+
+- avidemux: Also detect 0x000001 as H264 byte-stream start code in
+ codec_data
+- deinterlace: Plug a method subobject leak
+- deinterlace: Drop field-order field if outputting progressive
+- jpegdec: Fix crash when interlaced field height is not DCT block
+ size aligned
+- qmlglsink: Keep old buffers around a bit longer if they were bound
+ by QML
+- qml: qtitem: don’t potentially leak a large number of buffers
+- qtdemux: Force stream-start push when re-using EOS’d streams
+- qtmux: for Apple ProRes, allow overriding pixel bit depth, e.g. when
+ exporting an opaque image, yet with alpha.
+- qtmux: Make sure to write 64-bit STCO table when needed.
+- rtpjpegpay: fix image corruption when compiled with MSVC on Windows
+- rtpptdemux: Remove pads also in PAUSED->READY
+- rtph265depay: update codec_data in caps regardless of format
+- rtspsrc: Do not overwrite the known duration after a seek
+- rtspsrc: De-dup seek event seqnums to avoid multiple seeks
+- rtspsrc: Fix race saving seek event seqnum
+- rtspsrc: Using multicast UDP has no relation to seekability, also
+ add some logging
+- rtpjitterbuffer: Fix parsing of the mediaclk:direct= field
+- rtpjitterbuffer: Avoid generation of invalid timestamps
+- rtpjitterbuffer: Check srcresult before waiting on the condition
+ variable too
+- rtpjitterbuffer: More logging when calculating rfc7273 timestamps
+- rtspsrc: Fix more signals
+- rtspsrc: Fix accumulation of before-send signal return values
+- souphttpsrc: Always use the content decoder but set
+ `Accept-Encoding:…
+- udpsrc: Plug leaks of saddr in error cases
+- multiudpsink: Fix broken SO_SNDBUF get/set on Windows
+- v4l2object: Add interlace-mode back to caps for camera
+- v4l2object: Use default colorimetry if that in caps is unknown
+- V4l2object: Avoid colorimetry mismatch for streams with invalid
+ colorimetry
+- v4l2object: Add support for hdr10 stream playback
+- wavparse: adtl/note/labl chunk parsing fixes
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+- 1.18.4: build fails with glib 2.67.6 and gcc-11: argument 2 of
+ ‘__atomic_load’ must not be a pointer to a ‘volatile’ type
+
+gst-plugins-bad
+
+- audiolatency: Use live mode audiotestsrc
+- audiolatency: Handle audio buffers with invalid duration
+- ccconverter: fix framerate caps negotiation from non-cdp to cdp
+- dashdemux: Properly initalize GError, remove duplicate logging call
+- dashdemux: Log protection events on corresponding pad
+- dashdemux: fix dash_mpdparser_check_mpd_client_set_methods unit test
+- h264parse,h265parse: Push parameter set NAL units again per
+ segment-done
+- h265parse: Fix a typo in get_compatible_profile_caps()
+- h265parse: don’t invalidate the last PPS when parsing a new SPS
+- h264parse: improve PPS handling
+- h2645parser: Catch overflows in AVC/HEVC NAL unit length
+ calculations
+- interlace: Don’t set field-order field for progressive caps, fixes
+ negotiation issues
+- interlace: Fix too small buffer size error
+- jpegparse: Don’t generate timestamp for 0/1 framerates
+- opencv: fix build error on macOS
+- openexr: Fix build with OpenEXR 3
+- openh264enc: fix broken sps/pps header generation and some minor
+ leaks
+- mpeg2enc: fix interlace-mode detection on input video
+- mpeg2enc: Only allow 1 pending frame for encoding (fixes unbound
+ memory usage in case encoder can’t keep up with input)
+- mfvideoenc: Don’t pass 0/1 framerate to MFT
+- mfvideosrc: Fix for negative MF stride
+- mfvideosrc: Fix negotiation when interlace-mode is specified
+- mxfvanc: Handle empty ANC essence
+- rtmp2src: workaround a GLib race when destroying a
+ GMainContext/GSource
+- rtpsrc: Plug leak of rtcp_send_addr and fix setting URI back to NULL
+- rtpsink: Return proper pad from _request_new_pad()
+- rist: Plug leak of rtcp_send_addr
+- rtmp2: Use correct size of write macro for param2.
+- rtmp2/connection: Separate inner from outer cancelling
+- tsmux: When selecting random PIDs, name the pads according to those
+ PIDs
+- tsmux: Recheck existing pad PIDs when requesting a new pad with a
+ random pid
+- tsdemux: fix seek with stop regression
+- tsdemux: Clear all streams when rewinding, fixes the case where the
+ demuxer sends out partial invalid data downstream after a seek which
+ causes some decoders (such as dvdlpmdec) to error out
+- v4l2slh264dec: Fix slice header bit size calculation
+- videoparseutils: Fix for wrong CEA708 minimum size check
+- waylandsink: Fix for missing initial configure
+- wpe: Make threaded view singleton creation thread safe
+- x265: Fix a deadlock when failing to create the x265enc
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+
+gst-plugins-ugly
+
+- asfdemux/realmedia: Drop duplicate seek events
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+
+gst-libav
+
+- avmux: Blacklist ttml subtitles (fixes crash with ffmpeg >= 4.4)
+- avmux: fix segfault when a plugin’s long_name is NULL
+- avviddec: Fix size of linesize parameter
+- avviddec: Take into account coded_height for pool
+- avdemux: fix build with FFmpeg 4.4
+
+gst-rtsp-server
+
+- rtsp-media: Ensure the bus watch is removed during unprepare
+- rtsp-media: Add one more case to seek avoidance
+- rtsp-media: Improve skipping trickmode seek
+- Fix a few memory leaks
+
+gstreamer-vaapi
+
+- plugins: Demote rank of vaapipostproc and vaapioverlay to match
+ other filters
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+
+gst-editing-services
+
+- xml-formatter: Fix allocation size of buffer
+- framepositioner: Fix runtime warning
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+
+gst-devtools
+
+- scenario: Fix EOS handling in seek_forward.scenario
+- validate-utils: Only modify structure fields that really need
+ updates
+- Don’t use volatile to mean atomic (fixes compiler warnings with
+ gcc 11)
+
+gst-integration-testsuites
+
+- validate: Update interlace_deinterlace_alternate to remove
+ field-order from expected caps
+
+gst-build
+
+- git-update: Make fetching of external repos non-fatal on the CI
+- gst-env: Windows: Fix looking for cmd_or_ps.ps1 in the wrong
+ directory
+- Pin gst-plugins-rs subproject to 0.7 branch
+
+Cerbero build tool and packaging changes in 1.18.5
+
+- cerbero: Add a dotted progress bar for urllib downloads
+- libunwind: make sure all pkgconfig files get included in the devel
+ package
+- openssl.recipe: Bump to 1.1.1k
+- glib: Fix hang on Windows when G_SLICE env is configured
+- utils: Support latest Debian release names
+- enums: generate fedora version strings automatically
+- Rework cmake build system
+- spandsp: Fix build error with Visual Studio 2019
+
+Contributors to 1.18.5
+
+Alba Mendez, Andoni Morales Alastruey, Antonio Rojas, Bartłomiej
+Kurzeja, Binh Truong, Daniel Knobe, Doug Nazar, Edward Hervey, He
+Junyan, Hou Qi, Jan Alexander Steffens (heftig), Jan Schmidt, Marijn
+Suijten, Mathieu Duponchelle, Matthew Waters, Michael Olbrich, Miguel
+Paris, Nicholas Jackson, Nicolas Dufresne, Nirbheek Chauhan, Olivier
+Crête, Per Förlin, Philippe Normand, Robin Burchell, Ruslan Khamidullin,
+Scott Moreau, Sebastian Dröge, Sergei Kovalev, Seungha Yang, Stéphane
+Cerveau, Steve McDaniel, Thibault Saunier, Tim-Philipp Müller, Víctor
+Manuel Jáquez Leal, Xavier Claessens, Youngsoo Lee,
+
+… 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.18.5
+
+- List of Merge Requests applied in 1.18.5
+- List of Issues fixed in 1.18.5
+
Schedule for 1.20
Our next major feature release will be 1.20, and 1.19 will be the
@@ -2886,9 +3190,9 @@ unstable development version leading up to the stable 1.20 release. The
development of 1.19/1.20 will happen in the git master branch.
The plan for the 1.20 development cycle is yet to be confirmed, but it
-is now expected that feature freeze will take place some time in April
-2021, with the first 1.20 stable release hopefully around April/May
-2021.
+is now expected that feature freeze will take place some time in
+September/October 2021, with the first 1.20 stable release hopefully
+towards the end of October 2021.
1.20 will be backwards-compatible to the stable 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 2e8aa8c8da..8486c7b4a0 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,4 +1,4 @@
-This is GStreamer core 1.18.4.
+This is GStreamer core 1.18.5.
The GStreamer team is thrilled to announce a new major feature release
of your favourite cross-platform multimedia framework!
diff --git a/gstreamer.doap b/gstreamer.doap
index 3c957ff997..210e1f42ec 100644
--- a/gstreamer.doap
+++ b/gstreamer.doap
@@ -40,6 +40,16 @@ hierarchy, and a set of media-agnostic core elements.
<release>
<Version>
+ <revision>1.18.5</revision>
+ <branch>1.18</branch>
+ <name></name>
+ <created>2021-09-08</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gstreamer/gstreamer-1.18.5.tar.xz" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.18.4</revision>
<branch>1.18</branch>
<name></name>
diff --git a/meson.build b/meson.build
index c349ef938a..82a17282b3 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
project('gstreamer', 'c',
- version : '1.18.4.1',
+ version : '1.18.5',
meson_version : '>= 0.48',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])