Rust SDKs
Fixes
- Add native video pipeline timing instrumentation for local video measurements, exposing local publish and subscribe timing through async streams and subscriber overlay GPU upload and receive-to-GPU latency metrics through explicit timing observers.
Fixes
- Add native video pipeline timing instrumentation for local video measurements, exposing local publish and subscribe timing through async streams and subscriber overlay GPU upload and receive-to-GPU latency metrics through explicit timing observers.
Fixes
- bump protocol to v1.46.4 - #1121 (@lukasIO)
Fixes
- bump protocol to v1.46.4 - #1121 (@lukasIO)
- Add native video pipeline timing instrumentation for local video measurements, exposing local publish and subscribe timing through async streams and subscriber overlay GPU upload and receive-to-GPU latency metrics through explicit timing observers.
Features
- Introduce pipeline options for remote data tracks, support multiple in-flight frames.
feat: add Android application context initialization for PlatformAudio support.
Android requires ContextUtils.initialize(applicationContext) before WebRTC audio components can be created. This change:
- Adds
livekit_ffi_initialize_android_context()C FFI function for Unity and other FFI consumers - Uses
CreateAndroidAudioDeviceModule()instead of genericCreateAudioDeviceModule()on Android - Handles empty device GUIDs on Android (falls back to index 0)
- Documents Android-specific limitations: single default device, no app-level device selection
Platform notes:
- Android device enumeration returns only one "default" device with empty name/GUID
- Audio routing (speaker/earpiece/Bluetooth) is controlled by Android's AudioManager, not WebRTC
Fixes
- Filter internal data streams out of livekit-ffi interface - #1112 (@1egoman)
Fixes
feat: add Android application context initialization for PlatformAudio support.
Android requires ContextUtils.initialize(applicationContext) before WebRTC audio components can be created. This change:
- Adds
livekit_ffi_initialize_android_context()C FFI function for Unity and other FFI consumers - Uses
CreateAndroidAudioDeviceModule()instead of genericCreateAudioDeviceModule()on Android - Handles empty device GUIDs on Android (falls back to index 0)
- Documents Android-specific limitations: single default device, no app-level device selection
Platform notes:
- Android device enumeration returns only one "default" device with empty name/GUID
- Audio routing (speaker/earpiece/Bluetooth) is controlled by Android's AudioManager, not WebRTC
Fixes
feat: add Android application context initialization for PlatformAudio support.
Android requires ContextUtils.initialize(applicationContext) before WebRTC audio components can be created. This change:
- Adds
livekit_ffi_initialize_android_context()C FFI function for Unity and other FFI consumers - Uses
CreateAndroidAudioDeviceModule()instead of genericCreateAudioDeviceModule()on Android - Handles empty device GUIDs on Android (falls back to index 0)
- Documents Android-specific limitations: single default device, no app-level device selection
Platform notes:
- Android device enumeration returns only one "default" device with empty name/GUID
- Audio routing (speaker/earpiece/Bluetooth) is controlled by Android's AudioManager, not WebRTC
Fixes
- Disable default features for zip dependency
Features
- Introduce pipeline options for remote data tracks, support multiple in-flight frames.
Fixes
- Filter internal data streams out of livekit-ffi interface - #1112 (@1egoman)
feat: add Android application context initialization for PlatformAudio support.
Android requires ContextUtils.initialize(applicationContext) before WebRTC audio components can be created. This change:
- Adds
livekit_ffi_initialize_android_context()C FFI function for Unity and other FFI consumers - Uses
CreateAndroidAudioDeviceModule()instead of genericCreateAudioDeviceModule()on Android - Handles empty device GUIDs on Android (falls back to index 0)
- Documents Android-specific limitations: single default device, no app-level device selection
Platform notes:
- Android device enumeration returns only one "default" device with empty name/GUID
- Audio routing (speaker/earpiece/Bluetooth) is controlled by Android's AudioManager, not WebRTC
Features
- Introduce pipeline options for remote data tracks, support multiple in-flight frames.
Fixes
- Fix compilation error in depacketizer test by using correct variable name.
Fixes
- Bugfix: Always emit Disconnected on engine close - #1096 (@MaxHeimbrock)
- (WIP) FFI room event ready signal after initial connection - #1068 (@ladvoc, @stephen-derosa)
- Support for large RPC messages using data streams - #1013 (@1egoman)
Fixes
- Bugfix: Always emit Disconnected on engine close - #1096 (@MaxHeimbrock)
- Support for large RPC messages using data streams - #1013 (@1egoman)
Fixes
- Support for large RPC messages using data streams - #1013 (@1egoman)
Features
- FFI logging improvements
Make sample_rate and num_channels optional in NewAudioSourceRequest.
These fields are ignored for AudioSourcePlatform (ADM uses hardware native settings) and for AudioSourceNative fast path (queue_size_ms=0, frame values used directly). Defaults to 48000 Hz and 1 channel when not specified.
Fixes
- fix: don't fire local_track_subscribed during reconnect - #1099 (@davidzhao)
- Fix LocalTrackPublished handle leak - #1065 (@MaxHeimbrock)
- Return EOS event from data track stream read request
Fixes
- Expose room playout delay options in the server API and let the local video publisher recreate rooms with explicit min/max playout delay settings.
Fixes
- fix libwebrtc cache permissions and optimize CI test workflows - #1071 (@davidzhao)
Fixes
- Add AGENTS.md and minor doc revisions
- Add
cargo-fuzztarget for packet deserialization
