The multimedia framework GStreamer 1.20.0 is available.

After a year and a half of development, GStreamer 1.20 has been released. This cross-platform set of components, written in C, is designed for creating a wide range of multimedia applications, from media players and audio/video file converters to VoIP applications and streaming systems. The GStreamer code is distributed under the LGPLv2.1 license. Simultaneously, updates to the plugins gst-plugins-base 1.20, gst-plugins-good 1.20, gst-plugins-bad 1.20, gst-plugins-ugly 1.20, as well as the gst-libav 1.20 wrapper and the gst-rtsp-server 20 streaming server, are available. At the API and ABI level, the new release is backward compatible with the 1.0 branch. Binary builds will soon be prepared for Android, iOS, macOS, and Windows (in Linux, it is recommended to use packages from your distribution).

Key improvements in GStreamer 1.20:

  • Development on GitLab has switched to using a single repository shared across all modules.
  • A new high-level library GstPlay has been added, replacing the GstPlayer API, which offers similar content playback functionality but uses a message bus for application notifications instead of GObject signals.
  • Support for decoding transparency information in the WebM format has been added, allowing playback of VP8/VP9 videos with transparent areas.
  • Coding profiles now support the adjustment of additional, application-specific properties.
  • Support for multi-threaded video transformation and mixing has been implemented in the Compositor.
  • Unified support for working with additional RTP header extensions (RTP Header Extensions) has been introduced in the depayloader and payloader classes.
  • Support for the SMPTE 2022-1 2-D forward error correction mechanism has been added.
  • A smart encoding mode has been implemented in encodebin and transcodebin for VP8, VP9, and H.265 codecs, where transcoding occurs only when necessary, otherwise, it passes through the existing stream.
  • Compatibility of the souphttpsrc plugin with libsoup2 and libsoup3 has been ensured.
  • The ability to decode input data at the sub-frame level has been introduced, allowing decoding to begin without waiting for a complete frame. Support for this optimization is utilized in the OpenJPEG JPEG 2000, FFmpeg H.264, and OpenMAX H.264/H.265 decoders.
  • Automatic handling of packet loss, data corruption, and key frame requests is provided when decoding video for RTP, WebRTC, and RTSP protocols.
  • Support for on-the-fly codec data changes has been added to the mp4 and Matroska media container packagers, allowing modification of profile, level, and resolution for incoming H.264/H.265 streams.
  • A mode for creating fragmented mp4 media containers has been added.
  • Sound support has been added to the WPE (WebKit Port for Embedded) base port.
  • CUDA can now be used for color space conversion, scaling elements, and loading items.
  • Support for NVMM (NVIDIA Memory Module) has been added for OpenGL elements glupload and gldownload.
  • WebRTC support has been improved.
  • A new plugin for VA-API (Video Acceleration API) has been introduced, supporting more decoders and post-processing elements.
  • The AppSink API now includes support for events in addition to buffers and buffer lists.
  • Additional settings for internal queues have been added in AppSrc.
  • Rust bindings have been updated and 26 new plugins written in Rust (gst-plugins-rs) have been added.
  • The aesdec and aesenc elements for encryption and decryption using the AES algorithm have been added.
  • The fakeaudiosink and videocodectestsink elements for testing and debugging have been added.
  • Tools for creating minimalist GStreamer builds have been enhanced.
  • Support for building with FFmpeg 5.0 has been added.
  • For Linux, MPEG-2 and VP9 codec variants operating in a stateless manner have been implemented.
  • Support for AV1 and MPEG-2 has been added to the Direct3D11/DXVA-based decoder for Windows.

Source: opennet.ru

Buy reliable website hosting with DDoS protection, VPS VDS servers 🔥 Buy reliable website hosting with DDoS protection, VPS VDS servers | ProHoster