dTok Architecture Update:
I thought it would be great to go through the early stage story of dTok, its vision and talk about the future milestones:
dTok is an open, decentralized pay-as-you-go live-streaming platform. Livepeer provides decentralized video transcoding, micro-payments are processed via Layer 2 solutions (e.g. we will support Connext Network, Raiden, etc.), and the DTok browser-based wallet provides ease-of-use / rapid onboarding. Through dTok’s censorship-minimized system, content creators will easily reach the world and monetize their streams via micro-payments and tipping.
In April, the video live-streaming platform Tik Tok was shut down in India, preventing more than 500 million users from accessing the app. We were inspired at the EthCapeTown Hackathon in April to solve this problem with a censorship resistant live-streaming platform. In addition to issues of censorship, there is currently no way to monetize live-streamed content (via Livepeer) free of middleman fees. The dTok v0.1 won won all possible prizes @ETHCapeTown @ensdomains @NuCypher @MakerDAO @raiden_trust
Finally, and arguably most importantly, beyond basic remittance (e.g. buying a beer with Burner Wallet) there exists virtually no easily accessible use-cases of crypto or blockchain—whereby somebody with no technical blockchain knowledge (and no wallet) can easily hop into a crypto-powered system and start deriving some utility from it.
dTok mitigates censorship by obtaining transcoding via the Livepeer network. It also allows content creators (or “broadcasters”) to select how they would like to serve their streams—via either their own server, a custom CDN, or a CDN provided by dTok—enabling greater resistance to external tampering (e.g. a stream could be shared via multiple CDNs, etc.). Also, platform-level censorship resistance is achieved by making the entire dTok codebase and work-flow open-source—the dTok stack can be bootstrapped by anyone at any time.
Additionally, dTok solves the problem of rent-seeking tipping and micropayments platforms for viewing streams by integrating a variety of Layer 2 micro-payment systems (Connext, Raiden, etc.), enabling content creators to fully monetize their work.
Finally, dTok drives crypto adoption by implementing highly accessible onboarding via a simple, non-custodial, browser-based wallet (e.g. built with BurnerWallet or DaiCard). DTok users will be able to access preloaded wallets, meaning that a viewer can simply scan a QR code or click a link on their phone and jump right into a pre-funded Dai wallet and start viewing a Livepeer stream (the first couple minutes of viewing being free). This opens up accessibility of Livepeer to people with zero past experience of blockchain or crypto.
We have currently split the dTok sprint plannings into three major phases, as we seek to build a fully-featured decentralized pay-as-you-go service on top of Livepeer:
Phase 1: Stable Version, this phase consists of taking the messy, post-hackathon codebase to a stable and reliable dApp. This version of dTok will enable payment for viewing Livepeer transcoded-streams via a simple, non-custodial, browser-based wallet UI . Multiple streams will be supported via an Ethereum smart contract. This phase is outlined in the diagram above.
Phase 2: Light Broadcaster, Following phase 1 (as outlined in the diagram above), while the viewer experience is seamless, broadcasters must run the Livepeer CLI, record via OBS Studio, directly interact with the Stream smart contract, and manually accept viewer payments. This phases consists of building out an accessible light broadcaster user-flow, whereby broadcasters can easily broadcast streams, from, for example, a mobile phone. There will be an intuitive dashboard experience, with a dTok backend that handles interactions with the Livepeer CLI and broadcasting the video stream via a CDN, meaning that the light broadcasting client will only need to interact with Ethereum (via a similar in-browser wallet). The vision of this phase is that a user will be able to take out their phone or laptop and quickly bootstrap a stream onto dTok with virtually no setup required.
Phase 3: Streamflow Integration, Prior to this phase, stream viewer authentication is handled inside the front-end (the Livepeer Media Player frame is only displayed if the user has provided sufficient payment). This phase consists of implementing dTok backend authentication that is compatible with Streamflow. dTok viewers will be issued “stream keys” via the Livepeer API. We will then implement a gate around the HLS output, meaning that the Livepeer API node will check to make sure that each user is still paying before serving up each segment to that user (the stream key will be invalidated once the user has run out of payment credit). Additionally, phase 3 will also consist of opening up dTok to a variety of other Ethereum micro-payment Layer 2 solutions (e.g. Connext, POA, Raiden once they have a fully-featured light client available, etc.).
Stake Capital will assign three developers working part-time on dTok, totaling 8 hours a day. All three phases will take 10 weeks to complete (working 5 days a week), meaning a total of 400 hours.