v1.0.0
What's Changed
- Room stats API by @alan-george-lk in #138
- ISSUE_TEMPLATE by @stephen-derosa in #147
- Room disconnect issue fix by @alan-george-lk in #146
- Breaking changes: remove deprecated code, return weak_ptr instead of raw, remove unused LogSink enum. More targetted docs. by @stephen-derosa and @alan-george-lk in #143
Full Changelog: v0.4.1...v1.0.0-rc
Public Breaking Changes
-
Removed the entire
livekit_bridgelibrary/API:liblivekit_bridge/ bridge CMake targetbridge/source, headers, tests, and README
-
Removed
TrackSource-keyed frame callback APIs:Room::setOnAudioFrameCallback(participant_identity, TrackSource, ...)Room::setOnVideoFrameCallback(participant_identity, TrackSource, ...)Room::clearOnAudioFrameCallback(participant_identity, TrackSource)Room::clearOnVideoFrameCallback(participant_identity, TrackSource)- Matching
SubscriptionThreadDispatcheroverloads
-
Removed deprecated SDK functions:
Room::ConnectRoom::room_infoAudioFrame::total_samples,sample_rate,num_channels,samples_per_channel,to_stringAudioSource::sample_rate,num_channels,ffi_handle_idParticipant::set_name,set_metadata,set_attributes,set_attribute,remove_attribute,set_kind,set_disconnect_reasonTrack::stream_state,mime_type,has_handle,ffi_handle_idResult::has_errorLocalAudioTrack::to_stringLocalVideoTrack::to_stringRemoteAudioTrack::to_stringRemoteVideoTrack::to_stringRemoteParticipant::to_stringVideoSource::ffi_handle_id
-
Signature changes:
- All method/function styling is now
camelBack()case. Prior violations of this were simply renamed, e.g.Connect()->connect(), androom_info->roomInfo() Room::e2eeManager()now returns a weak_ptrRoom::localParticipant()now returns a weak_ptrRoom:remoteParticipant()now returns a weak_ptrE2EEManager::keyProvider()now returns a weak_ptrlivekit::initialize()removed second argument and theLogSinkentirely. This was done to future proof releases. This was not decided lightly and was a result of the extensive log forwarding investigation done and minimizing breaking changes beyondv1.0.0. Context:LogSinkenum was not working as expected. If set tokCallback, it would enable FFIcapture_logs, but no support existed in the FFI client to handle those events. So functionally,kCallbackwould silently disable all Rust logs (never would reach console out or callbacks of any kind). Additionally, setting this value tokCallbackwouldn't actually forward logs to the user lambda. That only works vialivekit::setLoggingCallback
- All method/function styling is now