diff options
author | Tim-Philipp Müller <tim@centricular.com> | 2020-10-26 11:14:43 +0000 |
---|---|---|
committer | Tim-Philipp Müller <tim@centricular.com> | 2020-10-26 11:14:45 +0000 |
commit | e5c3c106a2da607953fea36e3a253b382c939684 (patch) | |
tree | 9af451f2027a9561f01e2bd3a8853cc03295bff4 | |
parent | bd3532008f2a12377c2d5b56e93cbfa53e1979cf (diff) |
Release 1.18.11.18.1
-rw-r--r-- | ChangeLog | 529 | ||||
-rw-r--r-- | NEWS | 244 | ||||
-rw-r--r-- | RELEASE | 2 | ||||
-rw-r--r-- | gst-plugins-bad.doap | 10 | ||||
-rw-r--r-- | meson.build | 2 |
5 files changed, 766 insertions, 21 deletions
@@ -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: @@ -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 @@ -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' ]) |