Release 1.21.2
[platform/upstream/gstreamer.git] / subprojects / gstreamer / NEWS
1 GStreamer 1.22 Release Notes
2
3 GStreamer 1.22 has not been released yet. It is scheduled for release
4 around the end of December 2022.
5
6 1.21.x is the unstable development version that is being developed in
7 the git master branch and which will eventually result in 1.22, and
8 1.21.2 is the current development release in that series
9
10 It is expected that feature freeze will be around 18 November 2022,
11 followed by several 1.21 pre-releases and the new 1.22 stable release
12 around the end of December 2022.
13
14 1.22 will be backwards-compatible to the stable 1.20, 1.18, 1.16, 1.14,
15 1.12, 1.10, 1.8, 1.6,, 1.4, 1.2 and 1.0 release series.
16
17 See https://gstreamer.freedesktop.org/releases/1.22/ for the latest
18 version of this document.
19
20 Last updated: Monday 7 November 2022, 17:00 UTC (log)
21
22 Introduction
23
24 The GStreamer team is proud to announce a new major feature release in
25 the stable 1.x API series of your favourite cross-platform multimedia
26 framework!
27
28 As always, this release is again packed with many new features, bug
29 fixes and other improvements.
30
31 Highlights
32
33 -   this section will be completed in due course
34
35 Major new features and changes
36
37 Noteworthy new features and API
38
39 -   this section will be filled in in due course
40
41 New elements
42
43 -   this section will be filled in in due course
44
45 New element features and additions
46
47 -   this section will be filled in in due course
48
49 Plugin and library moves
50
51 -   this section will be filled in in due course
52
53 -   There were no plugin moves or library moves in this cycle.
54
55 Plugin removals
56
57 The following elements or plugins have been removed:
58
59 -   this section will be filled in in due course
60
61 Miscellaneous API additions
62
63 -   this section will be filled in in due course
64
65 Miscellaneous performance, latency and memory optimisations
66
67 -   this section will be filled in in due course
68
69 Miscellaneous other changes and enhancements
70
71 -   this section will be filled in in due course
72
73 Tracing framework and debugging improvements
74
75 -   this section will be filled in in due course
76
77 Tools
78
79 -   this section will be filled in in due course
80
81 GStreamer RTSP server
82
83 -   this section will be filled in in due course
84
85 GStreamer VAAPI
86
87 -   this section will be filled in in due course
88
89 GStreamer OMX
90
91 -   this section will be filled in in due course
92
93 GStreamer Editing Services and NLE
94
95 -   this section will be filled in in due course
96
97 GStreamer validate
98
99 -   this section will be filled in in due course
100
101 GStreamer Python Bindings
102
103 -   this section will be filled in in due course
104
105 GStreamer C# Bindings
106
107 -   this section will be filled in in due course
108
109 GStreamer Rust Bindings and Rust Plugins
110
111 The GStreamer Rust bindings are released separately with a different
112 release cadence that’s tied to gtk-rs, but the latest release has
113 already been updated for the upcoming new GStreamer 1.22 API.
114
115 gst-plugins-rs, the module containing GStreamer plugins written in Rust,
116 has also seen lots of activity with many new elements and plugins.
117
118 What follows is a list of elements and plugins available in
119 gst-plugins-rs, so people don’t miss out on all those potentially useful
120 elements that have no C equivalent.
121
122 -   FIXME: add new elements
123
124 Rust audio plugins
125
126 -   audiornnoise: New element for audio denoising which implements the
127     noise removal algorithm of the Xiph RNNoise library, in Rust
128 -   rsaudioecho: Port of the audioecho element from gst-plugins-good
129     rsaudioloudnorm: Live audio loudness normalization element based on
130     the FFmpeg af_loudnorm filter
131 -   claxondec: FLAC lossless audio codec decoder element based on the
132     pure-Rust claxon implementation
133 -   csoundfilter: Audio filter that can use any filter defined via the
134     Csound audio programming language
135 -   lewtondec: Vorbis audio decoder element based on the pure-Rust
136     lewton implementation
137
138 Rust video plugins
139
140 -   cdgdec/cdgparse: Decoder and parser for the CD+G video codec based
141     on a pure-Rust CD+G implementation, used for example by karaoke CDs
142 -   cea608overlay: CEA-608 Closed Captions overlay element
143 -   cea608tott: CEA-608 Closed Captions to timed-text (e.g. VTT or SRT
144     subtitles) converter
145 -   tttocea608: CEA-608 Closed Captions from timed-text converter
146 -   mccenc/mccparse: MacCaption Closed Caption format encoder and parser
147 -   sccenc/sccparse: Scenarist Closed Caption format encoder and parser
148 -   dav1dec: AV1 video decoder based on the dav1d decoder implementation
149     by the VLC project
150 -   rav1enc: AV1 video encoder based on the fast and pure-Rust rav1e
151     encoder implementation
152 -   rsflvdemux: Alternative to the flvdemux FLV demuxer element from
153     gst-plugins-good, not feature-equivalent yet
154 -   rsgifenc/rspngenc: GIF/PNG encoder elements based on the pure-Rust
155     implementations by the image-rs project
156
157 Rust text plugins
158
159 -   textwrap: Element for line-wrapping timed text (e.g. subtitles) for
160     better screen-fitting, including hyphenation support for some
161     languages
162
163 Rust network plugins
164
165 -   reqwesthttpsrc: HTTP(S) source element based on the Rust
166     reqwest/hyper HTTP implementations and almost feature-equivalent
167     with the main GStreamer HTTP source souphttpsrc
168 -   s3src/s3sink: Source/sink element for the Amazon S3 cloud storage
169 -   awstranscriber: Live audio to timed text transcription element using
170     the Amazon AWS Transcribe API
171
172 Generic Rust plugins
173
174 -   sodiumencrypter/sodiumdecrypter: Encryption/decryption element based
175     on libsodium/NaCl
176 -   togglerecord: Recording element that allows to pause/resume
177     recordings easily and considers keyframe boundaries
178 -   fallbackswitch/fallbacksrc: Elements for handling potentially
179     failing (network) sources, restarting them on errors/timeout and
180     showing a fallback stream instead
181 -   threadshare: Set of elements that provide alternatives for various
182     existing GStreamer elements but allow to share the streaming threads
183     between each other to reduce the number of threads
184 -   rsfilesrc/rsfilesink: File source/sink elements as replacements for
185     the existing filesrc/filesink elements
186
187 Build and Dependencies
188
189 -   this section will be filled in in due course
190
191 gst-build
192
193 -   this section will be filled in in due course
194
195 Cerbero
196
197 Cerbero is a meta build system used to build GStreamer plus dependencies
198 on platforms where dependencies are not readily available, such as
199 Windows, Android, iOS and macOS.
200
201 General improvements
202
203 -   this section will be filled in in due course
204
205 macOS / iOS
206
207 -   this section will be filled in in due course
208
209 Windows
210
211 -   this section will be filled in in due course
212
213 Windows MSI installer
214
215 -   this section will be filled in in due course
216
217 Linux
218
219 -   this section will be filled in in due course
220
221 Android
222
223 -   this section will be filled in in due course
224
225 Platform-specific changes and improvements
226
227 Android
228
229 -   this section will be filled in in due course
230
231 macOS and iOS
232
233 -   this section will be filled in in due course
234
235 Windows
236
237 -   this section will be filled in in due course
238
239 Linux
240
241 -   this section will be filled in in due course
242
243 Documentation improvements
244
245 -   this section will be filled in in due course
246
247 Possibly Breaking Changes
248
249 -   this section will be filled in in due course
250
251 Known Issues
252
253 -   this section will be filled in in due course
254
255 -   Known regressions/blockers:
256
257     -   FIXME
258
259 -   GStreamer may fail to build the hotdoc documentation with the Meson
260     0.64.0 release owing to a Meson bug. This should only affect systems
261     where hotdoc is installed, and will be fixed in Meson 0.64.1 by
262     Meson PR 10982 in combination with GStreamer MR 3352. In the
263     meantime, users can pass -Ddoc=disabled or downgrade to an older
264     Meson version (< 0.64.0).
265
266 Contributors
267
268 Ádám Balázs, Adam Doupe, Adrian Fiergolski, Adrian Perez de Castro, Alba
269 Mendez, Aleix Conchillo Flaqué, Aleksandr Slobodeniuk, Alicia Boya
270 García, Alireza Miryazdi, Andoni Morales Alastruey, Andrew Pritchard,
271 Arun Raghavan, Bastian Krause, Bastien Nocera, Benjamin Gaignard, Brad
272 Hards, Branko Subasic, Bruce Liang, Camilo Celis Guzman, Carlos
273 Falgueras García, Carlos Rafael Giani, Célestin Marot, Christopher
274 Obbard, Christoph Reiter, Chris Wiggins, Chun-wei Fan, Corentin Damman,
275 Corentin Noël, Damian Hobson-Garcia, Daniel Almeida, Daniel Morin,
276 Daniel Stone, Daniels Umanovskis, Danny Smith, David Svensson Fors,
277 Devin Anderson, Diogo Goncalves, Dmitry Osipenko, Dongil Park, Doug
278 Nazar, Edward Hervey, Eli Schwartz, Elliot Chen, Enrique Ocaña González,
279 Eric Knapp, Erwann Gouesbet, Fabian Orccon, Fabrice Fontaine, Fan F He,
280 fduncanh, Filip Hanes, Florian Zwoch, François Laignel, Fuga Kato,
281 George Kiagiadakis, Guillaume Desmottes, Gu Yanjie, Haihao Xiang, Haihua
282 Hu, Havard Graff, Heiko Becker, He Junyan, Hoonhee Lee, Hosang Lee, Hou
283 Qi, Ignacio Casal Quinteiro, Ignazio Pillai, Igor V. Kovalenko, Jakub
284 Adam, James Cowgill, James Hilliard, Jan Alexander Steffens (heftig),
285 Jan Schmidt, Jianhui Dai, jinsl00000, Johan Sternerup, Jonas Bonn, Jonas
286 Danielsson, Jordan Petridis, Joseph Donofry, Jose Quaresma, Julian
287 Bouzas, Junsoo Park, Justin Chadwell, Khem Raj, Krystian Wojtas, László
288 Károlyi, Linus Svensson, Loic Le Page, Loïc Le Page, Ludvig Rappe, Marc
289 Leeman, Marek Vasut, Marijn Suijten, Mark Nauwelaerts, Martin Dørum,
290 Martin Reboredo, Mart Raudsepp, Mathieu Duponchelle, Matt Crane, Matthew
291 Waters, Matthias Clasen, Matthias Fuchs, Mengkejiergeli Ba, MG
292 Lolenstine, Michael Gruner, Michal Kubiak, Mikhail Fludkov, Ming Qian,
293 Myles Inglis, Nicolas Dufresne, Nirbheek Chauhan, Olivier Crête,
294 Patricia Muscalu, Patrick Griffis, Paweł Stawicki, Peter Stensson,
295 Philippe Normand, Philipp Zabel, Pierre Bourré, Piotr Brzeziński,
296 Piotrek Brzeziński, Rabindra Harlalka, Rafael Caricio, Rafael Sobral,
297 Raul Tambre, Robert Mader, Robert Rosengren, Rouven Czerwinski, Ruben
298 Gonzalez, Sam Van Den Berge, Sanchayan Maity, Sangchul Lee, Sebastian
299 Dröge, Sebastian Fricke, Sebastian Groß, Sebastian Mueller, Sebastian
300 Wick, Sergei Kovalev, Seungha Yang, Sherrill Lin, Shingo Kitagawa,
301 Stéphane Cerveau, Thibault Saunier, Tim Mooney, Tim-Philipp Müller,
302 Tomasz Andrzejak, Tom Schuring, Tong Wu, toor, Tristan Matthews, Tulio
303 Beloqui, U. Artie Eoff, Víctor Manuel Jáquez Leal, Vincent Cheah Beng
304 Keat, Vivia Nikolaidou, Vivienne Watermeier, WANG Xuerui, Wojciech
305 Kapsa, Wonchul Lee, Wu Tong, Xabier Rodriguez Calvar, Xavier Claessens,
306 Yatin Maan, Yeongjin Jeong, Zebediah Figura, Zhao Zhili, Zhiyuan Liu,
307
308 … and many others who have contributed bug reports, translations, sent
309 suggestions or helped testing.
310
311 Stable 1.22 branch
312
313 After the 1.22.0 release there will be several 1.22.x bug-fix releases
314 which will contain bug fixes which have been deemed suitable for a
315 stable branch, but no new features or intrusive changes will be added to
316 a bug-fix release usually. The 1.22.x bug-fix releases will be made from
317 the git 1.22 branch, which will be a stable branch.
318
319 1.22.0
320
321 1.22.0 is scheduled to be released around December 2022.
322
323 Schedule for 1.24
324
325 Our next major feature release will be 1.24, and 1.23 will be the
326 unstable development version leading up to the stable 1.24 release. The
327 development of 1.23/1.24 will happen in the git main branch of the
328 GStreamer mono repository.
329
330 The plan for the 1.24 development cycle is yet to be confirmed.
331
332 1.24 will be backwards-compatible to the stable 1.22, 1.20, 1.18, 1.16,
333 1.14, 1.12, 1.10, 1.8, 1.6, 1.4, 1.2 and 1.0 release series.
334
335 ------------------------------------------------------------------------
336
337 These release notes have been prepared by Tim-Philipp Müller with
338 contributions from …
339
340 License: CC BY-SA 4.0