appsrc: Post a bus error if a segment can't be applied
[platform/upstream/gstreamer.git] / NEWS
diff --git a/NEWS b/NEWS
index efca995..39b682a 100644 (file)
--- a/NEWS
+++ b/NEWS
-This is GStreamer Base Plugins 1.3.3
-
-Changes since 1.2:
-
-
-New API:
- • GstMessageType has GST_MESSAGE_EXTENDED added. All types before
-   that can be used together as a flags type as before, but from
-   that message onwards the types are just counted incrementally.
-   This was necessary to be able to add more message types.
-   In 2.0 GstMessageType will just become an enum and not a flags
-   type anymore.
- • GstDeviceMonitor for device probing, e.g. to list all available
-   audio or video capture devices. This is the replacement for
-   GstPropertyProbe from 0.10.
- • Events accumulate the running-time offset now when travelling
-   through pads, as set by the gst_pad_set_offset() function. This
-   allows to compensate for this in the QOS event for example.
- • GstBuffer has a new flag "tag-memory" that is set automatically
-   when memory is added or removed to a buffer. This allows buffer
-   pools to detect if they can recycle a buffer or need to reset
-   it first.
- • GstToc has new API to mark GstTocEntries as loops.
- • A not-authorized resource error has been defined to notify
-   applications that accessing the resource has failed because
-   of missing authorization and to distinguish this case from others.
-   This change is actually already in 1.2.4.
- • GstPad has a new flag "accept-intersect", that will let the default
-   ACCEPT_CAPS query handler do an intersection instead of subset check.
-   This is interesting for parser elements that can handle incomplete
-   caps.
- • GstCollectPads has support for flushing and a default handler for
-   SEEK events now.
- • New GstFlowAggregator helper object that simplifies handling of
-   flow returns in elements with multiple source pads. Additionally
-   GstPad now always stores the last flow return and provides an
-   API to retrieve it.
- • GstSegment has new API to offset the running time by a specific
-   value and this is used in GstPad to allow positive and negative
-   offsets in gst_pad_set_offset() in all situations.
- • Support for h265/HEVC and VP8 has been added to the codec utils and codec
-   parsers library, and was integrated into various elements.
- • API for adjusting the TLS validation of RTSP connection has been added.
- • The RTSP and SDP library has MIKEY (RFC 3830) support now, and
-   there is API to distinguish between the different RTSP profiles.
- • API to access RTP time information and statistics.
- • Support for auxiliary streams was added to rtpbin.
- • Support for tiled, raw video formats has been added.
- • GstVideoDecoder and GstAudioDecoder have API to help aggregating tag
-   events and merge custom tags into them consistently.
- • GstBufferPool has support for flushing now.
- • playbin/playsink has support for application provided audio and video
-   filters.
- • GstDiscoverer has new and simplified API to get details about missing
-   plugins and information to pass to the plugin installer.
- • The GL library was merged from gst-plugins-gl to gst-plugins-bad,
-   providing a generic infrastructure for handling GL inside GStreamer
-   pipelines and a plugin with some elements using these, especially
-   a video sink. Supported platforms currently are Android, Cocoa (OS X),
-   DispManX (Raspberry Pi), EAGL (iOS), WGL (Windows) and generic X11,
-   Wayland and EGL platforms.
-   This replaces eglglessink and also is supposed to replace osxvideosink.
- • New GstAggregator base class in gst-plugins-bad. This is supposed to
-   replace GstCollectPads in the future and fix long-known shortcomings
-   in its API. Together with the base class some elements are provided
-   already, like a videomixer (compositor).
-
-
-Major changes:
- • New plugins and elements:
-   ∘ v4l2videodec element for accessing hardware codecs on
-     platforms that make them accessible via V4L2, e.g.
-     Samsung Exynos. This comes together with major refactoring
-     of the existing V4L2 elements and the corresponding
-     infrastructure.
-     The v4l2videodec element replaces the mfcdec element.
-   ∘ New downloadbuffer element that replaces the download
-     buffering feature of queue2. Compared to queue2's code
-     it is much simpler and only for this single use case.
-     A noteworthy new feature is that it's downloading gaps
-     in the already downloaded stream parts when nothing else
-     is to be downloaded.
-     This is now used by playbin when download buffering is
-     enabled.
-   ∘ rtpstreampay and rtpstreamdepay elements for transmitting
-     RTP packets over a stream API (e.g. TCP) according to
-     RFC 4571.
-   ∘ rtprtx elements for standard compliant implementation of
-     retransmissions, integrated into the rtpmanager plugin.
-   ∘ audiomixer element that mixes multiple audio streams together
-     into a single one while keeping synchronization. This is
-     planned to become the replacement of the adder element.
-   ∘ OpenNI2 plugin for 3D cameras like the Kinect camera.
-   ∘ OpenEXR plugin for decoding high-dynamic-range EXR images.
-   ∘ curlsshsink and curlsftpsink to write files via SSH/SFTP.
-   ∘ videosignal, ivfparse and sndfile plugins ported from 0.10.
-   ∘ avfvideosrc, vtdec and other elements were ported from 0.10 and
-     are available on OS X and iOS now.
-
- • Other changes:
-   ∘ gst-libav now uses libav 10.1, and gained support for H265/HEVC.
-   ∘ Support for hardware codecs and special memory types has been
-     improved with bugfixes and feature additions in various plugins
-     and base classes.
-   ∘ Various bugfixes and improvements to buffering in queue2 and
-     multiqueue elements.
-   ∘ dvbsrc supports more delivery mechanisms and other features
-     now, including DVB S2 and T2 support.
-   ∘ The MPEGTS library has support for many more descriptors.
-   ∘ Major improvements to tsdemux and tsparse, especially time and
-     seeking related.
-   ∘ souphttpsrc now has support for keep-alive connections,
-     compression, configurable number of retries and configuration
-     for SSL certificate validation.
-   ∘ hlsdemux has undergone major refactoring and works more
-     reliable now and supports more HLS features like trick modes.
-     Also fragments are pushed downstream while they're downloaded
-     now instead of waiting for each fragment to finish.
-   ∘ dashdemux and mssdemux are now also pushing fragments downstream
-     while they're downloaded instead of waiting for each fragment to
-     finish.
-   ∘ videoflip can automatically flip based on the orientation tag.
-   ∘ openjpeg supports the OpenJPEG2 API.
-   ∘ waylandsink was refactored and should be more useful now. It also
-     includes a small library which most likely is going to be removed
-     in the future and will result in extensions to the GstVideoOverlay
-     interface.
-   ∘ gst-rtsp-server supports SRTP and MIKEY now.
-   ∘ gst-libav encoders are now negotiating any profile/level settings
-     with downstream via caps.
-   ∘ Lots of fixes for coverity warnings all over the place.
-   ∘ Negotiation related performance improvements.
-   ∘ 500+ fixed bug reports, and many other bug fixes and other
-     improvements everywhere that had no bug report.
-
-Things to look out for:
- • The eglglessink element was removed and replaced by the glimagesink
-   element.
- • The mfcdec element was removed and replaced by v4l2videodec.
- • osxvideosink is only available in OS X 10.6 or newer.
- • The GstDeviceMonitor API will likely change slightly before the
-   1.4.0 release.
+
+
+GSTREAMER 1.18 RELEASE NOTES
+
+
+THESE RELEASE NOTES ARE A PLACEHOLDER, PLEASE BEAR WITH US WHILE WE
+FINISH WRITING UP THE REAL THING.
+
+GStreamer 1.18.0 has not yet been released. It is scheduled for release
+in summer 2020 now.
+
+1.17.x is the unstable development series that is currently being
+developed in the git master branch and which will eventually result in
+1.18, and 1.17.2 is the current development release in that series.
+
+The schedule for the 1.18 development cycle is yet to be confirmed, but
+it is expected that feature freeze will be in June/July 2020, followed
+by several 1.17 pre-releases and then a new 1.18 stable release in
+July/August 2020.
+
+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.
+
+See https://gstreamer.freedesktop.org/releases/1.18/ for the latest
+version of this document.
+
+_Last updated: Wednesday 1 July 2020, 23:50 UTC (log)_
+
+
+Introduction
+
+The GStreamer team is proud to announce a new major feature release in
+the stable 1.x API series of your favourite cross-platform multimedia
+framework!
+
+As always, this release is again packed with many new features, bug
+fixes and other improvements.
+
+
+Highlights
+
+-   FIXME
+
+
+Major new features and changes
+
+Noteworthy new API
+
+-   FIXME
+
+New Elements
+
+-   FIXME
+
+New element features and additions
+
+-   FIXME
+
+Plugin and library moves
+
+-   FIXME
+
+Plugin removals
+
+The following plugins have been removed from gst-plugins-bad:
+
+-   FIXME
+
+
+Miscellaneous API additions
+
+-   FIXME
+
+
+Miscellaneous performance and memory optimisations
+
+As always there have been many performance and memory usage improvements
+across all components and modules. Some of them have already been
+mentioned elsewhere so won’t be repeated here.
+
+The following list is only a small snapshot of some of the more
+interesting optimisations that haven’t been mentioned in other contexts
+yet:
+
+-   FIXME
+
+GstPlayer
+
+-   FIXME
+
+
+Miscellaneous changes
+
+-   FIXME
+
+OpenGL integration
+
+-   FIXME
+
+
+Tracing framework and debugging improvements
+
+-   FIXME
+
+
+Tools
+
+-   FIXME
+
+
+GStreamer RTSP server
+
+-   FIXME
+
+
+GStreamer VAAPI
+
+-   FIXME
+
+
+GStreamer OMX
+
+-   FIXME
+
+
+GStreamer Editing Services and NLE
+
+-   FIXME
+
+
+GStreamer validate
+
+-   FIXME
+
+
+GStreamer Python Bindings
+
+-   FIXME
+
+
+GStreamer C# Bindings
+
+-   FIXME
+
+
+GStreamer Rust Bindings
+
+-   FIXME
+
+
+GStreamer Rust Plugins
+
+-   FIXME
+
+
+Build and Dependencies
+
+-   The Autotools build system has finally been removed in favour of the
+    Meson build system. Developers who currently use gst-uninstalled
+    should move to gst-build.
+
+-   API and plugin documentation are no longer built with gtk_doc. The
+    gtk_doc documentation has been removed in favour of a new unified
+    documentation module built with hotdoc. The intention is to
+    distribute the generated documentation in form of tarballs alongside
+    releases.
+
+-   FIXME
+
+Cerbero
+
+Cerbero is a meta build system used to build GStreamer plus dependencies
+on platforms where dependencies are not readily available, such as
+Windows, Android, iOS and macOS.
+
+Cerbero has seen a number of improvements:
+
+-   FIXME
+
+
+Platform-specific changes and improvements
+
+Android
+
+-   FIXME
+
+macOS and iOS
+
+-   FIXME
+
+Windows
+
+-   toolchain upgrade
+
+-   FIXME
+
+
+Contributors
+
+-   FIXME
+
+… and many others who have contributed bug reports, translations, sent
+suggestions or helped testing.
+
+
+Stable 1.18 branch
+
+After the 1.18.0 release there will be several 1.18.x bug-fix releases
+which will contain bug fixes which have been deemed suitable for a
+stable branch, but no new features or intrusive changes will be added to
+a bug-fix release usually. The 1.18.x bug-fix releases will be made from
+the git 1.18 branch, which will be a stable branch.
+
+1.18.0
+
+1.18.0 has not been released yet.
+
+
+Known Issues
+
+-   FIXME
+
+
+Schedule for 1.20
+
+Our next major feature release will be 1.20, and 1.19 will be the
+unstable development version leading up to the stable 1.20 release. The
+development of 1.19/1.20 will happen in the git master branch.
+
+The plan for the 1.20 development cycle is yet to be confirmed.
+
+1.20 will be backwards-compatible to the stable 1.18, 1.16, 1.14, 1.12,
+1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
+
+------------------------------------------------------------------------
+
+_These release notes have been prepared by Tim-Philipp Müller with_
+_contributions from … (FIXME)_
+
+_License: CC BY-SA 4.0_