livepeer / livepeer/TranscodingVerification

Verification Workflow

オープン
#7 コメント 4 件 リアクション 0 件 担当者 0 名 GitHub で見る

まだ誰も着手していません。

主要言語
C
スター
2
フォーク
2
PR マージ指標
30日以内にマージされた PR はありません

説明

### Verification Workflow
The verification module assumes the following workflow:

![download](https://user-images.githubusercontent.com/345743/43158342-794708e8-8f4d-11e8-963a-8c3e368bee24.png)

[source](https://sequencediagram.org/index.html#initialData=C4S2BsFMAIDVIE4gGYgMYENQHsB20B1bBAa2XGwHcAoai7AB2gBUENcBnNbAExgCVIHAK7hgHWgHkARgCtIaYNADKwYjAA8AWhZtO3PgmgAuXey69IPFZADmAW0i4lAamgBFYRnBgAniu4EGDdlEFtaJ2taAAUEbDVucGgtAD4zfUsjUwBhAAtvKFxbGGU7R2doADlaVnMDRGS0+CRURFNmlHQsEDxoQQBHYSElAApJJFsQXG8bWyqAGnSLPmtSucrFz28-APUASloO1qNU6Fj47ET2xE7MHHxBETEgA)

### Transcoder
The transcoder is a GPU running on a machine. We assume the verification module is shipped as a part of the code running on the GPU. The verification module is invoked for every transcoded segment, resulting in an array of values for validation and a single value for ranking. This list of values is published with the transcode result.

_Note: We should make sure this assumption is viable. What if the machine running the GPU is a stripped down crypto mining rig that may not have the ability to run the verification module?_

### Verifier
In the ideal world, the verifier would be a [Truebit](https://truebit.io/) module running on the Ethereum chain. There is a [prototype](https://github.com/livepeer/verification-truebit) built with a modified version of ffprobe, but we haven't ran it in production yet. In the mean time, we can assume it's a docker instance running on a cloud hosted instance with access to Ethereum.

The verifier invokes the quality measurement module, and compares the result with the input validation values (created by the transcoder). The verification reports `fail` if the values are different.

### Protocol
Smart contracts running on the Ethereum blockchain. The transcoder needs to monitor the challenge event in order to invoke the verification request.

### Object Store
We can assume it's a S3 bucket with public access.

コントリビューションガイド

このリポジトリのコントリビューションガイドは索引されていません

はじめの一歩

  1. issue を最後まで読み、次にプロジェクトのコントリビューションガイドを読みます。
  2. 着手することを issue にコメントします — 二人が同じ作業をするのを防げます。
  3. リポジトリをフォークし、ブランチを切って変更します。
  4. issue 番号を参照したプルリクエストを送ります。

調査の方向性

ワークフロー図とリンク先の verification-truebit プロトタイプから始め、その後、記載されている transcoder、verifier、Ethereum プロトコル、S3 に関する前提を確認してください。完了とするには、具体的な実装範囲と検証済みのワークフローが必要ですが、この issue にはリポジトリのファイル名も実行すべきテストも記載されていません。

索引モデルが issue の本文から書いたものです。

評価

技術スタック
aws, c, docker
領域
backend, blockchain, cloud, distributed-systems
issue の種類
機能追加
難易度
5/5
見積もり時間
1週間以上
活発さ
停滞
明瞭さ
説明が足りない
初心者へのやさしさ
20/100

新しい issue をメールで受け取る

初心者向けの GitHub issue を短くまとめたダイジェスト。