0.21.0 (Nov 7, 2017)
This version introduces a new a smarted algorithm for the conference switcher, along with a bunch of bug and stability fixes for conferences.
It also adds utilities for implemented improved user media access flows, such as a method for querying whether the page has permission to access devices, and a method for asking for permission.
- A warning will now be printed if the back-end version is too old to support all features available in the client SDK.
deviceSource.reconfigure, which allows reconfiguration of an active device source.
DeviceSource.queryPermissions, which returns the permission state of the different media types.
DeviceSource.requestPermissions, which requests permission to use audio and/or video devices, if needed.
DeviceSource.observeDeviceChanges, which can be used to detect changes to the available media devices.
DeviceSource.enumerateDevices now provides a list of default devices if the browser does not support device enumeration.
WaveformView, which renders an audio waveform to a canvas, which is useful for previewing audio devices.
ProxySource, to be replaced by more specialized components.
- Fix for passive calls not resetting properly when disconnecting, breaking the subsequent call.
- Improved conflict resolution logic between Chrome and Firefox, speeding up average call setup time and improving reliability.
- Fixed a timeout that was too short, causing high-latency connections to frequently fail.
- Fixed several bugs fixes and tweaks for conference connection setup logic and conference switcher.
- Voice activity detector will now treat locally muted audio streams as silent.
MediaBroadcaster.createAudioBroadcaster, a convenience method to avoid some boilerplate when setting up a simple full-mesh audio within a conference.
- RelayTreeVisualization can now highlight the own user by passing in ownId. It also show the secondary speaker stream as a red arrow, and uses stable colors based on user id.