Weekly Update - 3/17/2017

Thanks for your interest in Livepeer. We’re going to publish project updates on a weekly cadence to make sure that everyone in the community can stay up to speed on the progress being made. The early part of this note will contain high level project, product, and business updates, and the latter part will be largely technical development updates.

Livepeer Weekly Update - 3/17/2017

After opening up Livepeer last week, this week was an opportunity to speak to the community to get feedback on the project. We spent a lot of our time externally speaking with folks with video expertise, blockchain project governance experience, and interest in supporting the project. We’re working to make sure that Livepeer can be run in an open and transparent, community driven way, that also aligns with ensuring the project is funded and sustainable.

There were a couple of interesting crypto events announced this week, and of course there were requests for them to be live streamed. While Livepeer isn’t live in production yet, we would still love to help with live streaming crypto friendly events in a decentralized way, and can even imagine the cost being distributed to people attending the live streams via crypto payments.

While this wasn’t a big week for writing code (unlike the last 8 weeks which were all heads down building), we made a lot of progress on the technical design of both the media server and the protocol.

Media Server Update

The go-livepeer node that we revealed was meant as a proof of concept. It discovers and connects to other peers, and it can publish and request live video.

Running a Livepeer node via livepeer and broadcasting a stream into the network using OBS to http://localhost:1935/movie

For now the media server (LPMS) is embedded within the node, and there are dependencies which make them very coupled, but the goal is for the media server to exist as a standalone open project, that anyone could build live video applications on top of, regardless of whether or not they wanted to use the Livepeer network. This week we worked on the following designs to move towards this:

  • Modular LPMS interface that isn’t aware of go-livepeer or go-ethereum.
  • Transcoding branch which formats the video to be served over the HLS protocol in HTTP.
  • StopStream requests to unsubscribe from a stream if the player is closed.

Protocol Update

As mentioned in the Project Overview Document during the project reveal, an ongoing area of research for Livepeer will be Computation Verification. Livepeer needs to make sure that the nodes doing the transcoding work are actually doing the work correctly, so that they can be rewarded Livepeer Token fairly, without being able to game the system or cheat. One research project aimed at solving this challenge is Truebit, and this week they released a detailed Whitepaper outlining their protocol. We’ve been doing protocol research to understand:

  • The implications of funding the Truebit jackpot for verifiers to catch mistakes from newly minted token rather than a tax on broadcasters.
  • The efficiencies and security implications of having a limited number of verifiers be delegated via delegated proof of stake (DPOS) rather than allowing all nodes to participate in verification.
  • The way to map the steps involved in video transcoding into a Truebit enabled on chain judge contract, and whether this is feasible within the constraints of Ethereum at the moment.

The goal is to work towards a formal specification and whitepaper of the Livepeer protocol in order to move beyond the toynet, and actually introduce incentives within a testnet, though there is still quite a bit of research and peer review to do between now and then.

To stay up to date on all updates, you should follow @LivepeerOrg on twitter. Thanks, and let us know if you have any questions, comments, or concerns.