Release 1.16.0
authorTim-Philipp Müller <tim@centricular.com>
Thu, 18 Apr 2019 23:19:55 +0000 (00:19 +0100)
committerTim-Philipp Müller <tim@centricular.com>
Thu, 18 Apr 2019 23:19:57 +0000 (00:19 +0100)
ChangeLog
NEWS
README
RELEASE
configure.ac
gst-plugins-base.doap
meson.build

index 654a40b221888e06ff80cde9b3070347bf21bb7b..dbbae2ae787e1bb5c5ad3c7a9ea833b62bfa7f78 100644 (file)
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,67 @@
+=== release 1.16.0 ===
+
+2019-04-19 00:19:55 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * ChangeLog:
+       * NEWS:
+       * README:
+       * RELEASE:
+       * configure.ac:
+       * gst-plugins-base.doap:
+       * meson.build:
+         Release 1.16.0
+
+2019-04-19 00:19:55 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * docs/plugins/inspect/plugin-adder.xml:
+       * docs/plugins/inspect/plugin-alsa.xml:
+       * docs/plugins/inspect/plugin-app.xml:
+       * docs/plugins/inspect/plugin-audioconvert.xml:
+       * docs/plugins/inspect/plugin-audiomixer.xml:
+       * docs/plugins/inspect/plugin-audiorate.xml:
+       * docs/plugins/inspect/plugin-audioresample.xml:
+       * docs/plugins/inspect/plugin-audiotestsrc.xml:
+       * docs/plugins/inspect/plugin-cdparanoia.xml:
+       * docs/plugins/inspect/plugin-compositor.xml:
+       * docs/plugins/inspect/plugin-encoding.xml:
+       * docs/plugins/inspect/plugin-gio.xml:
+       * docs/plugins/inspect/plugin-libvisual.xml:
+       * docs/plugins/inspect/plugin-ogg.xml:
+       * docs/plugins/inspect/plugin-opengl.xml:
+       * docs/plugins/inspect/plugin-opus.xml:
+       * docs/plugins/inspect/plugin-overlaycomposition.xml:
+       * docs/plugins/inspect/plugin-pango.xml:
+       * docs/plugins/inspect/plugin-pbtypes.xml:
+       * docs/plugins/inspect/plugin-playback.xml:
+       * docs/plugins/inspect/plugin-rawparse.xml:
+       * docs/plugins/inspect/plugin-subparse.xml:
+       * docs/plugins/inspect/plugin-tcp.xml:
+       * docs/plugins/inspect/plugin-theora.xml:
+       * docs/plugins/inspect/plugin-typefindfunctions.xml:
+       * docs/plugins/inspect/plugin-videoconvert.xml:
+       * docs/plugins/inspect/plugin-videorate.xml:
+       * docs/plugins/inspect/plugin-videoscale.xml:
+       * docs/plugins/inspect/plugin-videotestsrc.xml:
+       * docs/plugins/inspect/plugin-volume.xml:
+       * docs/plugins/inspect/plugin-vorbis.xml:
+       * docs/plugins/inspect/plugin-ximagesink.xml:
+       * docs/plugins/inspect/plugin-xvimagesink.xml:
+         Update docs
+
+2019-04-19 00:19:53 +0100  Tim-Philipp Müller <tim@centricular.com>
+
+       * po/zh_CN.po:
+         Update translations
+
+2019-01-23 12:50:40 +0100  Michael Tretter <m.tretter@pengutronix.de>
+
+       * gst-libs/gst/gl/gstglupload.c:
+         glupload: prevent segfault when updating caps
+         When the glupload element renegotiates the caps, set_caps will reset the
+         method_impl to NULL, but the method will be kept. transform_caps tries
+         to use the method_impl to transform the caps, because a method is set,
+         but will segfault.
+
 === release 1.15.90 ===
 
 2019-04-11 00:23:25 +0100  Tim-Philipp Müller <tim@centricular.com>
diff --git a/NEWS b/NEWS
index 16402a590e19895e784d29c79ae068da30f703b0..816a3aae8536f95abeac56e34ba75c61089b2347 100644 (file)
--- a/NEWS
+++ b/NEWS
@@ -3,19 +3,12 @@
 GSTREAMER 1.16 RELEASE NOTES
 
 
