March 15, 2023

In this release, we made a number of bug fixes to updateInputSettings(), which is used to configure background blur and effects. In addition, we made a number of performance improvements to the SDKs and Daily Prebuilt. Lastly, Daily calls now switch to an SFU topology when the 3rd participant joins a call.

daily-js

0.41.0

  • Made inputSettings specifiable in the join(), createCallObject(), and createFrame() methods, so that developers no longer need to join() first, and then call updateInputSettings(). See the inputSettings object's documentation for more info.
  • Fixed an issue where processed video tracks could fall back to a default aspect ratio when muted and unmuted, introducing unwanted cropping or letterboxing.
  • Fixed a memory leak which could occur when processed video tracks are muted and unmuted.
  • Fixed TypeScript definitions for streaming layouts to remove composition_id from the object passed to the updateRecording() function (where it is not allowed), while keeping it in startRecording(), where composition_id is required.
  • Fixed an issue where iframeEventInputSettingsUpdateError() was being sent an error object and not the error message string it expected.
  • Improved handling of custom backgrounds in the case where the background's aspect ratio doesn't match the video's aspect ratio, by fitting the custom background within the video frame.
  • Updated mediasoup-client to version 3.6.80, which among other things, adds unified plan support for React Native.
  • Fixed an issue where calling updateInputSettings() immediately before calling setLocalVideo() would result in an error.

react-native-daily-js

0.39.0

  • Fixed TypeScript definitions for streaming layouts to remove composition_id from the object passed to the updateRecording() function (where it is not allowed), while keeping it in startRecording(), where composition_id is required.
  • Updated mediasoup-client to version 3.6.80, which among other things, adds unified plan support for React Native, allowing our library to update react-native-webrtc to 106.0.6.
  • Updated react-native-webrtc to 106.0.6, which drops support for Plan B and adds support for Unified Plan in react-native-daily-js. Caution: As a consequence of the above, be careful not to use this version of react-native-webrtc with any earlier versions of react-native-daily-js, or any earlier versions of react-native-webrtc with this version of react-native-daily-js, as they will not be able to communicate.

Daily Prebuilt

  • Reduced the required amount of upload bandwidth required when a participant screen shares by no longer sending the top simulcast layer. This results in less bandwidth and CPU use for users that screen share.
  • Updated the emoji reaction streams such that both the Speaker and Grid view work similarly.
  • Fixed an issue where a meeting owner would not see a name change made by a participant who knocked for access to a private room.
  • Fixed an issue in Safari 14 where chat would not scroll correctly.
  • Fixed an issue where the layout would shift when opening the participant actions menu on a participant's tile.

VCS

  • Fixed an issue in the VCS Simulator where the peer list was out of sync with the inputs selected by the user.

Dashboard

  • Fixed an issue where accounts with lots of recordings were having issues loading the Recordings tab.
  • Fixed an issue where the onboarding test call was not working.
  • Fixed an issue where tooltips would appear at the wrong size or in the wrong place when the browser was zoomed in or out.

Additional

  • Daily calls now switch from a P2P to an SFU network topology when the 3rd participant joins a call. When the switchover happens can be controlled by a domain and room property called sfu_switchover. Through data analysis and experience, we've found that P2P calls perform best as 1:1 calls. Calls with 3 or more participants perform optimally on Daily's SFU infrastructure.
  • Resolved numerous bugs and security findings to help keep Daily's calls and platforms safe.
  • Fixed an issue that caused duplicate usage billing.
  • The oldest supported version of daily-js is now v0.30.0.