releases.shpreview
LiveKit/Rust SDKs

Rust SDKs

$npx -y @buildinternet/releases show livekit-rust-sdks
Mon
Wed
Fri
AprMayJunJulAugSepOctNovDecJanFebMarApr
Less
More
Releases66Avg20/moVersionsrust-sdks/webrtc-sys@0.3.21 → livekit-ffi/v0.12.52
Mar 31, 2026

What's Changed

Full Changelog: https://github.com/livekit/rust-sdks/compare/libwebrtc/v0.3.27...webrtc-7af9351

Mar 27, 2026

What's Changed

fix: fix unable to locate __arm_tpidr2_save for arm64 android/linux ffi

Full Changelog: https://github.com/livekit/rust-sdks/compare/libwebrtc/v0.3.27...webrtc-24f6822-3

Mar 23, 2026
livekit-ffi 0.12.50 (2026-03-22)

Features

E2EE: allow setting key_ring_size and key_derivation_algorithm, update webrtc to m144

#921 by @onestacked

This PR uses this webrtc-sdk PR to configure the KDF.

I've tested this with https://codeberg.org/esoteric_programmer/matrix-jukebox and it is compatible with Element Call.

Fixed: https://github.com/livekit/rust-sdks/issues/796

Fixes

  • Fix H.264 codec matching

add bounded buffer to audio_stream, and use 10 frames as the default

#945 by @xianshijing-lk

Send client os and os_version from rust

#952 by @MaxHeimbrock

Adds os_info crate as dependency and sends the data for client connections.

livekit-api 0.4.16 (2026-03-22)

Fixes

Send client os and os_version from rust

#952 by @MaxHeimbrock

Adds os_info crate as dependency and sends the data for client connections.

livekit-protocol 0.7.2 (2026-03-22)

Fixes

  • Add disconnectReason to Room::close
webrtc-sys-build 0.3.14 (2026-03-22)

Fixes

fix: Bump webrtc build to fix build for Android JNI prefixed.

#954 by @cloudwebrtc

