summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorTim-Philipp Müller <tim@centricular.com>2020-10-26 11:15:28 +0000
committerTim-Philipp Müller <tim@centricular.com>2020-10-26 11:15:28 +0000
commit20eef66f44c89453cc45593a66f23b63c5554b6a (patch)
tree8e520b7e2af8e745f9f83a5f7097ca2200164180
parentb7b316baee7216926d2dd7241d9b87251b195874 (diff)
Release 1.18.11.18.1
-rw-r--r--ChangeLog76
-rw-r--r--NEWS244
-rw-r--r--RELEASE2
-rw-r--r--docs/gst_plugins_cache.json2
-rw-r--r--gst-rtsp-server.doap10
-rw-r--r--meson.build2
6 files changed, 314 insertions, 22 deletions
diff --git a/ChangeLog b/ChangeLog
index 19b8cce..71fbc00 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,10 +1,86 @@
+=== release 1.18.1 ===
+
+2020-10-26 11:15:28 +0000 Tim-Philipp Müller <tim@centricular.com>
+
+ * ChangeLog:
+ * NEWS:
+ * RELEASE:
+ * gst-rtsp-server.doap:
+ * meson.build:
+ Release 1.18.1
+
+2020-10-08 22:17:16 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/rtsp-server/rtsp-stream.c:
+ rtsp-stream: make use of blocked_running_time in query_position
+ When blocking, the sink element will not have received a buffer
+ yet and the position query will fail. Instead, we make use of
+ the running time of the buffer we blocked on.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/163>
+
+2020-10-06 00:04:17 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/rtsp-server/rtsp-stream.c:
+ rtsp-stream: collect rtp info when blocking
+ We don't unblock the stream anymore before replying to the
+ play request (883ddc72bb5bc57c95a9e167814d1ac53fe1b443),
+ so the sinks don't have a last-sample after potentially flush
+ seeking. seek_trickmode waits for preroll however, which means
+ the stream will block and wait for a first buffer. Subsequent
+ calls to get_rtpinfo() can thus make use of the information.
+ See https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/issues/115
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/163>
+
+2020-09-05 00:30:42 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/rtsp-server/rtsp-media.c:
+ * gst/rtsp-server/rtsp-server-internal.h:
+ * gst/rtsp-server/rtsp-stream.c:
+ rtsp-media: set a 0 storage size for TCP receivers
+ ulpfec correction is obviously useless when receiving a stream
+ over TCP, and in TCP modes the rtp storage receives non
+ timestamped buffers, causing it to queue buffers indefinitely,
+ until the queue grows so large that sanity checks kick in and
+ warnings start to get emitted.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/158>
+
+2020-08-21 03:02:40 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/rtsp-server/rtsp-stream.c:
+ rtsp-stream: preroll on gap events
+ This allows negotiating a SDP with all streams present, but only
+ start sending packets at some later point in time
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/157>
+
+2020-08-25 16:10:36 +0200 Mathieu Duponchelle <mathieu@centricular.com>
+
+ * gst/rtsp-server/rtsp-media.c:
+ rtsp-media: do not unblock on unsuspend
+ rtsp_media_unsuspend() is called from handle_play_request()
+ before sending the play response. Unblocking the streams here
+ was causing data to be sent out before the client was ready
+ to handle it, with obvious side effects such as initial packets
+ getting discarded, causing decoding errors.
+ Instead we can simply let the media streams be unblocked when
+ the state of the media is set to PLAYING, which occurs after
+ sending the play response.
+ Part-of: <https://gitlab.freedesktop.org/gstreamer/gst-rtsp-server/-/merge_requests/156>
+
+2020-09-08 17:44:37 +0100 Tim-Philipp Müller <tim@centricular.com>
+
+ * docs/gst_plugins_cache.json:
+ * meson.build:
+ Back to development
+
=== release 1.18.0 ===
2020-09-08 00:08:29 +0100 Tim-Philipp Müller <tim@centricular.com>
+ * .gitlab-ci.yml:
* ChangeLog:
* NEWS:
* RELEASE:
+ * docs/gst_plugins_cache.json:
* gst-rtsp-server.doap:
* meson.build:
Release 1.18.0
diff --git a/NEWS b/NEWS
index dba9c7c..c427651 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 b68f1e7..27e090d 100644
--- a/RELEASE
+++ b/RELEASE
@@ -1,4 +1,4 @@
-This is GStreamer gst-rtsp-server 1.18.0.
+This is GStreamer gst-rtsp-server 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/docs/gst_plugins_cache.json b/docs/gst_plugins_cache.json
index 8fadb77..1a2bd7d 100644
--- a/docs/gst_plugins_cache.json
+++ b/docs/gst_plugins_cache.json
@@ -321,7 +321,7 @@
"construct": false,
"construct-only": false,
"controllable": false,
- "default": "GStreamer/1.18.0.1",
+ "default": "GStreamer/1.18.1",
"mutable": "null",
"readable": true,
"type": "gchararray",
diff --git a/gst-rtsp-server.doap b/gst-rtsp-server.doap
index cd72528..8fd62ec 100644
--- a/gst-rtsp-server.doap
+++ b/gst-rtsp-server.doap
@@ -32,6 +32,16 @@ RTSP server library based on GStreamer
<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-rtsp-server/gst-rtsp-server-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 b8a236b..6628069 100644
--- a/meson.build
+++ b/meson.build
@@ -1,5 +1,5 @@
project('gst-rtsp-server', 'c',
- version : '1.18.0.1',
+ version : '1.18.1',
meson_version : '>= 0.48',
default_options : ['warning_level=1', 'buildtype=debugoptimized'])