summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2020-10-26 11:14:43 +0000
committerTim-Philipp Müller <tim@centricular.com>2020-10-26 11:14:45 +0000
commite5c3c106a2da607953fea36e3a253b382c939684 (patch)
tree9af451f2027a9561f01e2bd3a8853cc03295bff4
parentbd3532008f2a12377c2d5b56e93cbfa53e1979cf (diff)
Release 1.18.11.18.1
-rw-r--r--ChangeLog529
-rw-r--r--NEWS244
-rw-r--r--RELEASE2
-rw-r--r--gst-plugins-bad.doap10
-rw-r--r--meson.build2
5 files changed, 766 insertions, 21 deletions
diff --git a/ChangeLog b/ChangeLog
index 86cb24720..3e7246dc1 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,7 +1,536 @@
+=== release 1.18.1 ===
+
+2020-10-26 11:14:43 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ChangeLog:
+ * NEWS:
+ * RELEASE:
+ * gst-plugins-bad.doap:
+ * meson.build:
+ Release 1.18.1
+
+2020-10-16 12:29:02 +0100 Andrew Wesie <andrew@theori.io>
+
+ * gst-libs/gst/codecparsers/gsth264parser.c:
+ codecparsers: h264parser: guard against ref_pic_markings overflow
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1704>
+
+2020-10-15 12:08:19 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/v4l2codecs/gstv4l2codecvp8dec.c:
+ v4l2codecs: vp8: Allow baseclass from skipping frames
+ In preparation for !1670, this will allow the base class from skipping frames
+ that should not be displayed. Previously it would complain about unordered
+ decoding taking place in the driver.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1701>
+
+2020-10-15 12:05:45 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/v4l2codecs/gstv4l2decoder.c:
+ v4l2codecs: decoder: Unmark previously pending request
+ requests are executed in order, so while dequeuing sink buffers for previous
+ request, also mark these request as no longer pending. This will allow reusing
+ the request later.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1701>
+
+2020-10-15 11:35:04 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/v4l2codecs/gstv4l2decoder.c:
+ v4l2codecs: decoder: Properly remove pending requests
+ Pass the pointer instead of NULL in order to find and remove properly any
+ pending request from the queue. This coding error was leading to use after
+ free in error and early exit cases.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1701>
+
+2020-10-04 02:02:16 +0900 Seungha Yang <seungha@centricular.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: Don't enable passthrough by default
+ SEI messages contain various information which wouldn't be conveyed
+ by using upstream CAPS (HDR, timecode for example).
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1694>
+
+2020-10-12 14:15:49 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtsrc.c:
+ srtsrc: Prevent `delay` from being negative
+ `delay` should be a GstClockTimeDiff since SRT time is int64_t.
+ All values are in local time so we should never see a srctime that's in
+ the future. If we do, clamp the delay to 0 and warn about it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1690>
+
+2020-10-12 14:12:24 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtsrc.c:
+ srtsrc: Don't calculate a delay if the srctime is 0
+ A zero srctime is a missing srctime. Apparently this can happen when
+ ["the connection is not between SRT peers or if Timestamp-Based Packet
+ Delivery mode (TSBPDMODE) is not enabled"][1] so it may not apply to us,
+ but it's best to be defensive.
+ [1]: https://github.com/Haivision/srt/blob/v1.4.2/docs/API.md#sending-and-receiving
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1690>
+
+2020-10-12 14:09:28 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtsrc.c:
+ srtsrc: Defend against missing clock
+ If we don't have a clock, stop the source instead of asserting in
+ gst_clock_get_time. This can happen when the element is removed from the
+ pipeline while it's playing.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1690>
+
+2020-10-12 11:50:59 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ * gst/rtmp2/gstrtmp2.c:
+ * gst/rtmp2/gstrtmp2sink.c:
+ rtmp2sink: don't expose stop-commands property in backported patches
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
+
+2020-08-19 14:51:17 +0300 Nazar Mokrynskyi <nazar@mokrynskyi.com>
+
+ * docs/meson.build:
+ * gst/rtmp2/gstrtmp2sink.c:
+ * gst/rtmp2/rtmp/rtmpclient.h:
+ rtmp2sink: add docs section with since marker on new stop-commands property
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
+
+2020-08-18 19:16:40 +0300 Nazar Mokrynskyi <nazar@mokrynskyi.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ * gst/rtmp2/gstrtmp2sink.c:
+ rtmp2: fix code style, update documentation cache
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
+
+2020-08-18 14:05:26 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * gst/rtmp2/gstrtmp2.c:
+ * gst/rtmp2/gstrtmp2sink.c:
+ * gst/rtmp2/rtmp/rtmpclient.c:
+ * gst/rtmp2/rtmp/rtmpclient.h:
+ rtmp2: Clean up (improve) GstRtmpStopCommands type
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
+
+2020-05-02 04:49:42 +0300 Nazar Mokrynskyi <nazar@mokrynskyi.com>
+
+ * gst/rtmp2/gstrtmp2sink.c:
+ * gst/rtmp2/rtmp/rtmpclient.c:
+ * gst/rtmp2/rtmp/rtmpclient.h:
+ rtmp2sink: handle EOS event and close stream
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1285
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1628>
+
+2020-10-05 11:07:25 +0200 Guillaume Desmottes <guillaume.desmottes@collabora.com>
+
+ * gst/videoparsers/gsth265parse.c:
+ h265parse: set interlace-mode=interleaved on interlaced content
+ interlace-mode=alternate is a special case of interlace-mode=interleaved
+ where the fields are split using two different buffers.
+ We should use the latter instead of the former to no break compat with
+ elements supporting only 'interleaved'.
+ Decoders producing alternate, such as OMX on the Zynq, should change the
+ interlace-mode on their output caps.
+ Fix https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/825
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1683>
+
+2020-10-06 13:39:23 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtobject.c:
+ srt: Remove unused sa_family tracking
+ Now that SRT no longer needs the family when creating the socket, this
+ code has become useless.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
+
+2020-10-02 03:39:40 +0200 Niklas Hambüchen <mail@nh2.me>
+
+ * ext/srt/gstsrtobject.c:
+ * ext/srt/meson.build:
+ srt: Move off deprecated `srt_socket()`.
+ See https://github.com/Haivision/srt/blob/73ee1e1a3e3adc2702a9a5057d101ef80447b38c/docs/API-functions.md#srt_socket
+ `srt_create_socket()` was added in
+ https://github.com/Haivision/srt/commit/4b897ba92d34f1829a1c6e419eeab17f0763a0fc
+ and srt `v1.3.0` is the first release that has it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
+
+2020-10-01 17:31:13 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrt.c:
+ srt: Register a log handler
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
+
+2020-09-25 19:17:35 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtobject.c:
+ srt: Avoid removing invalid sockets from the polls
+ This would provoke error messages from SRT.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
+
+2020-09-25 19:08:17 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtobject.c:
+ srt: Fix use of srt_startup
+ `srt_startup` can also return 1 if it was successful. Avoid warning in
+ this case.
+ Avoid a race when checking whether we need to call it at all.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
+
+2020-10-06 12:35:12 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtobject.c:
+ srt: Fix parameter types used for socket options
+ The [SRT documentation][1] specifies exact types for the socket options.
+ Make sure we match these.
+ This reverts the linger workaround in commit 84f8dbd932029220ee86154dd
+ and extends srt_constant_params to support other types than int.
+ [1]: https://github.com/Haivision/srt/blob/master/docs/APISocketOptions.md
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1685>
+
+2020-10-07 11:04:30 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * pkgconfig/gstreamer-webrtc-uninstalled.pc.in:
+ * pkgconfig/gstreamer-webrtc.pc.in:
+ webrtc: Require gstreamer-sdp in the pkg-config file
+ Some headers include API from it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1678>
+
+2020-10-06 11:45:36 +0200 Edward Hervey <edward@centricular.com>
+
+ * ext/srt/gstsrtobject.c:
+ * ext/srt/gstsrtobject.h:
+ * ext/srt/gstsrtsrc.c:
+ * ext/srt/gstsrtsrc.h:
+ srtsrc: Fix timestamping
+ SRT provides the original timestamp of a packet (with drift/skew corrected for
+ local clock), which is what should be used for timestamping the outgoing
+ buffers. This ensures that we output the packets with the same timestamp (and by
+ extension rate) as the original feed.
+ Also detect if packets were dropped (by checking the sequence number) and
+ properly set DISCONT flag on the outgoing buffer.
+ Finally answer the latency queries
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1677>
+
+2020-10-08 17:52:05 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtsink.c:
+ srt: Consume the error from gst_srt_object_write
+ Instead of leaking it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1681>
+
+2020-10-05 16:40:55 -0400 Olivier Crête <olivier.crete@collabora.com>
+
+ * ext/dtls/gstdtlsconnection.c:
+ dtlsconnection: Ignore OpenSSL system call errors
+ OpenSSL shouldn't be making real system calls, so we can safely
+ ignore syscall errors. System interactions should happen through
+ our BIO. So especially don't look at the system's errno, as it
+ should be meaningless.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1684>
+
+2020-10-09 10:24:50 +0200 Jacek Tomaszewski <lord.jacold@gmail.com>
+
+ * COPYING:
+ * COPYING.LIB:
+ Replace LGPL v2 with LGPL v2.1 in COPYING and remove COPYING.LIB
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1682>
+
+2020-10-02 11:42:07 +0200 Jacek Tomaszewski <lord.jacold@gmail.com>
+
+ * COPYING:
+ Replace GPL v2 with LGPL v2 in COPYING file
+ Fixes #1422
+ https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1422
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1682>
+
+2020-10-08 17:48:20 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/srt/gstsrtobject.c:
+ srt: Check socket state before retrieving payload size
+ The connection might be broken, which we should detect instead of just
+ aborting the write.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1680>
+
+2020-10-08 18:25:59 +0200 Jakub Adam <jakub.adam@collabora.com>
+
+ * ext/x265/gstx265enc.c:
+ x265enc: fix deadlock on reconfig
+ Don't attempt to obtain encoder lock that is already held by
+ gst_x265_enc_encode_frame().
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1679>
+
+2020-10-07 05:05:25 +0900 Seungha Yang <seungha@centricular.com>
+
+ * sys/mediafoundation/gstmfsourcereader.cpp:
+ mfvideosrc: Use only the first video stream per device
+ Non-first video stream might not be working with current
+ implementation. It could be non-video (e.g., photo source) and then
+ ReadSample() might be blocked forever.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1676>
+
+2020-09-25 22:00:26 +0530 raghavendra <raghavendra.rao@collabora.com>
+
+ * ext/srt/gstsrtobject.c:
+ srtobject: typecast SRTO_LINGER to linger
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1675>
+
+2020-09-29 15:52:21 +0300 Sebastian Dröge <sebastian@centricular.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ * sys/decklink/gstdecklink.cpp:
+ decklink: Correctly order the different dependent mode tables
+ One was forgotten in 309f6187fef890c7ffa49305f38e89beac3b1423.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1652>
+
+2020-09-19 00:26:35 +0900 Seungha Yang <seungha@centricular.com>
+
+ * sys/wasapi/gstwasapisrc.c:
+ * sys/wasapi/gstwasapisrc.h:
+ wasapisrc: Make sure that wasapisrc produces data in loopback mode
+ An oddness of wasapi loopback feature is that capture client will not
+ produce any data if there's no outputting sound to corresponding
+ render client. In other words, if there's no sound to render,
+ capture task will stall. As an option to solve such issue, we can
+ add timeout to wake up from capture thread if there's no incoming data
+ within given time interval. But it seems to be glitch prone.
+ Another approach is that we can keep pushing silence data into
+ render client so that capture client can keep capturing data
+ (even if it's just silence).
+ This patch will choose the latter one because it's more straightforward
+ way and it's likely produce glitchless sound than former approach.
+ A bonus point of this approach is that loopback capture on Windows7/8
+ will work with this patch. Note that there's an OS bug prior to Windows10
+ when loopback capture client is running with event-driven mode.
+ To work around the bug, event signalling should be handled manually
+ for read thread to wake up.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1651>
+
+2020-09-29 23:46:00 +1000 Matthew Waters <matthew@centricular.com>
+
+ * ext/wpe/gstwpesrc.cpp:
+ wpesrc: fix some caps leaks using the non-GL output
+ Always chain up to the parent _stop() implementation as it unrefs some
+ caps (among other things).
+ Fixes: https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1409
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1650>
+
+2020-06-16 11:16:37 +0900 Hosang Lee <hosang10.lee@lge.com>
+
+ * ext/smoothstreaming/gstmssmanifest.c:
+ * ext/smoothstreaming/gstmssmanifest.h:
+ smoothstreaming: clear live adapter on seek
+ In live streaming, buffers sent by souphttpsrc are pushed to the live
+ adapter. The buffers in the adapter are sent out of mssdemux when it
+ is greater than 4096 bytes.
+ Occasionally, when seeking in live streams, if seek occurs just
+ after the last data chunk was received, and if this data chunk is
+ smaller than 4096 bytes, it will be kept in the live adapter.
+ This remaining data in the live adapter will be erroneously prepended
+ to the new data that is downloaded after seek and pushed out.
+ When qtdemux receives this data, since it does not start with
+ a moof box, it is impossible to demux the fragment, and bogus
+ size error will occur.
+ Clear out the live adapter on seek so that no unnecessary remaining
+ data is pushed out together with the new fragment after seeking.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1649>
+
+2020-09-23 20:08:46 +1000 Matthew Waters <matthew@centricular.com>
+
+ * sys/applemedia/videotexturecache-vulkan.mm:
+ vtdec/vulkan: use Shared storage mode for IOSurface textures
+ Fixes a debug assertion with i(Pad)OS 14:
+ 'IOSurface textures must use MTLStorageModeShared'
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1648>
+
+2020-09-14 09:48:48 +0100 Philippe Normand <philn@igalia.com>
+
+ * ext/wpe/gstwpesrc.cpp:
+ wpe: Plug event leak
+ Handled events don't go through the default pad event handler, so they need to
+ be unreffed in this case.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
+
+2020-08-25 01:57:55 +1000 Jan Schmidt <jan@centricular.com>
+
+ * ext/wpe/gstwpesrc.cpp:
+ wpesrc: Don't crash if WPE doesn't generate a buffer.
+ On creating a 2nd wpesrc in a new pipeline in an app that already
+ has a runnig wpesrc, WPE sometimes doesn't return a buffer on request,
+ leading to a crash. This commit fixes the crash, but not the underlying
+ failure - a 2nd wpesrc can still error out instead.
+ Partially fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1386
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
+
+2020-09-11 12:51:56 +0100 Philippe Normand <philn@igalia.com>
+
+ * ext/wpe/WPEThreadedView.cpp:
+ wpe: Plug SHM buffer leaks
+ Fixes #1409
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
+
+2020-09-10 14:39:58 +0100 Philippe Normand <philn@igalia.com>
+
+ * ext/wpe/WPEThreadedView.cpp:
+ * ext/wpe/WPEThreadedView.h:
+ wpe: Move webview load waiting to WPEView
+ As waiting for the load to be finished is specific to the WebView, it should be
+ done from our WPEView, not from the WPEContextThread. This fixes issues where
+ multiple wpesrc elements are created in sequence. Without this patch the first
+ view might receive erroneous buffer notifications.
+ Fixes #1386
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1647>
+
+2020-09-10 13:05:23 +0100 Philippe Normand <philn@igalia.com>
+
+ * ext/wpe/WPEThreadedView.cpp:
+ wpe: Use proper callback for TLS errors signal handling
+ The load-failed and load-failed-with-tls-errors signals expect distinct callback
+ signatures.
+ Fixes #1388
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1646>
+
+2020-09-17 17:39:25 -0400 Nicolas Dufresne <nicolas.dufresne@collabora.com>
+
+ * sys/kms/gstkmssink.c:
+ kmssink: Do not source using padded width/height
+ The width/height from the video meta can be padded width, height. But when
+ sourcing from padded buffer, we only want to use the valid pixels. This
+ rectangle is from the crop meta, orther it is deduces from the caps. The width
+ and height from the caps is save in the parent class, use these instead of the
+ GstVideoInfo when settting the src rectangle.
+ This fixes an issue with 1080p video displaying repeated or green at the
+ padded bottom 8 lines (seen with v4l2codecs).
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1642>
+
+2020-09-15 17:09:57 +0200 Marian Cichy <m.cichy@pengutronix.de>
+
+ * ext/avtp/gstavtpaafdepay.c:
+ avtp: avtpaafdepay: fix crash when building caps
+ gst_caps_new_simple gets wrong types for rate and channel which
+ may lead to a crash.
+ As 64-bit values for rate, depth, format, channels does not
+ make much sense and since any other functionality in gstreamer
+ expects G_TYPE_INT for channels and rate, we should stick to that
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1641>
+
+2020-09-10 10:35:11 -0700 Adam Williamson <awilliam@redhat.com>
+
+ * ext/opencv/meson.build:
+ opencv: set opencv_dep when option is disabled (#1406)
+ The examples build file checks opencv_dep, so it still needs to
+ be set even if the option is disabled.
+ Fixes https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/issues/1406
+ Signed-off-by: Adam Williamson <awilliam@redhat.com>
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1638>
+
+2020-09-04 16:53:03 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ * ext/closedcaption/gstline21enc.c:
+ * ext/closedcaption/gstline21enc.h:
+ * tests/check/elements/line21.c:
+ line21enc: add remove-caption-meta property
+ Similar to #GstCCExtractor:remove-caption-meta
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1637>
+
+2020-09-04 02:38:58 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * docs/plugins/gst_plugins_cache.json:
+ * ext/closedcaption/gstline21enc.c:
+ * tests/check/elements/line21.c:
+ line21enc: heavily constrain video height
+ We can only determine a correct placement for the CC line
+ with:
+ * height == 525 (standard NTSC, line 21 / 22)
+ * height == 486 (NTSC usable lines + 6 lines for VBI, line 1 / 2)
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1637>
+
+2020-09-04 02:33:52 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * ext/closedcaption/gstline21enc.c:
+ line21enc: add support for CDP closed caption meta
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1637>
+
+2020-08-27 11:23:01 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+ adaptivedemux: Add another nominal bitrate fallback calculation
+ Some HTTP servers don't provide fragment sizes (with the Content-Length HTTP
+ header). In order to still figure out a nominal bitrate (for usage by queue2),
+ calculate on when we're done downloading a fragment.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1635>
+
+2020-08-27 11:18:56 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst-libs/gst/adaptivedemux/gstadaptivedemux.c:
+ adaptivedemux: Handle invalid HTTP duration
+ The default BYTE DURATION basesrc query handler will return `-1` and TRUE. In
+ order to properly handle cases where upstream http servers didn't return a valid
+ Content-Length we also need to check whether it was valid when calculating
+ bitrates.
+ Avoids returning completely bogus bitrates with gogol's video streaming services
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1635>
+
+2020-09-01 13:28:44 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * gst/rtmp2/gstrtmp2sink.c:
+ * gst/rtmp2/gstrtmp2src.c:
+ * gst/rtmp2/rtmp/rtmpconnection.c:
+ rtmp2: Replace stats queue with stats lock
+ Making the thread receiving the stats wait on the loop to respond was
+ not a good idea, as the latter can get blocked on the streaming thread.
+ Have get_stats read the values directly, adding a lock to ensure we
+ don't read garbage.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1629>
+
+2020-09-02 15:29:49 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * gst/mpegtsmux/gstbasetsmux.c:
+ * gst/mpegtsmux/gstbasetsmux.h:
+ mpegtsmux: Make handling of sinkpads thread-safe
+ Ensure we take the object lock while accessing `GstElement.sinkpads`.
+ Use an iterator when the code isn't simple to avoid deadlock.
+ When we find the best pad, take a reference so a concurrent pad
+ release doesn't destroy the pad before we're done with it.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1625>
+
+2020-09-01 13:29:30 +0200 Jan Alexander Steffens (heftig) <jan.steffens@ltnglobal.com>
+
+ * ext/hls/gsthlssink2.c:
+ hlssink2: Actually release splitmuxsink's pads
+ It was looking at the "outer" peer of the ghost pad, not the "inner"
+ peer (the target).
+ It provided the wrong pad to gst_element_release_request_pad.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1623>
+
+2020-09-08 10:48:56 +0200 Edward Hervey <edward@centricular.com>
+
+ * gst/mpegtsmux/gstbasetsmux.c:
+ mpegtsmux: Don't create streams with reserved PID
+ There are quite a few reserved PID in the various MPEG-TS (and derivate)
+ specifications which we should definitely not use. Those PID have a certain
+ meaning and purpose.
+ Furthermore, a lot of the code in the muxer implementation also makes assumption
+ on the purpose of streams based on their PID.
+ Therefore, when requesting a pad with a specific PID, make sure it is not a
+ restricted PID.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-plugins-bad/-/merge_requests/1620>
+
+2020-09-14 14:42:36 +0300 Jordan Petridis <jordan@centricular.com>
+
+ * tests/check/gst-plugins-bad.supp:
+ validate: plug leak in gssdp
+ These are triggered by the webrtcbin tests
+ https://gitlab.gnome.org/GNOME/gssdp/-/issues/10
+
+2020-09-08 17:44:29 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * meson.build:
+ Back to development
+
=== release 1.18.0 ===
2020-09-08 00:07:45 +0100 Tim-Philipp Müller <tim@centricular.com>
+ * .gitlab-ci.yml:
* ChangeLog:
* NEWS:
* README:
diff --git a/NEWS b/NEWS
index dba9c7c47..c4276518e 100644
--- a/NEWS
+++ b/NEWS
@@ -1,11 +1,14 @@
GStreamer 1.18 Release Notes
-GStreamer 1.18.0 was originally released on 7 September 2020.
+GStreamer 1.18.0 was originally released on 8 September 2020.
+
+The latest bug-fix release in the 1.18 series is 1.18.1 and was released
+on 26 October 2020.
See https://gstreamer.freedesktop.org/releases/1.18/ for the latest
version of this document.
-Last updated: Monday 7 September 2020, 10:30 UTC (log)
+Last updated: Monday 26 October 2020, 11:00 UTC (log)
Introduction
@@ -28,7 +31,8 @@ Highlights
- Active Format Description (AFD) and Bar Data support
-- ONVIF trick modes support in both GStreamer RTSP server and client
+- RTSP server and client implementations gained ONVIF trick modes
+ support
- Hardware-accelerated video decoding on Windows via DXVA2 /
Direct3D11
@@ -39,24 +43,25 @@ Highlights
- qmlgloverlay: New overlay element that renders a QtQuick scene over
the top of an input video stream
-- New imagesequencesrc element to easily create a video stream from a
+- imagesequencesrc: New element to easily create a video stream from a
sequence of jpeg or png images
-- dashsink: Add new sink to produce DASH content
+- dashsink: New sink to produce DASH content
-- dvbsubenc: DVB Subtitle encoder element
+- dvbsubenc: New DVB Subtitle encoder element
-- TV broadcast compliant MPEG-TS muxing with constant bitrate muxing
- and SCTE-35 support
+- MPEG-TS muxing now also supports TV broadcast compliant muxing with
+ constant bitrate muxing and SCTE-35 support
-- rtmp2: new RTMP client source and sink element implementation
+- rtmp2: New RTMP client source and sink element from-scratch
+ implementation
-- svthevcenc: new SVT-HEVC-based H.265 video encoder
+- svthevcenc: New SVT-HEVC-based H.265 video encoder
-- vaapioverlay compositor element using VA-API
+- vaapioverlay: New compositor element using VA-API
-- rtpmanager support for Google’s Transport-Wide Congestion Control
- (twcc) RTP extension
+- rtpmanager gained support for Google’s Transport-Wide Congestion
+ Control (twcc) RTP extension
- splitmuxsink and splitmuxsrc gained support for auxiliary video
streams
@@ -64,18 +69,18 @@ Highlights
- webrtcbin now contains some initial support for renegotiation
involving stream addition and removal
-- New RTP source and sink elements to easily set up RTP streaming via
- rtp:// URIs
+- RTP support was enhanced with new RTP source and sink elements to
+ easily set up RTP streaming via rtp:// URIs
-- New Audio Video Transport Protocol (AVTP) plugin for Time-Sensitive
- Applications
+- avtp: New Audio Video Transport Protocol (AVTP) plugin for
+ Time-Sensitive Applications
- Support for the Video Services Forum’s Reliable Internet Stream
Transport (RIST) TR-06-1 Simple Profile
- Universal Windows Platform (UWP) support
-- rpicamsrc element for capturing from the Raspberry Pi camera
+- rpicamsrc: New element for capturing from the Raspberry Pi camera
- RTSP Server TCP interleaved backpressure handling improvements as
well as support for Scale/Speed headers
@@ -2179,7 +2184,208 @@ the git 1.18 branch, which will be a stable branch.
1.18.0
-1.18.0 was released on 7 September 2020.
+1.18.0 was released on 8 September 2020.
+
+1.18.1
+
+The first 1.18 bug-fix release (1.18.1) was released on 26 October 2020.
+
+This release only contains bugfixes and it should be safe to update from
+1.18.0.
+
+Highlighted bugfixes in 1.18.1
+
+- important security fixes
+- bug fixes and memory leak fixes
+- various stability and reliability improvements
+
+gstreamer
+
+- aggregator: make peek() has() pop() drop() buffer API threadsafe
+- gstvalue: don’t write to const char *
+- meson: Disallow DbgHelp for UWP build
+- info: Fix build on Windows ARM64 device
+- build: use cpu_family for arch checks
+- basetransform: Fix in/outbuf confusion of _default_transform_meta
+- Fix documentation
+- info: Load DbgHelp.dll using g_module_open()
+- padtemplate: mark documentation caps as may be leaked
+- gstmeta: intern registered impl string
+- aggregator: Hold SRC_LOCK while unblocking via SRC_BROADCAST()
+- ptp_helper_post_install.sh: deal with none
+- skip elements/leak.c if tracer is not available
+- aggregator: Wake up source pad in PAUSED<->PLAYING transitions
+- input-selector: Wake up blocking pads when releasing them
+- ptp: Also handle gnu/kfreebsd
+
+gst-plugins-base
+
+- theoradec: Set telemetry options only if they are nonzero
+- glslstage: delete shader on finalize of stage
+- urisourcebin: Fix crash caused by use after free
+- decodebin3: Store stream-start event on output pad before exposing
+ it
+- Add some missing nullable annotations
+- typefind/xdgmime: Validate mimetypes to be valid GstStructure names
+ before using them
+- uridecodebin3: Forward upstream events to decodebin3 directly
+- video-converter: Add fast paths from v210 to I420/YV12, Y42B, UYVY
+ and YUY2
+- videoaggregator: Limit accepted caps by template caps
+- gstrtpbuffer: fix header extension length validation
+- decodebin3: only force streams-selected seqnum after a
+ select-streams
+- videodecoder: don’t copy interlace-mode from reference state
+- enable abi checks
+- multihandlesink: Don’t pass NULL caps to gst_caps_is_equal
+- audio: video: Fix in/outbuf confusion of transform_meta
+- meson: Always wrap “prefix” option with join_paths() to make Windows
+ happy
+- videoaggregator: ensure peek_next_sample() uses the correct caps
+- meson: Actually build gstgl without implicit include dirs
+- videoaggregator: Don’t require any pads to be configured for
+ negotiating source pad caps
+- gst-libs: gl: Fix documentation typo and clarify
+ gl_memory_texsubimage
+- audioaggregator: Reset offset if the output rate is renegotiated
+- video-anc: Implement transform functions for AFD/Bar metas
+- appsrc: Wake up the create() function on caps changes
+- rtpbasepayload: do not forget delayed segment when forwarding gaps
+
+gst-plugins-good
+
+- v4l2object: Only offer inactive pools and if needed
+- vpx: Fix the check to unfixed/unknown framerate to set bitrate
+- qmlglsink: fix crash when created/destroyed in quick succession
+- rtputils: Count metas with an empty tag list for copying/keeping
+- rtpbin: Remove the rtpjitterbuffer with the stream
+- rtph26*depay: drop FU’s without a corresponding start bit
+- imagefreeze: Response caps query from srcpad
+- rtpmp4gdepay: Allow lower-case “aac-hbr” instead of correct
+ “AAC-hbr”
+- rtspsrc: Fix push-backchannel-buffer parameter mismatch
+- jpegdec: check buffer size before dereferencing
+- flvmux: Move stream skipping to GstAggregatorPadClass.skip_buffer
+- v4l2object: plug memory leak
+- splitmuxsink: fix sink pad release while PLAYING
+
+gst-plugins-bad
+
+- codecparsers: h264parser: guard against ref_pic_markings overflow
+- v4l2codecs: Various fixes
+- h265parse: Don’t enable passthrough by default
+- srt: Fix “Fix timestamping”
+- srt: Fixes for 1.4.2
+- dtlsconnection: Ignore OpenSSL system call errors
+- h265parse: set interlace-mode=interleaved on interlaced content
+- Replace GPL v2 with LGPL v2 in COPYING file
+- srt: Consume the error from gst_srt_object_write
+- srt: Check socket state before retrieving payload size
+- x265enc: fix deadlock on reconfig
+- webrtc: Require gstreamer-sdp in the pkg-config file
+- srtsrc: Fix timestamping
+- mfvideosrc: Use only the first video stream per device
+- srtobject: typecast SRTO_LINGER to linger
+- decklink: Correctly order the different dependent mode tables
+- wasapisrc: Make sure that wasapisrc produces data in loopback mode
+- wpesrc: fix some caps leaks using the non-GL output
+- smoothstreaming: clear live adapter on seek
+- vtdec/vulkan: use Shared storage mode for IOSurface textures
+- wpe: Move webview load waiting to WPEView
+- wpe: Use proper callback for TLS errors signal handling
+- kmssink: Do not source using padded width/height
+- avtp: avtpaafdepay: fix crash when building caps
+- opencv: set opencv_dep when option is disabled to fix the build
+- line21encoder: miscellaneous enhancements
+- Hls youtube issues with urisourcebin/queue2
+- rtmp2: Replace stats queue with stats lock
+- rtmp2sink: support EOS event for graceful connection shutdown
+- mpegtsmux: Make handling of sinkpads thread-safe
+- hlssink2: Actually release splitmuxsink’s pads
+- mpegtsmux: Don’t create streams with reserved PID
+
+gst-plugins-ugly
+
+- no changes
+
+gst-libav
+
+- avaudenc/avvidenc: Reopen encoding session if it’s required
+- avauddec/audenc/videnc: Don’t return GST_FLOW_EOS when draining
+- avauddec/avviddec: Avoid dropping non-OK flow return
+- avcodecmap: Enable 24 bit WMA Lossless decoding
+
+gst-rtsp-server
+
+- rtsp-stream: collect rtp info when blocking
+- rtsp-media: set a 0 storage size for TCP receivers
+- rtsp-stream: preroll on gap events
+- rtsp-media: do not unblock on unsuspend
+
+gstreamer-vaapi
+
+- decoder: don’t reply src caps query with allowed if pad is fixed
+- plugins: decode: fix a DMA caps typo in ensure_allowed_srcpad_caps
+
+gstreamer-sharp
+
+- Add bindings for some missing 1.18 API
+
+gst-omx
+
+- omxvideodec: support interlace-mode=interleaved input
+
+gst-python
+
+- no changes
+
+gst-editing-services
+
+- ges: Do not recreate auto-transitions when changing clip assets
+- ges: Fix a copy/paste mistake in meson file
+
+gst-integration-testsuites
+
+- medias: Update for h265parse passthrough behavior change
+- update validate.test.h265parse.alternate test
+
+gst-build
+
+- windows: Detect Strawberry Perl and error out early
+- {pygobject,pycairo}.wrap: point to stable refs
+
+Cerbero build tool and packaging changes in 1.18.1
+
+- Add macOS Big Sur support
+- gst-plugins-bad: Ship rtpmanagerbad plugin
+- gstreamer-1.0: Don’t enable DbgHelp for UWP build
+- pango: fix font corruption on windows
+- cairo: use thread local storage to grant one windows HDC per thread
+- small fixes for Xcode 12
+- cerbero: Re-add alsa-devel to bootstrap on Linux
+- FreeType: update to 2.10.4 to fix security vulnerability
+
+Contributors to 1.18.1
+
+Aaron Boxer, Adam Williamson, Andrew Wesie, Arun Raghavan, Bastien
+Reboulet, Brent Gardner, Edward Hervey, François Laignel, Guillaume
+Desmottes, Havard Graff, He Junyan, Hosang Lee, Jacek Tomaszewski, Jakub
+Adam, Jan Alexander Steffens (heftig), Jan Schmidt, Jérôme Laheurte,
+Jordan Petridis, Marc Leeman, Marian Cichy, Marijn Suijten, Mathieu
+Duponchelle, Matthew Waters, Michael Tretter, Nazar Mokrynskyi, Nicolas
+Dufresne, Niklas Hambüchen, Nirbheek Chauhan, Olivier Crête, Philippe
+Normand, raghavendra, Ricky Tang, Sebastian Dröge, Seungha Yang,
+sohwan.park, Stéphane Cerveau, Thibault Saunier, Tim-Philipp Müller, Tom
+Schoonjans, Víctor Manuel Jáquez Leal, Will Miller, Xavier Claessens, Xℹ
+Ruoyao, Zebediah Figura,
+
+… 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.1
+
+- List of Merge Requests applied in 1.18.1
+- List of Issues fixed in 1.18.1
Schedule for 1.20
diff --git a/RELEASE b/RELEASE
index 9229fa19b..68dd88122 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,4 +1,4 @@
-This is GStreamer gst-plugins-bad 1.18.0.
+This is GStreamer gst-plugins-bad 1.18.1.
The GStreamer team is thrilled to announce a new major feature release
of your favourite cross-platform multimedia framework!
diff --git a/gst-plugins-bad.doap b/gst-plugins-bad.doap
index 57c427405..91af32ecc 100644
--- a/gst-plugins-bad.doap
+++ b/gst-plugins-bad.doap
@@ -35,6 +35,16 @@ real live maintainer, or some actual wide use.
<release>
<Version>
+ <revision>1.18.1</revision>
+ <branch>1.18</branch>
+ <name></name>
+ <created>2020-10-26</created>
+ <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-bad/gst-plugins-bad-1.18.1.tar.xz" />
+ </Version>
+ </release>
+
+ <release>
+ <Version>
<revision>1.18.0</revision>
<branch>master</branch>
<name></name>
diff --git a/meson.build b/meson.build
index 63b37523b..5d52ea9d0 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
project('gst-plugins-bad', 'c', 'cpp',
- version : '1.18.0.1',
+ version : '1.18.1',
meson_version : '>= 0.49',
default_options : [ 'warning_level=1',
'buildtype=debugoptimized' ])