Introduction
Over the past few years the community has grown together and identified improvements in the go-livepeer codebase that are needed to keep Livepeer at the forefront of the DePIN sector. These improvements are crucial for the protocol’s expansion and scalability, but are often outside the scope of Livepeer Inc’s resource allocation.
While Livepeer Inc has played a pivotal role in developing the core codebase, it’s now time for the community to step in and bring on specialists to tackle projects that help the protocol reach its ambitious goal of becoming “The Worlds Open And Decentralized Video Infrastructure”.
This proposal outlines the terms and structure for engaging a community developer under a year-long contract to contribute to the Livepeer Protocol, funded through the public treasury. This engagement aims to leverage the developer’s previous expertise and knowledge of the protocol to maintain the go-livepeer codebase from a community point of view.
Developer Engagement Overview
Contract Duration: 1 Year (12 Months)
Time commitment: 15 hours per week
Start Date: April 1, 2024
End Date: March 31, 2025
Proposed Community Developer
Brad (@brad-ad-astra-video ) is a long time community member and go-livepeer contributor that has shown a remarkable ability to understand and improve the go-livepeer codebase. He has a robust history of dealing with go-livepeer with forked repos of dealing with bug fixes, feature requests and entire rewrites of working binaries such as the Livepeer Router. As a regular community member, we often joke of adding “another item to Brads list” since he can clearly explain the problem at hand and provide a solution with real actions to take. This proposal aims to compensate Brad for commitment over a 12 month period.
For resources on Brad’s contributions you can view some examples here:
- Github profile
- Livepeer Router
- Go-Livepeer B/O/T improvement
- Go-Livepeer PM Bug Fix
- Go-Livepeer Sig Verification
- Prototype AI workflow in Go-Livepeer
- Prototype AV1 video transcoding
- Public Stream Tester
These are some of the examples of work Brad has done which clearly demonstrates his ability to navigate and improve the go-livepeer codebase.
Major Tasks and Responsibilities
The developer will be entrusted with a range of responsibilities aimed at bolstering the protocol’s infrastructure and network reliability. This list of tasks, while not comprehensive or sequenced, provides a broad overview of some anticipated work.
-
Node reliability
– The community has identified some reliability improvements on both the Broadcaster and Orchestrators nodes due to the need of reliable RPCs and uptime of blockchains. These potential issues can be fixed and tested before a possible outage occurs.
– Ticket redemption and payment optimizations.
– Continued work on the Public Stream tester. -
Stream Routing and Load Balancing
– Three Orchestrators are already using a forked version on the go-livepeer router. This can be implemented and pushed to the rest of the community. Some features of the router may include: handling different job types, handling load balancing, handling geo location rules and country specific rules and regulations, AI job routing and more. -
Hardware Integrations
– Adding support for other transcoding GPU/TPUs. -
GitHub issues
–Managing and pushing fixes to GitHub issues as they come up. -
Codec support
– Adding and maintaining support for AV1 and other GPU related tasks. -
AI integrations
– Working to incorporate different AI pipelines into the Livepeer AI worker. This would allow different tasks to be processed in the network such as speech-to-text, object detection, object classification, etc.
This list should not be seen as a set of fixed deliverables, but rather as a collection of accessible tasks that the community developer can undertake, given the available time and resources.
Compensation and Payment Terms
Annual Compensation: 8,000 LPT
Payment Frequency: Monthly
Payment Method: Timed release smart contract, distributes funds every month
Accountability: Three “Guardian” addresses will be added to the smart contract that will have the ability to terminate the payments and return the remaining funds back to the treasury.
Collaboration
While we aim to have the community developer in an external/auxiliary role, there may be times when it is best to collaborate with Livepeer Inc’s internal team on scope and complexity of work. While we hope to gain support from Livepeer Inc where needed, our goal is to not direct any resources away from their efforts. We want to use our treasury to hire independent help to encourage decentralized and multi driven approach to protocol robustness.
Our commitment is to the health of the protocol and progress of the mission.