-GStreamer 1.16 has not been released yet. It is scheduled for release in
-April 2019.
-
-1.15.x is the unstable development version that is being developed in
-the git master branch and which will eventually result in 1.16.
-
-1.16 will be backwards-compatible to the stable 1.14, 1.12, 1.10, 1.8,
-1.6, 1.4, 1.2 and 1.0 release series.
+GStreamer 1.16.0 was originally released on 19 April 2019.
 
 See https://gstreamer.freedesktop.org/releases/1.16/ for the latest
 version of this document.
 
-_Last updated: Wednesday 10 April 2019, 00:50 UTC (log)_
+_Last updated: Friday 19 April 2019, 00:00 UTC (log)_
 
 
 Introduction
@@ -76,6 +69,10 @@ Highlights
 -   The GStreamer Rust bindings and Rust plugins module are now
     officially part of upstream GStreamer.
 
+-   The GStreamer Editing Services gained a gesdemux element that allows
+    directly playing back serialized edit list with playbin or
+    (uri)decodebin
+
 -   Many performance improvements
 
 
@@ -208,7 +205,8 @@ this new infrastructure and provides the following elements:
 -   ccconverter: a closed caption converter that can convert between
     different formats
 
--   line21decoder: extract line21 closed captions from SD video streams
+-   line21encoder, line21decoder: inject/extract line21 closed captions
+    to/from SD video streams
 
 -   cc708overlay: decodes CEA 608/708 captions and overlays them on
     video
@@ -218,7 +216,11 @@ support:
 
 -   qtdemux and qtmux support CEA 608/708 Closed Caption tracks
 
--   mpegvideoparse extracts Closed Captions from MPEG-2 video streams
+-   mpegvideoparse, h264parse extracts Closed Captions from MPEG-2/H.264
+    video streams
+
+-   avviddec, avvidenc, x264enc got support for extracting/injecting
+    Closed Captions
 
 -   decklinkvideosink can output closed captions and decklinkvideosrc
     can extract closed captions
@@ -265,7 +267,7 @@ New Elements
     or uridecodebin3 etc.
 
 -   New closed caption elements: cccombiner, ccextractor, ccconverter,
-    line21decoder and cc708overlay (see above)
+    line21encoder, line21decoder and cc708overlay (see above)
 
 -   wpesrc: new source element acting as a Web Browser based on WebKit
     WPE
@@ -402,6 +404,9 @@ New element features and additions
 -   srtpdec, srtpenc: add support for MKIs which allow multiple keys to
     be used with a single SRTP stream
 
+-   srtpdec, srtpenc: add support for AES-GCM and also add support for
+    it in gst-rtsp-server and rtspsrc.
+
 -   The srt Secure Reliable Transport plugin has integrated server and
     client elements srt{client,server}{src,sink} into one (srtsrc and
     srtsink), since SRT connection mode can be changed by uri
@@ -434,7 +439,24 @@ New element features and additions
     "connector-properties" can be used to pass custom properties to the
     DRM.
 
--   waylandsink has a "fullscreen" property now.
+-   waylandsink has a "fullscreen" property now and supports the
+    XDG-Shell protocol.
+
+-   decklinkvideosink, decklinkvideosrc support selecting between
+    half/full duplex
+
+-   The vulkan plugin gained support for macOS and iOS via MoltenVK in
+    addition to the existing support for X11 and Wayland
+
+-   imagefreeze has a new num-buffers property to limit the number of
+    buffers that are produced and to send an EOS event afterwards
+
+-   webrtcbin has a new, introspectable get-transceiver signal in
+    addition to the old get-transceivers signal that couldn’t be used
+    from bindings
+
+-   Support for per-element latency information was added to the latency
+    tracer
 
 Plugin and library moves
 
@@ -574,6 +596,18 @@ Miscellaneous API additions
 -   gst_audio_buffer_truncate() convenience function to truncate a raw
     audio buffer
 
+-   GstDiscoverer has support for caching the results of discovery in
+    the default cache directory. This can be enabled with the use-cache
+    property and is disabled by default.
+
+-   GstMeta that are attached to GstBuffers are now always stored in the
+    order in which they were added.
+
+-   Additional support for signalling ONVIF specific features were
+    added: the SEEK event can store a trickmode-interval now and support
+    for the Rate-Control and Frames RTSP headers was added to the RTSP
+    library.
+
 
 Miscellaneous performance and memory optimisations
 
