github element-hq/element-call v0.21.0-rc.1

pre-release5 hours ago

What's Changed

We are making a small but significant change in Element Call. With this EC release, we will be using the multi-SFU approach for our video and voice calls.

The big advantage is that it mitigates any negotiation over which SFU users in a call connect to. Instead, everyone connects to the SFU associated with their homeserver. No negotiation required. If you want to subscribe to a stream from someone on a different homeserver, Element Call will connect to that SFU in subscribe-only mode. You still have the option to switch back to legacy mode (negotiate on one SFU) using the developer settings tab.

EC has been compatible with this mode for 6 months already, so the whole ecosystem should be updated by now and this should not lead to any incompatibilities.

Of course, this requires every call participant to have an SFU associated with their homeserver if they want to participate in a session. Since we already have checks in place so only users with an SFU can join a call, this should not make a difference for anyone already on the latest versions.

✨ Features

  • Default to compatibilty mode (multi sfu) - non breaking, as multi-sfu is compatible with all versions younger 6 month by @toger5 in #4066

🙌 Improvements

🐛 Bugfixes

  • Add primary button icon configuration and set it left arrow in lobby by @toger5 in #4032
  • fix(voice): Default to earpiece for voice only call by @BillCarsonFr in #4064

💾 Developer Experience

👒 Dependencies

  • Update dependency @vector-im/compound-web to v9.5.0 by @renovate[bot] in #4069

Full Changelog: v0.20.2...v0.21.0-rc.1

Docker full package

Element Call is available as a Docker image from the GitHub Container Registry.

The image provides a full build of Element Call that can be used both in standalone and as a widget (on a remote URL).

docker pull ghcr.io/element-hq/element-call:v0.21.0-rc.1

Embedded packages

This release includes the following embedded packages that allow Element Call to be used as an embedded widget
within another application.

NPM

npm install @element-hq/element-call-embedded@0.21.0-rc.1

Android AAR

dependencies {
  implementation 'io.element.android:element-call-embedded:0.21.0-rc.1'
}

SwiftPM

.package(url: "https://github.com/element-hq/element-call-swift.git", from: "0.21.0-rc.1")

Don't miss a new element-call release

NewReleases is sending notifications on new releases.