Weekly Development Update - July 10th 2019

Hi community, here are this week’s updates from the development team. As last week, the focus is on Streamflows Probabilistic Micropayments [PM], various transcoding tests & benchmarks to improve the reliability and Wowza & 3Box integrations. Please note that last week was shorter due to the holiday in the US.

Last week’s progress:

  • Completed the remaining PM client MVP core features: broadcaster ticket parameter validation and orchestrator grace periods for invalid tickets.
  • Completed orchestrator minimum credit requirement check based on received payments prior to transcoding.
  • Allowed broadcasters to send segments with the price per pixel they expect to pay for transcoding.
  • Housekeeping around our code base, converting various libraries to use the go mod dependency management system. This was done in preparation for integrating some improvements to these libraries that should improve our reliability numbers.
  • Initial benchmarking to prove out the above reliability numbers ^ but we got a bit blocked on network configuration, and some oddities with the build process.
  • Groundwork for integrating GPU tests into continuous integration (CI), mostly revolving around getting things working with Docker Compose. This should also help our benchmarking effort.
  • Benchmarked our internal GPU mining system to confirm the source of a bottleneck when concurrent transcodes are happening on multiple GPUs.
  • Nearing a working prototype of a Wowza plugin that interfaces with the Livepeer network. Work on infrastructure for backing Livepeer’s hosted backend of the same.
  • Integration of video encoding settings into the Livepeer API
  • Ongoing customer development interviews

This week’s priorities:

  • Add orchestrator logic for computing the fee for a transcoded result, debiting the fee from a broadcaster’s balance and communicating the updated balance back to the broadcaster (to be verified later)
  • Add broadcaster logic for generating a payment that meets an orchestrator’s minimum credit requirement (potentially composed of multiple tickets)
  • Add broadcaster logic to use its updated balance after a previous transcoded result to send additional payments
  • Clear out last week’s blockers and perform more benchmarking with the latest round of fixes
  • Support HLS / segment ingest in the go client
  • Continue forging towards integrating GPU tests in CI.
  • Start looking at latency in an effort to reduce end-to-end latency.
  • Evaluate solutions for a fix to the multi-GPU bottleneck. We know the issue, but still working on a good long-term solution.
  • Finish integrating the Wowza plugin with Livepeer’s systems, which involves building an API for sending video segments into the Livepeer broadcaster
  • First 3Box integration milestone - should have profile display and edit working!

Please let us know if you have feedback about the content and/or format of the update - we would love to hear from you. You can comment here or find us on Discord, thank you!