> ## Documentation Index
> Fetch the complete documentation index at: https://docs.daily.co/llms.txt
> Use this file to discover all available pages before exploring further.

# March 15, 2023

> The latest updates to Daily's real-time audio and video APIs.

## 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`](/reference/daily-js/types/daily-call-options#param-input-settings) 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](https://github.com/versatica/mediasoup-client/tree/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](https://github.com/versatica/mediasoup-client/tree/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](https://www.daily.co/tools/vcs-simulator/daily_baseline.html) 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`](/reference/rest-api/domain/get-domain-config#response-config-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.
