mirror of
https://gitlab.freedesktop.org/gstreamer/gstreamer.git
synced 2024-12-30 04:00:37 +00:00
329 lines
11 KiB
Text
329 lines
11 KiB
Text
GStreamer 1.22 Release Notes
|
||
|
||
GStreamer 1.22 has not been released yet. It is scheduled for release
|
||
around the end of December 2022.
|
||
|
||
1.21.x is the unstable development version that is being developed in
|
||
the git master branch and which will eventually result in 1.22, and
|
||
1.21.1 is the current development release in that series
|
||
|
||
It is expected that feature freeze will be around November 2021,
|
||
followed by several 1.21 pre-releases and the new 1.22 stable release
|
||
around the end of December 2022.
|
||
|
||
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.
|
||
|
||
See https://gstreamer.freedesktop.org/releases/1.22/ for the latest
|
||
version of this document.
|
||
|
||
Last updated: Tuesday 4 October 2022, 00: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
|
||
|
||
- 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.22 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
|
||
|
||
Known Issues
|
||
|
||
- this section will be filled in in due course
|
||
|
||
- Known regressions/blockers:
|
||
|
||
- FIXME
|
||
|
||
Contributors
|
||
|
||
Ádám Balázs, Adam Doupe, Adrian Fiergolski, Adrian Perez de Castro,
|
||
Aleix Conchillo Flaqué, Alicia Boya García, Alireza Miryazdi, Andoni
|
||
Morales Alastruey, Andrew Pritchard, Bastian Krause, Bastien Nocera,
|
||
Benjamin Gaignard, Brad Hards, Branko Subasic, Bruce Liang, Camilo Celis
|
||
Guzman, Carlos Falgueras García, Carlos Rafael Giani, Célestin Marot,
|
||
Christopher Obbard, Christoph Reiter, Chris Wiggins, Chun-wei Fan,
|
||
Corentin Damman, Corentin Noël, Damian Hobson-Garcia, Daniel Almeida,
|
||
Daniel Morin, Daniel Stone, Danny Smith, David Svensson Fors, Devin
|
||
Anderson, Diogo Goncalves, Dmitry Osipenko, Dongil Park, Doug Nazar,
|
||
Edward Hervey, Eli Schwartz, Elliot Chen, Enrique Ocaña González, Eric
|
||
Knapp, Erwann Gouesbet, Fabian Orccon, Fabrice Fontaine, Fan F He,
|
||
fduncanh, Filip Hanes, Florian Zwoch, Fuga Kato, George Kiagiadakis,
|
||
Guillaume Desmottes, Gu Yanjie, Haihao Xiang, Haihua Hu, Havard Graff,
|
||
Heiko Becker, He Junyan, Hoonhee Lee, Hosang Lee, Hou Qi, Ignacio Casal
|
||
Quinteiro, Ignazio Pillai, Igor V. Kovalenko, Jakub Adam, James Cowgill,
|
||
James Hilliard, Jan Alexander Steffens (heftig), Jan Schmidt, Jianhui
|
||
Dai, jinsl00000, Johan Sternerup, Jonas Bonn, Jonas Danielsson, Jordan
|
||
Petridis, Joseph Donofry, Jose Quaresma, Junsoo Park, Khem Raj, Krystian
|
||
Wojtas, László Károlyi, Loïc Le Page, Ludvig Rappe, Marc Leeman, Marek
|
||
Vasut, Mark Nauwelaerts, Martin Dørum, Martin Reboredo, Mart Raudsepp,
|
||
Mathieu Duponchelle, Matt Crane, Matthew Waters, Matthias Clasen,
|
||
Matthias Fuchs, Mengkejiergeli Ba, MGlolenstine, Mikhail Fludkov, Ming
|
||
Qian, Myles Inglis, Nicolas Dufresne, Nirbheek Chauhan, Olivier Crête,
|
||
Patricia Muscalu, Paweł Stawicki, Philippe Normand, Philipp Zabel,
|
||
Pierre Bourré, Piotr Brzeziński, Rabindra Harlalka, Rafael Caricio,
|
||
Rafael Sobral, Raul Tambre, Robert Mader, Robert Rosengren, Rouven
|
||
Czerwinski, Ruben Gonzalez, Sanchayan Maity, Sangchul Lee, Sebastian
|
||
Dröge, Sebastian Fricke, Sebastian Groß, Sebastian Mueller, Sebastian
|
||
Wick, Sergei Kovalev, Seungha Yang, Sherrill Lin, Shingo Kitagawa,
|
||
Stéphane Cerveau, Thibault Saunier, Tim Mooney, Tim-Philipp Müller,
|
||
Tomasz Andrzejak, Tom Schuring, Tong Wu, toor, Tristan Matthews, Tulio
|
||
Beloqui, U. Artie Eoff, Víctor Manuel Jáquez Leal, Vincent Cheah Beng
|
||
Keat, Vivia Nikolaidou, Vivienne Watermeier, WANG Xuerui, Wonchul Lee,
|
||
Wu Tong, Xabier Rodriguez Calvar, Xavier Claessens, Yatin Maan, Yeongjin
|
||
Jeong, Zebediah Figura, Zhao Zhili, Zhiyuan Liu,
|
||
|
||
… and many others who have contributed bug reports, translations, sent
|
||
suggestions or helped testing.
|
||
|
||
Stable 1.22 branch
|
||
|
||
After the 1.22.0 release there will be several 1.22.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.22.x bug-fix releases will be made from
|
||
the git 1.22 branch, which will be a stable branch.
|
||
|
||
1.22.0
|
||
|
||
1.22.0 is scheduled to be released around December 2022.
|
||
|
||
Schedule for 1.24
|
||
|
||
Our next major feature release will be 1.24, and 1.23 will be the
|
||
unstable development version leading up to the stable 1.24 release. The
|
||
development of 1.23/1.24 will happen in the git main branch of the
|
||
GStreamer mono repository.
|
||
|
||
The plan for the 1.24 development cycle is yet to be confirmed.
|
||
|
||
1.24 will be backwards-compatible to the stable 1.22, 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
|