February 15, 2022

This release introduces some highly-anticipated new features! Firstly, virtual backgrounds: our Virtual Backgrounds API (currently in beta) allows you to set your video background with the image of your choice. This is an extension of our existing background blur feature from a few releases ago.

Virtual backgrounds can be used in desktop Daily Prebuilt calls or in your custom Daily apps to give you a little more privacy in calls regardless of where you're working. We appreciate any feedback or comments you have on it, especially during this beta period!

Virtual backgrounds in a Daily app

Our React Native library also had a big new feature land in this release: You can now use server-side recording with your Daily calls via the Daily API! We know this has been a highly requested feature and we've been working hard to get our React Native library to feature parity with Daily JS. This change allows you to start, update, and stop recordings, as well as listen for recording errors.

That covers our big additions but read on for the finer details, too!

daily-js 0.23.0

  • ✨ Beta ✨ Virtual backgrounds: Replacing your video background with an image is now supported in Daily Prebuilt and custom Daily apps using the updateInputSettings() method:

Virtual backgrounds are currently only supported on desktop Firefox and Chromium-based browsers (such as Chrome).

  • 🐛 Bug fix: If you set an input device (e.g. videoSource, audioSource) to false at the beginning of a call or during a call (e.g. createCallObject(), join(), setInputDevicesAsync()), the corresponding track state will now be reported as off. This behavior now matches how muting devices works (e.g. using setLocalAudio(false)), which — let's be honest — just makes more sense.

  • ☁️ The cloud recording type has officially been replaced by what we were previously referring to as cloud-beta. Our new cloud recording type gives you a lot more control over your recordings while still providing a server-side recording option.

react-native-daily-js 0.21.0

  • ⏺️ Server-side recording is now supported! Use startRecording(), updateRecording(), and stopRecording() to manage cloud and rtp-tracks recordings. Similar to with Daily JS, you can control the recording layout for cloud recordings on our React Native library, too. Learn more about Daily recordings in our recording guide.