Ask HN: WebRTC in the wild
I can either have a true mesh network where all clients connect to each other or a centralised solution where a user's video stream is routed through a central server and the distributed to all clients. For the sake of simplicity I'll leave out any mixed forms for now.
In the former case I'd take a lot of bandwidth and traffic burden from the central server but would force each client to have [clients-1] connections and send the same stream to each of them. Encoding itself shouldnt be the big problem here but it would consume a lot more of bandwidth (and subsequently traffic) than when routed via the server.
In the latter case I'd avoid aforementioned drawbacks but not only would it increase the server's own traffic bill dramatically but it would also increase latency as everything would get sent to the server and then back to the clients.
Is there any commonly accepted approach or best practice for such a setup?