v0.18.0
Added
-
It is now possible to create custom audio tracks with
CallClient.add_custom_audio_track(). The custom audio tracks need a custom audio source which can be created withCustomAudioSource(). You can also update an existing custom track with a new audio source withCallClient.update_custom_audio_track()or remove and existing custom track withCallClient.remove_custom_audio_track(). -
Support the new
canReceivepermission, which involves:- Showing the proper track state (i.e.
"off", with"receivePermission"among the"offReasons") whencanReceivepermission is lacking for a remote track. - Resuming receiving remote tracks when previously-revoked
canReceivepermissions have been restored.
- Showing the proper track state (i.e.
Changed
-
Error messages "no subscription for consumer" and "Failed to close consumer" are now logged as debug messages since they can be caused by a remote participant simply disconnecting which is a valid and common case.
-
Audio (
CallClient.set_audio_renderer()) and video (CallClient.set_video_renderer()) renderers callbacks now receive the audio and video source as the last argument.