X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=NEWS;h=0e581c39b8f309e72086551ee7ea1045409aa9da;hb=1b4ae195f72665dc21f133ee656333a025f67bb0;hp=e04f318449156650146e9b87845e0cc39713a614;hpb=e49c492a53ca637f3cec83987a317630370d3000;p=platform%2Fupstream%2Fgstreamer.git diff --git a/NEWS b/NEWS index e04f318..0e581c3 100644 --- a/NEWS +++ b/NEWS @@ -1,64 +1,299 @@ -This is GStreamer 1.6.0 +GStreamer 1.20 Release Notes -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! +GStreamer 1.20 has not been released yet. It is scheduled for release +around October/November 2021. -This release has been in the works for more than a year and is packed with new -features, bug fixes and other improvements. +1.19.x is the unstable development version that is being developed in +the git main branch and which will eventually result in 1.20, and 1.19.2 +is the current development release in that series -See http://gstreamer.freedesktop.org/releases/1.6/ for the full list of -changes. +It is expected that feature freeze will be in early October 2021, +followed by one or two 1.19.9x pre-releases and the new 1.20 stable +release around October/November 2021. + +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. + +See https://gstreamer.freedesktop.org/releases/1.20/ for the latest +version of this document. + +Last updated: Wednesday 22 September 2021, 18:00 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 -- Stereoscopic 3D and multiview video support -- Trick mode API for key-frame only fast-forward/fast-reverse playback etc. -- Improved DTS (decoding timestamp) vs. PTS (presentation timestamp) handling - to account for negative DTS -- New GstVideoConverter API for more optimised and more correct conversion of - raw video frames between all supported formats, with rescaling -- v4l2src now supports renegotiation -- v4l2transform can now do scaling -- V4L2 Element now report Colorimetry properly -- Easier chunked recording of MP4, Matroska, Ogg, MPEG-TS: new splitmuxsink - and multifilesink improvements -- Content Protection signalling API and Common Encryption (CENC) support for - DASH/MP4 -- Many adaptive streaming (DASH, HLS and MSS) improvements -- New PTP and NTP network client clocks and better remote clock tracking - stability -- High-quality text subtitle overlay at display resolutions with glimagesink - or gtkglsink -- RECORD support for the GStreamer RTSP Server -- Retransmissions (RTX) support in RTSP server and client -- RTSP seeking support in client and server has been fixed -- RTCP scheduling improvements and reduced size RTCP support -- MP4/MOV muxer acquired a new "robust" mode of operation which attempts to - keep the output file in a valid state at all times -- Live mixing support in aggregator, audiomixer and compositor was improved a - lot -- compositor now supports rescaling and converting inputs streams on the fly -- New audiointerleave element with proper input synchronisation and live input - support -- Blackmagic Design DeckLink capture and playback card support was rewritten - from scratch; 2k/4k support; mode sensing -- KLV metadata support in RTP and MPEG-TS -- H.265 video encoder (x265), decoders (libav, libde265) and RTP payloader and - depayloaders -- New DTLS plugin and SRTP/DTLS support -- OpenGL3 support, multiple contexts and context propagation, 3D video, - transfer/conversion separation, subtitle blending -- New OpenGL-based QML video sink, Gtk GL video sink, CoreAnimation - CAOpenGLLayerSink video sink -- gst-libav switched to ffmpeg as libav-provider, gains support for - 3D/multiview video, trick modes, and the CAVS codec -- GstHarness API for unit tests -- gst-editing-services got a completely new ges-launch-1.0 interface, improved - mixing support and integration into gst-validate -- gnonlin has been deprecated in favor of nle (Non Linear Engine) in - gst-editing-services -- gst-validate has a new plugin system, an extensive default testsuite, - support for concurrent test runs and valgrind support -- cerbero build tool for SDK binary packages gains new 'bundle-source' command -- Various improvements to the Android, iOS, OS X and Windows platform support +- this section will be completed in due course + +Major new features and changes + +Noteworthy new features and API + +- this section will be filled in in due course + +New elements + +- this section will be filled in in due course + +New element features and additions + +- this section will be filled in in due course + +Plugin and library moves + +- this section will be filled in in due course + +- There were no plugin moves or library moves in this cycle. + +Plugin removals + +The following elements or plugins have been removed: + +- this section will be filled in in due course + +Miscellaneous API additions + +- this section will be filled in in due course + +Miscellaneous performance, latency and memory optimisations + +- this section will be filled in in due course + +Miscellaneous other changes and enhancements + +- this section will be filled in in due course + +Tracing framework and debugging improvements + +- this section will be filled in in due course + +Tools + +- this section will be filled in in due course + +GStreamer RTSP server + +- this section will be filled in in due course + +GStreamer VAAPI + +- this section will be filled in in due course + +GStreamer OMX + +- this section will be filled in in due course + +GStreamer Editing Services and NLE + +- this section will be filled in in due course + +GStreamer validate + +- this section will be filled in in due course + +GStreamer Python Bindings + +- this section will be filled in in due course + +GStreamer C# Bindings + +- this section will be filled in in due course + +GStreamer Rust Bindings and Rust Plugins + +The GStreamer Rust bindings are released separately with a different +release cadence that’s tied to gtk-rs, but the latest release has +already been updated for the upcoming new GStreamer 1.20 API. + +gst-plugins-rs, the module containing GStreamer plugins written in Rust, +has also seen lots of activity with many new elements and plugins. + +What follows is a list of elements and plugins available in +gst-plugins-rs, so people don’t miss out on all those potentially useful +elements that have no C equivalent. + +- FIXME: add new elements + +Rust audio plugins + +- audiornnoise: New element for audio denoising which implements the + noise removal algorithm of the Xiph RNNoise library, in Rust +- rsaudioecho: Port of the audioecho element from gst-plugins-good + rsaudioloudnorm: Live audio loudness normalization element based on + the FFmpeg af_loudnorm filter +- claxondec: FLAC lossless audio codec decoder element based on the + pure-Rust claxon implementation +- csoundfilter: Audio filter that can use any filter defined via the + Csound audio programming language +- lewtondec: Vorbis audio decoder element based on the pure-Rust + lewton implementation + +Rust video plugins + +- cdgdec/cdgparse: Decoder and parser for the CD+G video codec based + on a pure-Rust CD+G implementation, used for example by karaoke CDs +- cea608overlay: CEA-608 Closed Captions overlay element +- cea608tott: CEA-608 Closed Captions to timed-text (e.g. VTT or SRT + subtitles) converter +- tttocea608: CEA-608 Closed Captions from timed-text converter +- mccenc/mccparse: MacCaption Closed Caption format encoder and parser +- sccenc/sccparse: Scenarist Closed Caption format encoder and parser +- dav1dec: AV1 video decoder based on the dav1d decoder implementation + by the VLC project +- rav1enc: AV1 video encoder based on the fast and pure-Rust rav1e + encoder implementation +- rsflvdemux: Alternative to the flvdemux FLV demuxer element from + gst-plugins-good, not feature-equivalent yet +- rsgifenc/rspngenc: GIF/PNG encoder elements based on the pure-Rust + implementations by the image-rs project + +Rust text plugins + +- textwrap: Element for line-wrapping timed text (e.g. subtitles) for + better screen-fitting, including hyphenation support for some + languages + +Rust network plugins + +- reqwesthttpsrc: HTTP(S) source element based on the Rust + reqwest/hyper HTTP implementations and almost feature-equivalent + with the main GStreamer HTTP source souphttpsrc +- s3src/s3sink: Source/sink element for the Amazon S3 cloud storage +- awstranscriber: Live audio to timed text transcription element using + the Amazon AWS Transcribe API + +Generic Rust plugins + +- sodiumencrypter/sodiumdecrypter: Encryption/decryption element based + on libsodium/NaCl +- togglerecord: Recording element that allows to pause/resume + recordings easily and considers keyframe boundaries +- fallbackswitch/fallbacksrc: Elements for handling potentially + failing (network) sources, restarting them on errors/timeout and + showing a fallback stream instead +- threadshare: Set of elements that provide alternatives for various + existing GStreamer elements but allow to share the streaming threads + between each other to reduce the number of threads +- rsfilesrc/rsfilesink: File source/sink elements as replacements for + the existing filesrc/filesink elements + +Build and Dependencies + +- this section will be filled in in due course + +gst-build + +- this section will be filled in in due course + +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. + +General improvements + +- this section will be filled in in due course + +macOS / iOS + +- this section will be filled in in due course + +Windows + +- this section will be filled in in due course + +Windows MSI installer + +- this section will be filled in in due course + +Linux + +- this section will be filled in in due course + +Android + +- this section will be filled in in due course + +Platform-specific changes and improvements + +Android + +- this section will be filled in in due course + +macOS and iOS + +- this section will be filled in in due course + +Windows + +- this section will be filled in in due course + +Linux + +- this section will be filled in in due course + +Documentation improvements + +- this section will be filled in in due course + +Possibly Breaking Changes + +- this section will be filled in in due course +- MPEG-TS SCTE-35 API changes (FIXME: flesh out) +- gst_parse_launch() and friends now error out on non-existing + properties on top-level bins where they would silently fail and + ignore those before. + +Known Issues + +- this section will be filled in in due course + +- There are a couple of known WebRTC-related regressions/blockers: + + - webrtc: DTLS setup with Chrome is broken + - webrtcbin: First keyframe is usually lost + +Contributors + +- this section will be filled in in due course + +… and many others who have contributed bug reports, translations, sent +suggestions or helped testing. + +Stable 1.20 branch + +After the 1.20.0 release there will be several 1.20.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.20.x bug-fix releases will be made from +the git 1.20 branch, which will be a stable branch. + +1.20.0 + +1.20.0 is scheduled to be released around October/November 2021. + +Schedule for 1.22 + +Our next major feature release will be 1.22, and 1.21 will be the +unstable development version leading up to the stable 1.22 release. The +development of 1.21/1.22 will happen in the git main branch. + +The plan for the 1.22 development cycle is yet to be confirmed. + +1.22 will be backwards-compatible to the stable 1.20, 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 … +License: CC BY-SA 4.0