I'm more interested in the decentralization aspect. It makes live streams hard to censor and easy to distribute.
The closest open source equivalent we have is PPSPP (Peer-to-Peer Streaming Peer Protocol), or RFC 7574. Unfortunately, the reference implementation, libswift, was seemingly abandoned a few years ago. In addition, PPSPP only deals with a stream of bytes, and while it was made with video in mind there is no implementation that handles video well: making different swarms for different quality levels, intelligent chunking, perhaps even deterministic encoding.
Even good HTML5 players that match YouTube's feature set are few and far between.
Bitorrent Live is excellent btw. One of the best performing video apps on iOS.
- Doing adaptive bitrate like YouTube does means doing many transcodes.
- Transcoding is either extremely CPU intensive, bandwidth heavy or low quality.
- Transcoding in realtime requires further compromise on the above, to the point where distributing the transcode over multiple machines is necessary.
- There doesn't seem to be an agreed upon, browser supported protocol for live DASH. Static is easy enough but live is more difficult, especially when you add seeking, pausing etc.
- The above means you need both a backend and a frontend system.
- Running a system like this is very expensive. The entities interested in running it and able to do so are usually willing to pay for it.
All this said, Emby can stream a transcode and perhaps its stack would be a good place to start.
If you're interested in the tech and want to read some related stuff, we're hosting an engineering blog over at https://blog.btlive.io/.
I hesitate to wager, but I can imagine a world where an open video only protocol sucks up a bigger percent of attention than the web.