summaryrefslogtreecommitdiff
path: root/subprojects/gst-rtsp-server/NEWS
blob: cfa47b52e4d6c38331b894c725883879a33f3515 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
GStreamer 1.22 Release Notes

GStreamer 1.22 has not been released yet. It is scheduled for release
around the end of December 2022 / beginning of January 2023.

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.3 is the current development release in that series

A feature freeze is now into effect for the 1.21 branch, but newly-added
API might still change until the final 1.22.0 stable release, and minor
features may also still be added until then.

A first 1.22 release candidate (1.21.90) is expected towards
mid-December, followed by more release candiates until the new 1.22
stable release around the end of December 2022 / beginning of January
2023.

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: Monday 5 December 2022, 01: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

-   GStreamer may fail to build the hotdoc documentation with the Meson
    0.64.0 release owing to a Meson bug. This should only affect systems
    where hotdoc is installed, and will be fixed in Meson 0.64.1 by
    Meson PR 10982 in combination with GStreamer MR 3352. In the
    meantime, users can pass -Ddoc=disabled or downgrade to an older
    Meson version (< 0.64.0).

Contributors

Ádám Balázs, Adam Doupe, Adrian Fiergolski, Adrian Perez de Castro, Alba
Mendez, Aleix Conchillo Flaqué, Aleksandr Slobodeniuk, Alicia Boya
García, Alireza Miryazdi, Andoni Morales Alastruey, Andrew Pritchard,
Arun Raghavan, 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, Daniels Umanovskis, 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, François Laignel, 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, Julian
Bouzas, Junsoo Park, Justin Chadwell, Khem Raj, Krystian Wojtas, László
Károlyi, Linus Svensson, Loic Le Page, Loïc Le Page, Ludvig Rappe, Marc
Leeman, Marek Vasut, Marijn Suijten, Mark Nauwelaerts, Martin Dørum,
Martin Reboredo, Mart Raudsepp, Mathieu Duponchelle, Matt Crane, Matthew
Waters, Matthias Clasen, Matthias Fuchs, Mengkejiergeli Ba, MG
Lolenstine, Michael Gruner, Michal Kubiak, Mikhail Fludkov, Ming Qian,
Myles Inglis, Nicolas Dufresne, Nirbheek Chauhan, Olivier Crête,
Patricia Muscalu, Patrick Griffis, Paweł Stawicki, Peter Stensson,
Philippe Normand, Philipp Zabel, Pierre Bourré, Piotr Brzeziński,
Piotrek Brzeziński, Rabindra Harlalka, Rafael Caricio, Rafael Sobral,
Raul Tambre, Robert Mader, Robert Rosengren, Rouven Czerwinski, Ruben
Gonzalez, Sam Van Den Berge, 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, Wojciech
Kapsa, 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