Commit 38c42566 authored by Tim-Philipp Müller's avatar Tim-Philipp Müller 🐠
Browse files

Update for GStreamer 1.20 release

parent 0d83df83
<!ENTITY gst-branch-stable "1.18">
<!ENTITY gst-version-stable "1.18.5">
<!ENTITY gst-version-devel "1.19.90">
<!ENTITY gst-branch-stable "1.20">
<!ENTITY gst-version-stable "1.20.0">
<!ENTITY gst-version-devel "git main">
<!ENTITY orc-version-stable "0.4.32">
<!ENTITY orc-version-devel "git master">
......
......@@ -11959,4 +11959,77 @@ Download tarballs directly here:
</content>
</item>
 
<item>
<date>2022-02-03 12:00</date>
<title>GStreamer 1.20.0 new major stable release</title>
<content>
<p>
The GStreamer team is excited to announce a new major feature release of
your favourite cross-platform multimedia framework!
</p>
<p>
As always, this release is again packed with new features, bug fixes and many other improvements.
</p>
<p>
The 1.20 release series adds new features on top of the previous 1.18 series
and is part of the API and ABI-stable 1.x release series of the GStreamer
multimedia framework.
</p>
<p>
<b>Highlights:</b>
<ul>
<li>Development in GitLab was <a href="https://gstreamer.freedesktop.org/documentation/frequently-asked-questions/mono-repository.html">switched</a> to a single git repository containing all the modules</li>
<li>GstPlay: new high-level playback library, replaces GstPlayer</li>
<li>WebM Alpha decoding support</li>
<li>Encoding profiles can now be tweaked with additional application-specified element properties</li>
<li>Compositor: multi-threaded video conversion and mixing</li>
<li>RTP header extensions: unified support in RTP depayloader and payloader base classes</li>
<li>SMPTE 2022-1 2-D Forward Error Correction support</li>
<li>Smart encoding (pass through) support for VP8, VP9, H.265 in <tt>encodebin</tt> and <tt>transcodebin</tt></li>
<li>Runtime compatibility support for libsoup2 and libsoup3 (libsoup3 support experimental)</li>
<li>Video decoder subframe support</li>
<li>Video decoder automatic packet-loss, data corruption, and keyframe request handling for RTP / WebRTC / RTSP</li>
<li>mp4 and Matroska muxers now support profile/level/resolution changes for H.264/H.265 input streams (i.e. codec data changing on the fly)</li>
<li>mp4 muxing mode that initially creates a fragmented mp4 which is converted to a regular mp4 on EOS</li>
<li>Audio support for the WebKit Port for Embedded (WPE) web page source element</li>
<li>CUDA based video color space convert and rescale elements and upload/download elements</li>
<li>NVIDIA <tt>memory:NVMM</tt> support for OpenGL <tt>glupload</tt> and <tt>gldownload</tt> elements</li>
<li>Many WebRTC improvements</li>
<li>The new VA-API plugin implementation fleshed out with more decoders and new postproc elements</li>
<li>AppSink API to retrieve events in addition to buffers and buffer lists</li>
<li>AppSrc gained more configuration options for the internal queue (leakiness, limits in buffers and time, getters to read current levels)</li>
<li>Updated Rust bindings and many new Rust plugins</li>
<li>Improved support for custom minimal GStreamer builds</li>
<li>Support build against FFmpeg 5.0</li>
<li>Linux Stateless CODEC support gained MPEG-2 and VP9</li>
<li>Windows Direct3D11/DXVA decoder gained AV1 and MPEG-2 support</li>
<li>Lots of new plugins, features, performance improvements and bug fixes</li>
</ul>
</p>
<p>
For more details check out the <a href="&site;/releases/1.20/">GStreamer 1.20 release notes</a>.
</p>
<p>
Binaries for Android, iOS, Mac OS X and Windows will be provided in due course.
</p>
<p>
You can download release tarballs directly here:
<a href="&site;/src/gstreamer/gstreamer-1.20.0.tar.xz">gstreamer</a>,
<a href="&site;/src/gst-plugins-base/gst-plugins-base-1.20.0.tar.xz">gst-plugins-base</a>,
<a href="&site;/src/gst-plugins-good/gst-plugins-good-1.20.0.tar.xz">gst-plugins-good</a>,
<a href="&site;/src/gst-plugins-ugly/gst-plugins-ugly-1.20.0.tar.xz">gst-plugins-ugly</a>,
<a href="&site;/src/gst-plugins-bad/gst-plugins-bad-1.20.0.tar.xz">gst-plugins-bad</a>,
<a href="&site;/src/gst-libav/gst-libav-1.20.0.tar.xz">gst-libav</a>,
<a href="&site;/src/gst-rtsp-server/gst-rtsp-server-1.20.0.tar.xz">gst-rtsp-server</a>,
<a href="&site;/src/gst-python/gst-python-1.20.0.tar.xz">gst-python</a>,
<a href="&site;/src/gst-editing-services/gst-editing-services-1.20.0.tar.xz">gst-editing-services</a>,
<a href="&site;/src/gst-devtools/gst-devtools-1.20.0.tar.xz">gst-devtools</a>,
<a href="&site;/src/gstreamer-vaapi/gstreamer-vaapi-1.20.0.tar.xz">gstreamer-vaapi</a>,
<a href="&site;/src/gstreamer-sharp/gstreamer-sharp-1.20.0.tar.xz">gstreamer-sharp</a>,
<a href="&site;/src/gst-omx/gst-omx-1.20.0.tar.xz">gst-omx</a>, or
<a href="&site;/src/gstreamer-docs/gstreamer-docs-1.20.0.tar.xz">gstreamer-docs</a>.
</p>
</content>
</item>
</news>
# GStreamer 1.20 Release Notes
GStreamer 1.20 has not been released yet. It is scheduled for release in early February 2022.
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.90 is the first release candidate in that series (1.20rc1).
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.
GStreamer 1.20.0 was released on 3 February 2022.
See [https://gstreamer.freedesktop.org/releases/1.20/][latest] for the latest version of this document.
*Last updated: Wednesday 26 January 2022, 01:00 UTC [(log)][gitlog]*
*Last updated: Wednesday 2 February 2022, 23:30 UTC [(log)][gitlog]*
[latest]: https://gstreamer.freedesktop.org/releases/1.20/
[gitlog]: https://gitlab.freedesktop.org/gstreamer/www/commits/master/src/htdocs/releases/1.20/release-notes-1.20.md
......@@ -853,8 +849,12 @@ Cerbero is a meta build system used to build GStreamer plus dependencies on plat
- XCode 12 support
- macOS OS release support is now future-proof, similar to iOS
- macOS Apple Silicon (ARM64) cross-compile support has been added
- macOS Apple Silicon (ARM64) native support is currently experimental
- macOS Apple Silicon (ARM64) cross-compile support has been added,
including Universal binaries. There is a [known bug][apple-silicon-bug] regarding this
on ARM64.
- Running Cerbero itself on macOS Apple Silicon (ARM64) is currently experimental and is known to have bugs
[apple-silicon-bug]: https://gitlab.freedesktop.org/gstreamer/cerbero/-/issues/361
#### Windows specific Cerbero improvements
......@@ -889,6 +889,10 @@ Cerbero is a meta build system used to build GStreamer plus dependencies on plat
- **applemedia**: add ProRes support to **vtenc** and **vtdec**
- The `GStreamer.framework` location is now relocatable and is not required to be `/Library/Frameworks/`
- Cerbero now supports cross-compiling to macOS running on Apple Silicon (ARM64), and Universal binaries are now available that can be used on both X86_64 and ARM64 macOS.
### Windows
- On Windows the high-resolution clock is enabled now in the `gst-launch-1.0` and `gst-play-1.0` command line tools, which provides better clock and timer performance on Windows, at the cost of higher power consumption. By default, without the high-resolution clock enabled, the timer precision on Windows is system-dependent and may be as bad as 15ms which is not good enough for many multimedia applications. Developers may want to do the same in their Windows applications if they think it's a good idea for their application use case, and depending on the Windows version they target. This is not done automatically by GStreamer because on older Windows versions (pre-Windows 10) this [affects a global Windows setting](https://docs.microsoft.com/en-us/windows/win32/api/timeapi/nf-timeapi-timebeginperiod#remarks) and also there's a power consumption vs. performance trade-off that may differ from application to application.
......@@ -1034,14 +1038,16 @@ sent suggestions or helped testing.
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,
usually. The 1.20.x bug-fix releases will be made from the [git 1.20 branch][1.20-branch],
which will be a stable branch.
[1.20-branch]: https://gitlab.freedesktop.org/gstreamer/gstreamer/-/commits/1.20/
<a name="1.20.0"></a>
### 1.20.0
1.20.0 is scheduled to be released around early February 2022.
1.20.0 was released on 3 February 2022.
## Schedule for 1.22
......
# GStreamer Releases
- **Latest stable release:** [1.18.6][latest-stable]
- **Latest development release:** [1.19.90 (1.20rc1)][1.19.90], [git main][latest-devel]
- **Latest stable release:** [1.20.0][latest-stable]
- **Latest development release:** [git `main`][latest-devel]
[latest-stable]: https://gstreamer.freedesktop.org/releases/1.18/#1.18.6
[latest-stable]: https://gstreamer.freedesktop.org/releases/1.20/
[latest-devel]: https://gitlab.freedesktop.org/gstreamer/gstreamer/
[1.19.90]: https://lists.freedesktop.org/archives/gstreamer-announce/2022-January/000517.html
### Current release
The current API and ABI stable GStreamer 1.x series is:
- [GStreamer 1.18 release series](https://gstreamer.freedesktop.org/releases/1.18/)
The upcoming stable GStreamer 1.x series is:
- [GStreamer 1.20 release series](https://gstreamer.freedesktop.org/releases/1.20/)
### Older releases
These releases are all part of the API and ABI stable GStreamer 1.x series:
- [GStreamer 1.18 release series](https://gstreamer.freedesktop.org/releases/1.18/)
- [GStreamer 1.16 release series](https://gstreamer.freedesktop.org/releases/1.16/)
- [GStreamer 1.14 release series](https://gstreamer.freedesktop.org/releases/1.14/)
- [GStreamer 1.12 release series](https://gstreamer.freedesktop.org/releases/1.12/)
......
Supports Markdown
0% or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment