There was good progress on the Livepeer Protocol this week, as we finished the design of the protocol's first pass, and finished a first draft of the whitepaper. On the video side, we got HLS streaming over the network working, and fixed some quality bugs that were causing streams to contain artifacts during the first few seconds of streaming.
Whitepapers for decentralized tech projects come in all shapes and sizes, ranging from the academic focus on technical details to the overtly marketing focused business case for the platform. While our Project Overview wiki page provides an overview of the current business landscape in the live streaming space, we believe that the Livepeer Whitepaper should be a largely technically focused definition of our protocol. It should outline who the actors in the Livepeer ecosystem are, how the protocol executes, what the economic incentives for participation are, and how the hard problems are solved and attacks are prevented. Speaking of hard problems, the three major ones that our whitepaper focuses on:
- Scalable verification of transcoding work in the Livepeer network.
- Economic disincentives to prevent fake work.
- Incentives for token holders to participate in the stake based process for ensuring a high quality of video encoding and distribution, and competitive pricing, exists on the network to serve the needs of broadcasters.
If nodes in Livepeer are going to be earning token for the work that they do in transcoding and distributing video, then it's important that it can be verified that the work they did was correct, and that it was not just self-dealing useless work.
We are looking for folks who have the enthusiasm for reviewing a 15 page technical document to give the Whitepaper a read and share feedback before we publish. Let me know if you're up for it: doug at livepeer dot org.
We made changes to the Livepeer node so that both the HLS and RTMP streams will be available for streaming when a broadcast session starts. We also added a new flag
—hls to the
livepeer stream command so that you can request the HLS stream. We focused on getting rid of some old, buggy code from our spike and replacing it with less complex concepts. This lays a nice foundation for easily adding more elements from the Livepeer protocol. You can refer to the Livepeer Pull Request and LPMS Pull Request on Github for more of the technical details.