Features
- The event
cpu-load-change
has a new propertycpuLoadStateReason
, with possible valuesENCODE, DECODE, SCHEDULE_DURATION, NONE
, to describe why the event has been triggered. The methodgetCpuLoadStats()
also has multiple new properties. - The
updateInputSettings()
method now supports audio processing for microphone tracks. The first feature released is noise cancellation built on top of Krisp's SDKs.
Bugfixes
- Fixed an issue with default audio output change detection, as well as an issue where the device returned by
call.getInputDevices().speaker
would often be a microphone. - Fixed an issue where a non-default audio output device specified via
setOutputDeviceAsync()
, wouldn't properly apply to audio elements in the DOM if they were added after the call tosetOutputDeviceAsync()
. For example, if a new participant joined afterward, or ifsetOutputDeviceAsync()
were invoked beforejoin()
. - Fixed a problem where setInterval() intervals that the call object starts are never cleaned up if the user doesn't end up
join()
ing a call first. Intervals should be cleaned up when the user invokesdestroy()
, whether or not they everjoin()
ed.
There is one side effect of this change: now, afterdestroy()
is run, the call object will always be left withmeetingState()
as either'left-meeting'
or'error'
, whereas previously the call object could also be left in a number of other states. - Fixed an issue where if you join a meeting in P2P mode with mic on, your audio sometimes doesn't play for the other person.
- Fixed the
DailyEventObjectCameraError
andDailyCameraErrorObject
type definitions to resolve to their defined camera error types, allowing developers to handle the different types of camera errors ergonomically in a TypeScript codebase. - Fixed an issue in our TypeScript definitions of custom layout properties passed to
startRecording()
/startLiveStreaming()
, to markcomposition_id
as optional. - Fixed an issue where, in P2P mode, toggling the camera off and back on would disable background effects.
Other improvements
- Increased the number of internal call quality statistics we record, for example the number of pauses and freezes in a video track or audio track.
- Made some meeting errors in connection failure cases more informative.
- Made a change to ensure that
instanceid
should always be included inlive-streaming-started
events.