fix clang build issue from zed patches (#949)

#950 by @cloudwebrtc

  • webrtc-sys: Use clang instead of gcc

  • Debug CI output for aarch64-linux

  • ci: Install lld for aarch64-linux FFI builders

  • webrtc-sys: Disable CREL

livekit-datatrack 0.1.1 (2026-03-22)

Features

  • Initial release.
webrtc-sys 0.3.25 (2026-03-22)

Fixes

  • fix: enable AGC2 adaptive digital controller
  • Fix H.264 codec matching

E2EE: allow setting key_ring_size and key_derivation_algorithm, update webrtc to m144

#921 by @onestacked

This PR uses this webrtc-sdk PR to configure the KDF.

I've tested this with https://codeberg.org/esoteric_programmer/matrix-jukebox and it is compatible with Element Call.

Fixed: https://github.com/livekit/rust-sdks/issues/796

fix clang build issue from zed patches (#949)

#950 by @cloudwebrtc

  • webrtc-sys: Use clang instead of gcc

  • Debug CI output for aarch64-linux

  • ci: Install lld for aarch64-linux FFI builders

  • webrtc-sys: Disable CREL

livekit 0.7.34 (2026-03-22)

Features

E2EE: allow setting key_ring_size and key_derivation_algorithm, update webrtc to m144

#921 by @onestacked

This PR uses this webrtc-sdk PR to configure the KDF.

I've tested this with https://codeberg.org/esoteric_programmer/matrix-jukebox and it is compatible with Element Call.

Fixed: https://github.com/livekit/rust-sdks/issues/796

Fixes

  • Add disconnectReason to Room::close
  • End-to-end testing for video streams
  • Fix H.264 codec matching

add bounded buffer to audio_stream, and use 10 frames as the default

#945 by @xianshijing-lk

fix PC timeout when connecting with can_subscribe=false

#955 by @s-hamdananwar

When a participant connects with canSubscribe=false in their token, the server sends subscriber_primary=false in the JoinResponse and does not send a subscriber offer. This results in wait_pc_connection timing out as it is expecting a subscriber PC even when the publisher PC is primary. This PR will skip waiting for subscriber PC when subscriber_primary=false.

Send client os and os_version from rust

#952 by @MaxHeimbrock

Adds os_info crate as dependency and sends the data for client connections.

libwebrtc 0.3.27 (2026-03-22)

Features

E2EE: allow setting key_ring_size and key_derivation_algorithm, update webrtc to m144

#921 by @onestacked

This PR uses this webrtc-sdk PR to configure the KDF.

I've tested this with https://codeberg.org/esoteric_programmer/matrix-jukebox and it is compatible with Element Call.

Fixed: https://github.com/livekit/rust-sdks/issues/796

Fixes

  • Fix H.264 codec matching

add bounded buffer to audio_stream, and use 10 frames as the default

#945 by @xianshijing-lk

fix clang build issue from zed patches (#949)

#950 by @cloudwebrtc

  • webrtc-sys: Use clang instead of gcc

  • Debug CI output for aarch64-linux

  • ci: Install lld for aarch64-linux FFI builders

  • webrtc-sys: Disable CREL

Mar 19, 2026

What's Changed

Full Changelog: https://github.com/livekit/rust-sdks/compare/livekit-api/v0.4.15...webrtc-24f6822-2

Mar 18, 2026
Mar 13, 2026
livekit-ffi 0.12.49 (2026-03-13)

Fixes

  • Update livekit dependencies
webrtc-sys 0.3.24 (2026-03-13)

Fixes

avoid getting webrtc into underrun

Before this change, the Rust implementation would only start sending silence frames after missing 10 consecutive audio frames. This could cause WebRTC's audio pipeline to enter an underrun state when audio stopped temporarily.

Once WebRTC enters underrun, resuming audio can significantly increase latency until the pipeline stabilizes again. In testing, this could add hundreds of milliseconds of additional latency when audio resumed shortly after the underrun.

This change ensures silence frames are sent earlier to prevent the audio pipeline from entering underrun. By maintaining a continuous stream of audio (including silence), WebRTC can avoid unnecessary buffering and latency spikes when audio resumes.

In testing, this reduces the additional latency observed after underrun recovery and results in more stable end-to-end audio latency.

webrtc-sys: Handle gracefully lack of libva on linux

#924 by @kubkon

livekit-wakeword 0.1.1 (2026-03-13)

Features

Add livekit-wakeword crate with ONNX-based wake word detection

#926 by @pham-tuan-binh

Summary

  • New livekit-wakeword crate with a stateless wake word detection pipeline
  • Pipeline: raw PCM audio → mel spectrogram → speech embeddings → classifier scores
  • Mel spectrogram and embedding models are bundled at compile time via include_bytes!
  • Wake word classifier models (e.g. hey_livekit.onnx) are loaded dynamically from disk at runtime
  • Supports multiple classifiers simultaneously, each returning a confidence score (0-1)
  • Input sample rate resampling via FIR resampler (supports 16–384 kHz, internally resamples to 16 kHz)
  • Pure-Rust ONNX backend via ort-tract (falls back to native ONNX Runtime on aarch64-pc-windows-msvc)
  • Fix mel spectrogram post-processing normalization (x/10 + 2) to match the openWakeWord pipeline
  • Custom WakeWordError enum replacing Box<dyn Error> in the public API

Test plan

  • cargo test -p livekit-wakeword — integration tests exercise the full pipeline
  • Validates score output is in [0.0, 1.0] range
  • Validates too-short audio returns zero scores
  • Positive WAV sample ("Hey LiveKit") scores >= 0.5 threshold
  • Negative WAV sample (non-wake-word audio) scores < 0.5 threshold
  • Rust scores match Python reference implementation (0.9997 positive, 0.0009 negative)
livekit 0.7.33 (2026-03-13)

Fixes

enhanced build configuration to support macOS and iOS platforms with proper system library linking

#847 by @SchmErik

fix video track subscription in single peer connection mode

#914 by @xianshijing-lk

livekit-api 0.4.15 (2026-03-13)

Fixes

Bump jsonwebtoken to v10 to address CVE-2026-25537

#917 by @gasmith

Feb 16, 2026
livekit-v0.7.32

Fixed

  • fix full_reconnect downgrade & don't ignore Leave messages (#893)

Other

  • turn single peerconnection off by default (#897)
  • ensure signal connections times out properly and retries (#895)
  • added Single Peer Connection support to Rust (#888)
  • set the simulcast codec & layers (#891)
livekit-api-v0.4.14

Fixed

  • fix full_reconnect downgrade & don't ignore Leave messages (#893)

Other

  • turn single peerconnection off by default (#897)
  • ensure signal connections times out properly and retries (#895)
  • added Single Peer Connection support to Rust (#888)
Latest
livekit-ffi/v0.12.52
Tracking Since
Oct 22, 2025
Last checked Apr 20, 2026