GStreamer 1.29.2 unstable development snapshot release

The GStreamer team is pleased to announce another development release in the API/ABI-unstable 1.29 release series.

The API/ABI-unstable 1.29 release series is for testing and development purposes in the lead-up to the stable 1.30 series which is scheduled for release in late 2026.

Any newly-added API can still change until that point.

This development release is primarily for developers and early adopters.

Highlights:

  • webrtcbin2: New scalable WebRTC bin that uses fewer threads and native Rust DTLS, ICE and RTP session management implementations
  • rtspsrc2: implement support for SRTP, authentication, HTTP tunnelling, keep alive, stream selection, TLS validation, latency configuration
  • rtp2: New Rust RTP payloader and depayloader implementations for MPA audio, MPEG-2 video and raw video
  • Digitally Signed Content (DSC) support, initially for H.266 video
  • New D3D12-based element which performs color lookup operations using user-provided Adobe .cube LUT files
  • videoencoders: Support adaptive presets with resolution-dependent properties and implement in x264enc and nvh264enc
  • closedcaption: add h266seiinserter; add “do-timestamp” property to codecseiiinserter/merge_requests/10514)
  • flv: Add support for AV1 video
  • v4l2: add capture timestamps to buffers in v4l2src, and “bitrate” and “gop-size” properties to video encoders
  • applemedia: new iosurface helper library providing a memory:IOSurface abstraction
  • AMF: add super resolution hq-scaler component
  • New OpenGL glalphacombine element for RGBA inputs and Vulkan/OpenGL memory support for alphacombine
  • openjpeg: Add support for high bit depth formats
  • analytics: add semantic tag getter to GstAnalyticsMtd
  • tensordecoders: Add YOLO26 detection decoder
  • tfliteinference: support for external delegates, XNNPACK, and GRAY8 input
  • MP4: add support for losslessly-compressed video
  • matroskamux: add TrueHD audio and HDMV PGS subpicture support
  • playsink reconfiguration stability improvements
  • New agingradio and sofalizer audio effect elements
  • New image-rs based imagersoverlay element in Rust to replace gdkpixbufoverlay
  • webrtcsink: add v4l2h264enc (Raspberry Pi) encoder support and a signaller for Unreal Engine PixelStreaming
  • webrtcsink, webrtcsource: make custom signalling protocol extendable
  • Speech elements: implement support for non-synchronized output
  • d3d12: Add support for hardware-accelerated decoding of VP9 with alpha
  • androidmedia: New source element for Android assets
  • filesink: Add support for Windows file sharing mode to allow reading of file while it’s being written to
  • tracing: custom spans and events API and new tracers that integrate with the Rust tracing ecosystem
  • editing-services: auto-plug raw video converters from the registry based on compositor memory family and prepare for multi-threaded usage
  • dots-viewer: General enhancement of the web app
  • New viuersink video sink that plays video in the terminal, replacing aasink and cacasink
  • cerbero: Added ccache support for MSVC
  • Countless bug fixes, build fixes, memory leak fixes, and other stability and reliability improvements

For a detailed list of changes please check out the 1.29.2 release notes.

Binaries for Android, iOS, Mac OS X and Windows should be available soon.

As always, please let us know of any issues you run into by filing an issue or Merge Request in GitLab.

Thanks!