For the Ethernals Hackathon, we’re offering a prize bounty of $2k USD for building a Web3 video player.
Introduction
- HTML5 players are currently the most popular type of video player for streaming video. These players are highly compatible with various video formats and flexible enough to be used on all major operating systems and browsers.
- There are many HTML5 Players in the market today, including open source players like Video.js and Shaka Player, with building blocks like hls.js. Paid players like JWPlayer or TheoPlayer off the same functionality as open source players, but with more features like viewer count.
Requirements
Video Playback Requirements
- The player must be supported by all major operating systems and browsers.
- Must use HTTPS Live Streaming (HLS) protocol to receive content from a video CDN.
- Must be compatible with LL-HLS (low latency HLS).
- Must allow users to input an .m3u8 playlist as the source of the video. This .m3u8 URL can represented stored video (pre-recorded) or live streaming video.
- Stored video must allow the user to rewind / fast forward using the video progress bar
- Live video must be indicated somewhere on the player interface
- Live and stored video must be able to be able to be paused and played.
- Must be compatible with adaptive bit rate and display the current bitrate and allow users to manually switch to another bitrate
- Must be able to be set to full-screen viewing
- Must have volume control
- Must be easy to embed the player as an iframe or react component
- Real time viewer count
Web3 / Livepeer specific Requirements
- If the video is stored on IPFS, displaying the hash of the video to viewers
- This should be specified by the platform, the requirement is to design a place where this can be seen or accessed.