@@ -677,49 +711,6 @@ Tracing framework and debugging improvements
         object. This is currently limited to pads for GstElements and
         events for the pads. The output may look like this:
 
-                    (gdb) gst-print pad.object.parent
-                    GstMatroskaDemux (matroskademux0) {
-                        SinkPad (sink, pull) {
-                        }
-                        SrcPad (video_0, push) {
-                          events:
-                            stream-start:
-                              stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/001:1274058367
-                            caps: video/x-theora
-                              width: 1920
-                              height: 800
-                              pixel-aspect-ratio: 1/1
-                              framerate: 24/1
-                              streamheader: < 0x5555557c7d30 [GstBuffer], 0x5555557c7e40 [GstBuffer], 0x7fffe00141d0 [GstBuffer] >
-                            segment: time
-                              rate: 1
-                            tag: global
-                              container-format: Matroska
-                        }
-                        SrcPad (audio_0, push) {
-                          events:
-                            stream-start:
-                              stream-id: 0463ccb080d00b8689bf569a435c4ff84f9ff753545318ae2328ea0763fd0bec/002:1551204875
-                            caps: audio/mpeg
-                              mpegversion: 4
-                              framed: true
-                              stream-format: raw
-                              codec_data: 0x7fffe0014500 [GstBuffer]
-                              level: 2
-                              base-profile: lc
-                              profile: lc
-                              channels: 2
-                              rate: 44100
-                            segment: time
-                              rate: 1
-                            tag: global
-                              container-format: Matroska
-                            tag: stream
-                              audio-codec: MPEG-4 AAC audio
-                              language-code: en
-                        }
-                    }
-
 -   gst_structure_to_string() now serialises the actual value of
     pointers when serialising GstStructures instead of claiming they’re
     NULL. This makes debug logging in various places less confusing,
@@ -761,7 +752,35 @@ GStreamer RTSP server
 
 GStreamer VAAPI
 
--   this section will be filled in in due course
+-   Support Wayland’s display for context sharing, so the application
+    can pass its own wl_display in order to be used for the VAAPI
+    display creation.
+
+-   A lot of work to support new Intel hardware using media-driver as VA
+    backend.
+
+-   For non-x86 devices, VAAPI display can instantiate, through DRM,
+    with no PCI bus. This enables the usage of libva-v4l2-request
+    driver.
+
+-   Added support for XDG-shell protocol as wl_shell replacement which
+    is currently deprecated. This change add as dependency
+    wayland-protocol.
+
+-   GstVaapiFilter, GstVaapiWindow, and GstVaapiDecoder classes now
+    inherit from GstObject, gaining all the GStreamer’s instrumentation
+    support.
+
+-   The metadata now specifies the plugin as Hardware class.
+
+-   H264 decoder is more stable with problematic streams.
+
+-   In H265 decoder added support for profiles main-422-10 (P010_10LE),
+    main-444 (AYUV) and main-444-10 (Y410)
+
+-   JPEG decoder handles dynamic resolution changes.
+
+-   More specification adherence in H264 and H265 encoders.
 
 
 GStreamer OMX
@@ -789,12 +808,111 @@ GStreamer OMX
 
 GStreamer Editing Services and NLE
 
