One-to-Many Broadcasts with WebRTC
Learn more about WebRTC at Streaming Media East.
See complete videos and other highlights from Streaming Media West Connect on Streaming Media's YouTube channel.
Read the complete transcript of this video:
Robert Reinhardt: Conventional one-to-many broadcasts look a lot like this, and this is still what a lot of setups are doing when it comes one-to-many broadcasts. We have one RTMP Publish going into some kind of media server ingest. There's a CDN in front of it. That's taking care of all your HTTP edge caching, and it's going out to HLS. So that's a tried and true workflow, and for me, that's what this looks like. We've got vendors in this stack that know how to play that game. And I'm not trying to call out vendors here. This is just a slide that I've put together from various presentations. But I've got equipment from AJA or Videon that knows how to talk in that language, RTMP going into some Wowza GPU that's running on Amazon EC2, and I've got CloudFront in front of it to take care of HLS distribution to tens of thousands of viewers. And we've got player tech stacks that work with that.
So I'm going to intentionally contrast that with WebRTC right now, because it's still sort of the new kid on the block. It's been around for a long time, but when it comes to established names that people can rely on--and this is an opportunity for everyone here--basically, this is still a road that needs to be paved, and hopefully not just with good intentions, because we know where that road goes. But with WebRTC, you could do the same thing. You can have a WebRTC client that pushes into a WebRTC gateway, and lots of people watch over WebRTC. The cattle auction I talked about, this is what we're doing. We have a WebRTC publisher that's running in the browser, it's pushing to a WebRTC gateway. And everyone just connects and watches it in low latency, and with a very minimal roundtrip time. There's not a whole lot of interaction. They're not videoconferencing. This is a pretty simple architecture.
This can be a problem to scale, so if you need to do this with thousands of people and you might not be able to pull it up with one box, if you're doing it in the hundreds, then you could probably get away with doing this with a more simplified architecture. But as you start to scale We RTC, you have to start looking into different models and maybe looking at cloud services that are out there.
Again, you can do many-to-many of course with WebRTC, where you have people engaging with each other as clients, we're all publishing streams, we're all receiving streams. And that's your many-to-many relationship. There are different variations, but I intentionally leave out vendors on this stack. I'm not saying that there aren't good solutions out there. I've worked with Millicast. I've worked with Frozen Mountain. I've worked with Red5 Pro and I've worked with Wowza. I'm starting to get more work on Janus projects. But it's not like they're tried and true names like JW Player or these things that we know have been around in the industry for a long time. And that will change, so that landscape is going to be quickly changing. COVID has certainly been accelerating that as well.
VideoRx CTO Robert Reinhardt discusses how using various server-side architectures with WebRTC is like to play out, whether it's open course, commercial/licensed server, or cloud services, in this clip from Streaming Media West Connect.
VideoRx CTO Robert Reinhardt discusses client-side architecture issues and pain points unique to WebRTC in this clip from Streaming Media West Connect.
Companies and Suppliers Mentioned