Upcoming changes
Last updated: 2024-03-21
Daily's SDKs are versioned, giving you control over the version you're using. This helps to prevent unexpected changes for your applications. But, some parts of Daily's technical stack run in our cloud, which you don't have control over. This includes media services, REST APIs, SFUs, and Daily Prebuilt. This page provides you with advanced notice for when those server-side applications will have a change in functionality, so you can test and configure before we deploy those changes.
Also, this page includes deprecation notifications for both client SDKs and server-side functionality.
Legend
New features and changes
Status | Description |
---|---|
In development | We're building this feature and are providing notice that it will soon be available to test. |
Testable | We've shipped a beta version of this feature that you can now test. |
Released | This feature has shipped and is enabled by default. You can disable it through a configuration parameter. |
Deprecations
Status | Description |
---|---|
Under consideration | We're considering removing this feature but no changes have been made yet. |
Deprecated | This feature is planned for removal in the near future. |
Removed | We have removed this feature. |
Notices
Deprecated strictMode: false for the purpose of allowing multiple call instances
- Affects:
- daily-js, react-native-daily-js
- Status:
- Deprecated
- Description:
strictMode: false
has been replaced with the opt-in flag,allowMultipleCallInstances: true
. Support for multiple call instances is now in pre-alpha support and the intended way to enable it is via the new flag. When support moves out of beta, we will make the new flag the only way to opt in and throw an Error if multiple instances are detected withoutallowMultipleCallInstances
regardless of thestrictMode
setting. Note:strictMode
, which defaults to true, will continue to be used for disallowing use of a Daily call instance after it has been destroyed.
Disable Picture-in-Picture for Safari users
- Affects:
- Daily Prebuilt
- Status:
- Released
- Description:
Daily Prebuilt is disabling Picture-in-Picture support for Safari users. Safari does not sufficiently support Picture-in-Picture functionality, which results in Safari crashing for users when a video stream ends. We will investigate reintroducing this feature for Safari in later versions.
Daily Adaptive Bitrate available to test for multi-party daily-js calls
- Affects:
- daily-js, react-native-daily-js
- Status:
- Testable
- Description:
Daily Adaptive Bitrate continually adapts the send settings to the current network conditions to deliver a call that is always reliable and when the network is good, delivers exceptional video quality. We are planning to make this feature on by default for all multi-party calls in the future. You can test this today. To learn more, check out our guide.
Daily Adaptive Bitrate to become the default setting for 1:1 daily-js calls
- Affects:
- daily-js, react-native-daily-js
- Status:
- Released
- Description:
Daily Adaptive Bitrate continually adapts the send settings to the current network conditions to deliver a call that is always reliable and when the network is good, delivers exceptional video quality. We are planning to make this feature on by default for all 1:1 calls in the near future. You can test this today. To learn more, check out our guide.
SFU to become the default mode for all calls
- Affects:
- daily-js, react-native-daily-js
- Status:
- Released
- Description:
We are planning to make a change that will result in all calls routing through Daily’s Global Mesh SFU infrastructure. For customers requiring P2P calls, you can keep the current configuration by setting the
sfu_switchover
property to2
. Over the years, we have made a substantial investment in our Global Mesh SFU infrastructure, which offers reliable connections and ultra low latencies from locations all around the world. In our testing and analysis of real world calls, SFU calls outperform P2P in every measure. For this reason, we are planning to bring these reliability and performance improvements to all Daily customers. If you’d like to learn more, contact us at help@daily.co.
Deprecated testConnectionQuality() and stopTestConnectionQuality()
- Affects:
- daily-js, react-native-daily-js
- Status:
- Deprecated
- Description:
The
testConnectionQuality()
andstopTestConnectionQuality()
methods are now deprecated. Instead, in daily-js you should use thetestCallQuality()
andstopTestCallQuality()
methods in their place. On react-native, please usetestPeerToPeerCallQuality()
andstopTestPeerToPeerCallQuality()
methods in their place. Contact us (help@daily.co) to learn more.
Deprecated getMeetingSession()
- Affects:
- daily-js, react-native-daily-js
- Status:
- Deprecated
- Description:
getMeetingSession() is now deprecated. Users should update their code to use the new and improved non-asynchronous
meetingSessionSummary()
.
Removing properties from participants()
method
participants()
method- Affects:
- daily-js, react-native-daily-js
- Status:
- Deprecated
- Description:
The following properties are deprecated:
audioTrack
,videoTrack
,screenAudioTrack
,screenVideoTrack
. In their place, use thepersistentTrack
; for example,tracks.audio.persistentTrack
. Also, the following properties are deprecated:audio
,video
,screen
. In their place, use the track state; for example,tracks.audio.state
. Lastly,cam_info
andscreen_info
are deprecated and replaced bytracks.video.state
andtracks.screenVideo.state
.
Removing screen capture options for Electron
- Affects:
- daily-js
- Status:
- Deprecated
- Description:
The screen capture options existed only for use in Electron apps.
daily-js
now provides custom track support and the ability to specify screen options through thestartScreenShare()
method.
Removing "output-byte-stream"
and "rtp-tracks"
recording types
"output-byte-stream"
and "rtp-tracks"
recording types- Affects:
- daily-js
- Status:
- Deprecated
- Description:
The
"output-byte-stream"
and"rtp-tracks"
recording types are superseded by"cloud"
and"raw-tracks"
recording types, respectively. They will be removed at a future date.