--   this section will be filled in in due course
+-   Added a gesdemux element, it is an auto pluggable element that
+    allows decoding edit list like files supported by GES
+
+-   Added gessrc which wraps a GESTimeline as a standard source element
+    (implementing the ges protocol handler)
+
+-   Added basic support for videorate::rate property potentially
+    allowing changing playback speed
+
+-   Layer priority is now fully automatic and they should be moved with
+    the new ges_timeline_move_layer method, ges_layer_set_priority is
+    now deprecated.
+
+-   Added a ges_timeline_element_get_layer_priority so we can simply get
+    all information about GESTimelineElement position in the timeline
+
+-   GESVideoSource now auto orientates the images if it is defined in a
+    meta (overridable).
+
+-   Added some PyGObject overrides to make the API more pythonic
+
+-   The threading model has been made more explicit with safe guard to
+    make sure not thread safe APIs are not used from the wrong threads.
+    It is also now possible to properly handle in what thread the API
+    should be used.
+
+-   Optimized GESClip and GESTrackElement creation
+
+-   Added a way to compile out the old, unused and deprecated
+    GESPitiviFormatter
+
+-   Re implemented the timeline editing API making it faster and making
+    the code much more maintainable
+
+-   Simplified usage of nlecomposition outside GES by removing quirks in
+    it API usage and removing the need to treat it specially from an
+    application perspective.
+
+-   ges-launch-1.0:
+
+    -   Added support to add titles to the timeline
+    -   Enhance the help auto generating it from the code
+
+-   Deprecate ges_timeline_load_from_uri as loading the timeline should
+    be done through a project now
+
+-   MANY leaks have been plugged and the unit testsuite is now “leak
+    free”
 
 
 GStreamer validate
 
