Home
/ Blog /
Why Migrate from Twilio/Agora to 100ms?October 3, 20224 min read
Share
Are you on the hunt for a live video solution to replace your current tech stack powered by Agora or Twilio? 100ms might just be the alternative you are looking for. With truly scalable, reliable and dev-friendly live video SDKs, 100ms is your new best bet for Real-time Video Conferencing and Interactive Live Streaming.
The 100ms SDK comes with everything live video stuffed into a single lightweight package. You don’t have to worry about switching SDKs for implementing specific features like live streaming, chat or virtual background in your app. In this article, we will be comparing Twilio, Agora and 100ms in terms of the feature set you can build around with, and talk about what 100ms does differently that you might end up loving it.
To start with, here are a few reasons to consider 100ms over Twilio’s and Agora’s video SDKs:
At a high level, here’s how 100ms’ SDK compares with Twilio and Agora in terms of features:
Twilio | Agora | 100ms | |
---|---|---|---|
Video Calling/Conferencing | ✅ Available. | ✅ Available. | ✅ Available. |
Live Streaming | Can be built with Twilio Live SDK. | Can be built with Agora Interactive Live Streaming SDK. | ✅ Available. |
Chat | Can be built with Twilio Conversations API. | Can be built with Agora Chat API (Beta). | ✅ Available. |
Raise Hand | Possible to implement with DataTrack API without a persistent state. Might not be visible to newly joining peers. | Possible to implement with Agora RTM SDK. To raise a hand, a message with a request can be sent. | Easy to implement with Peer Metadata with a persistent state that is visible even to newly joining peers. |
Video Background Modification | Can be built with Twilio Video Processor Library. | Can be built with Agora Virtual Background Extension. | ✅ Pre-built virtual background feature available. |
Screen Share | ✅ Available. | ✅ Available. | ✅ Available. |
Mute/Unmute Remote Peer | Possible to implement with DataTrack API by sending a message. | Possible to implement with RTM SDK by sending a message. | ✅ Available. |
Remove (Kick) Remote Peer | ❌ Not available. | ❌ Not available. | ✅ Available. |
Persistent Peer State | ❌ Not available. | ❌ Not available. | ✅ Available. Known as Peer Metadata. |
Noise Reduction | ✅ Available. | ✅ Available. | ✅ Available. |
Recording | ✅ Available. | ✅ Available. | ✅ Available. |
Platforms/Frameworks | Web, Android, iOS. | Web, Android, iOS, Flutter, React Native, Windows, macOS, Unity, Electron. | Web, Android, iOS, Flutter, React Native. |
In addition to the feature comparison, here are a couple of examples of how 100ms has thought through little things contributing to easier and faster development:
Managing the publish/subscribe permissions for a peer can be a tedious task. Both Twilio and Agora SDKs do not offer any out-of-the-box solution, making it even more difficult to design permissions the way you imagine.
100ms simplifies this problem with the concept of Roles
. Roles
allow developers to deal with the collection of permissions that a peer has and determine whether a peer has appropriate publish/subscribe rights. For example, Roles
can signal whether a peer can mute/unmute another peer in the same room.
You can use pre-defined roles or create your own without any additional coding. This significantly reduce the effort required to manage peer permissions. For a deep-dive into how Roles work, check out this piece on roles in 100ms.
It is possible to store the persistent state of a peer with 100ms. The Peer Metadata
can be used to set data that can be updated anytime and is persisted across peers as they join and leave a room. Many useful features like raise hand and storing extra information about a peer are implemented reliably through this offering.
The persistence of this data is a key differentiation with 100ms. To contrast, both Twilio and Agora offer interactive capabilities like the raise hand feature (enabling or disabling it). But the way in which they are implemented compromises on reliability at times. For Twilio, this can be implemented with DataTrack
and for Agora, RTM SDK has to be used. In both cases, a corresponding message is sent to all the peers in a room. But subsequent peers joining the room will not see this.
Persistent Peer Metadata
in 100ms ensures every peer has access to the same interactions - a peer can raise or lower hand, and all other peers in the room will be notified. But this information will also be available for peers joining later to view and consume.
Instead of just saying yes, we simply recommend that you try out the examples we’ve built out with 100ms. Not enough? Then, try building your own apps with 100ms SDKs easily with concise Quickstart guides — Web, Android, iOS, Flutter and React Native.
If you want to envision how the migration process to 100ms might look like, do check these out:
Basics
Share
Related articles
See all articles