For extremely high users in an effective webinar you'd anyway need HLS based streaming so what even is the point of a media server at that time
For extremely high users in an effective webinar you'd anyway need HLS based streaming so what even is the point of a media server at that time
If a team of seven has one team meeting and each non-manager has a one-to-one with the manager, the average number of people in a call is ~three. But they're still not going to use a system that can't cope with seven in a call. And they won't have any calls with more than seven participants even if the software can scale to dozens.
(It's also worth noting that Zoom have shown that it's possible to develop "video conferencing" UX than scales to hundreds of participants. I have no idea whether they do this by naively scaling up or by radically changing the way the conference works past a threshold number of participants, but as a participant I don't care)
WebEx seems to work fine too for huge calls, although I use the native client for it.
At a previous job, I once helped a tiny bit with setting up and configuring the company's Jitsi instance (wasn't the admin though).
As far as I can tell, the differences mainly affect non-P2P mode, which the server will enable above some bandwidth or participant number threshold.
Another thing all these WebRTC clients have to achieve reliably is dealing with different NAT setups and firewalls (one piece of this seems to be achieved with technologies STUN and TURN).
I guess video conferencing is at least as complex as implementing real-time multiplayer games over the internet.
Edit: Just read up that WebEx predates WebRTC and uses it only for interop with other tools. Zoom uses a custom technology stack as well as far as I know (I have no idea if it involves WebRTC).
So maybe WebRTC really is hard to scale up large numbers of participants.
Haven't heard much good about Teams in this regard either (which uses WebRTC AFAIK)
Ignoring costs, while having someone host infra for you will always be easier than managing it yourself, I think we’ve really improved the DX of hosting your own WebRTC infra with LiveKit: https://github.com/livekit/livekit
I don't know how they set it up thought, self hosted most probably, maybe that's the only way to get good performance.
It's just a matter of pipelines with ffmpeg
It dosen't limit number of P2P participants.
Many think they can go P2P, but browsers implement one bandwidth estimator per PeerConnection, so that begins to hurt quickly in practice.
In addition, sending multiple HD streams to serveal participants it's going to hurt the sender, but an SFU helps with that.
There are many more reasons, this is just scratching the surface.
The primary issue with traditional WebRTC media servers and services is they didn’t horizontally scale. That’s changed recently. You can get pretty high numbers of users in a single WebRTC session now.