Release 1.18.5

This commit is contained in:
Tim-Philipp Müller 2021-09-08 20:01:46 +01:00
parent 0b7c8ea661
commit 71c213f99a
5 changed files with 656 additions and 9 deletions

333
ChangeLog
View file

@ -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>

318
NEWS
View file

@ -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: dont 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 cant 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: Dont 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: Dont 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: Dont do delayed property setting for top-level
properties.
- plugin: load plugins with unknown license strings
- ptpclock: Dont 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
- Dont use volatile to mean atomic (fixes compiler warnings with
gcc 11)
gst-plugins-base
- appsrc: Dont leak buffer list while wrongly unreffing buffer on
EOS/flushing
- audioaggregator: Dont overwrite already written samples
- audioaggregator: Resync on the next buffer when dropping a buffer on
discont resyncing
- audiobasesink: Fix of double lock release
- audioaggregator: Dont 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: Dont 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: Dont 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
- Dont 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: dont potentially leak a large number of buffers
- qtdemux: Force stream-start push when re-using EOSd 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
- Dont 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: dont invalidate the last PPS when parsing a new SPS
- h264parse: improve PPS handling
- h2645parser: Catch overflows in AVC/HEVC NAL unit length
calculations
- interlace: Dont set field-order field for progressive caps, fixes
negotiation issues
- interlace: Fix too small buffer size error
- jpegparse: Dont 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 cant keep up with input)
- mfvideoenc: Dont 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
- Dont use volatile to mean atomic (fixes compiler warnings with
gcc 11)
gst-plugins-ugly
- asfdemux/realmedia: Drop duplicate seek events
- Dont 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 plugins 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
- Dont 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
- Dont 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
- Dont 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.

View file

@ -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!

View file

@ -38,6 +38,16 @@ hierarchy, and a set of media-agnostic core elements.
</GitRepository>
</repository>
<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>

View file

@ -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' ])