--   this section will be filled in in due course
+-   Added an action type to verify the checksum of the sink last-sample
+
+-   Added an include keyword to validate scenarios
+
+-   Added the notion of variable in scenarios, with the set-vars keyword
+
+-   Started adding support for “performance” like tests by allowing to
+    define the number of dropped buffers or the minimum buffer frequency
+    on a specific pad
+
+-   Added a validateflow plugin which allows defining the data flow to
+    be seen on a particular pad and verifying that following runs match
+    the expectations
+
+-   Added support for appsrc based test definition so we can instrument
+    the data pushed into the pipeline from scenarios
+
+-   Added a mockdecryptor allowing adding tests with on encrypted files,
+    the element will potentially be instrumented with a validate
+    scenario
+
+-   gst-validate-launcher:
+
+    -   Cleaned up output
+
+    -   Changed the default for “muting” tests as user doesn’t expect
+        hundreds of windows to show up when running the testsuite
+
+    -   Fixed the outputted xunit files to be compatible with GitLab
+
+    -   Added support to run tests on media files in push mode (using
+        pushfile://)
+
+    -   Added support for running inside gst-build
+
+    -   Added support for running ssim tests on rendered files
+
+    -   Added a way to simply define tests on pipelines through a simple
+        .json file
+
+    -   Added a python app to easily run python testsuite reusing all
+        the launcher features
+
+    -   Added flatpak knowledge so we can print backtrace even when
+        running from within flatpak
+
+    -   Added a way to automatically generated “known issues”
+        suppressions lines
+
+    -   Added a way to rerun tests to check if they are flaky and added
+        a way to tolerate tests known to be flaky
+
+    -   Add a way to output html log files
 
 
 GStreamer Python Bindings
@@ -1223,20 +1341,6 @@ Yeongjin Jeong, Yuji Kuwabara, Zeeshan Ali,
 suggestions or helped testing.
 
 
-Bugs fixed in 1.16
-
--   this section will be filled in in due course
-
-More than XXX bugs have been fixed during the development of 1.16.
-
-This list does not include issues that have been cherry-picked into the
-stable 1.16 branch and fixed there as well, all fixes that ended up in
-the 1.16 branch are also included in 1.16.
-
-This list also does not include issues that have been fixed without a
-bug report in bugzilla, so the actual number of fixes is much higher.
-
-
 Stable 1.16 branch
 
 After the 1.16.0 release there will be several 1.16.x bug-fix releases
@@ -1247,7 +1351,7 @@ the git 1.16 branch, which is a stable branch.
 
 1.16.0
 
-1.16.0 is scheduled to be released in April 2019.
+1.16.0 was released on 19 April 2019.
 
 
 Known Issues
@@ -1272,9 +1376,9 @@ unstable development version leading up to the stable 1.18 release. The
 development of 1.17/1.18 will happen in the git master branch.
 
 The plan for the 1.18 development cycle is yet to be confirmed, but it
-is expected that feature freeze will be around July 2019 followed by
-several 1.17 pre-releases and the new 1.18 stable release in
-August/September.
+is possible that the next cycle will be a short one in which case
+feature freeze would be perhaps around August 2019 with a new 1.18
+stable release in September.
 
 1.18 will be backwards-compatible to the stable 1.16, 1.14, 1.12, 1.10,
 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
@@ -1282,7 +1386,7 @@ August/September.
 ------------------------------------------------------------------------
 
 _These release notes have been prepared by Tim-Philipp Müller with_
-_contributions from Sebastian Dröge, Guillaume Desmottes and Matthew
-Waters._
+_contributions from Sebastian Dröge, Guillaume Desmottes, Matthew
+Waters, _ _Thibault Saunier, and Víctor Manuel Jáquez Leal._
 
 _License: CC BY-SA 4.0_
diff --git a/README b/README
index afc5a5e599971da5613aa9ce5f56fe7921fe2ca0..0cd7af2c579d3d6cfab828a6aace04fbd472e822 100644 (file)
--- a/README
+++ b/README
@@ -1,4 +1,4 @@
-GStreamer 1.15.x development series
+GStreamer 1.16.x stable series
 
 WHAT IT IS
 ----------
diff --git a/RELEASE b/RELEASE
index e729596a73180dd1420b8cd31a62a0484e086712..740484712b5543faec63f118ebeac3408b99b493 100644 (file)
--- a/RELEASE
+++ b/RELEASE
@@ -1,9 +1,12 @@
-This is GStreamer gst-plugins-base 1.15.90.
+This is GStreamer gst-plugins-base 1.16.0.
 
-GStreamer 1.15 is the development branch leading up to the next major
-stable version which will be 1.16.
+The GStreamer team is thrilled to announce a new major feature release in the
+stable 1.0 API series of your favourite cross-platform multimedia framework!
 
-The 1.15 development series adds new features on top of the 1.14 series and is
+As always, this release is again packed with new features, bug fixes and
+other improvements.
+
+The 1.16 release series adds new features on top of the 1.14 series and is
 part of the API and ABI-stable 1.x release series of the GStreamer multimedia
 framework.
 
index aaa6181e1b72472e530a68d875322a3acbc7118e..717581f6ade4ec62bf98e2b7c0b0d7a98022c293 100644 (file)
@@ -5,7 +5,7 @@ dnl please read gstreamer/docs/random/autotools before changing this file
 dnl initialize autoconf
 dnl releases only do -Wall, git and prerelease does -Werror too
 dnl use a three digit version number for releases, and four for git/prerelease
-AC_INIT([GStreamer Base Plug-ins],[1.15.90],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
+AC_INIT([GStreamer Base Plug-ins],[1.16.0],[http://bugzilla.gnome.org/enter_bug.cgi?product=GStreamer],[gst-plugins-base])
 
 AG_GST_INIT
 
@@ -56,10 +56,10 @@ dnl      1.2.5 => 205
 dnl      1.10.9 (who knows) => 1009
 dnl
 dnl sets GST_LT_LDFLAGS
-AS_LIBTOOL(GST, 1590, 0, 1590)
+AS_LIBTOOL(GST, 1600, 0, 1600)
 
 dnl *** required versions of GStreamer stuff ***
-GST_REQ=1.15.90
+GST_REQ=1.16.0
 
 dnl *** autotools stuff ****
 
index 8d4412a0345dedf25a5cdc8a3db3a86d00e76559..156625d063d770fa4328fd2690ed4b0aa189c57d 100644 (file)
@@ -34,6 +34,16 @@ A wide range of video and audio decoders, encoders, and filters are included.
    </GitRepository>
  </repository>
 
+ <release>
+  <Version>
+   <revision>1.16.0</revision>
+   <branch>master</branch>
+   <name></name>
+   <created>2019-04-19</created>
+   <file-release rdf:resource="https://gstreamer.freedesktop.org/src/gst-plugins-base/gst-plugins-base-1.16.0.tar.xz" />
+  </Version>
+ </release>
+
  <release>
   <Version>
    <revision>1.15.90</revision>
index 82a1fb3a45d8428afd18eace15450174b338ad68..b775465091633e9ce837df3125567ef94be2822a 100644 (file)
@@ -1,5 +1,5 @@
 project('gst-plugins-base', 'c',
-  version : '1.15.90',
+  version : '1.16.0',
   meson_version : '>= 0.47',
   default_options : [ 'warning_level=1',
                       'buildtype=debugoptimized' ])