Can someone explain why webrtc needs a server and how Janus fulfills this role?
As far as I understand webrtc is meant to be peer to peer with minimal server signaling, so what role does a WebRTC server play?
Can someone explain why webrtc needs a server and how Janus fulfills this role?
As far as I understand webrtc is meant to be peer to peer with minimal server signaling, so what role does a WebRTC server play?
* Less resource usage for users
If you do mesh signaling every user connect with each other via P2P. This means if you have a 4 person conference call everyone needs to upload their video 3 times. If you have a media server each user uploads only once, and then the server distributes the video. This means a lot less CPU and network usage for each user.
* P2P Connections reveal details about the user
If users are connecting directly to each other they are able to figure out details like their public IP. If you route everything through a server you can anonymize more things.
* Protocol Bridging
People want to view RTSP/RTMP/$X via WebRTC. A media server is the only way to make it happen.
* Less variability to deal with
When doing P2P connections you will deal with a lot more variables. It will be harder to figure out which user's internet is causing issue, or debug encode/decode issues. A few times running a SFU has come really in handy because I was able to debug something that would have been impossible when just doing P2P.