PeerTube v6 リリース
(framablog.org)- 非営利団体 Framasoft が開発する PeerTube は、YouTube・Twitch の代替として 独自の動画プラットフォーム を運営したいクリエイター・メディア・機関・教育関係者を対象としている
- 2023年の v5.1・v5.2 を経て登場した v6 は、ユーザーフィードバックサイトのアイデアを反映した 6回目のメジャーリリース である
- v5.2 の リモートトランスコーディング は、CPU 集約的な変換作業を別サーバーに渡して運用コストとリソース負担を減らす基盤機能である
- v6 は、パスワード保護、ストーリーボードプレビュー、動画の再アップロード、チャプター追加のように、クリエイターと視聴者がすぐ体感できる機能を拡充した
- パフォーマンステストと最適化、WebTorrent の削除、HLS・WebRTC P2P への集中を通じて、PeerTube 運営者と視聴者の体験をともに磨いている
PeerTube v6 の位置づけ
- PeerTube は、クリエイター、メディア、機関、教育関係者が YouTube と Twitch の代替として 独自の動画プラットフォーム を管理できるようにするため Framasoft が開発しているソフトウェアである
- v6 は 6つ目のメジャーバージョンであり、P2P ライブストリーミングを追加して以降でもっとも意欲的なリリースとして紹介されている
- 新機能は PeerTube フィードバックサイト で提案・投票されたユーザーのアイデアをもとに開発された
- Framasoft は、PeerTube の歴史、プロジェクトの状況、今後の計画を扱う別のお知らせを 2週間後に公開する予定である
2023年の v5.1・v5.2 から続く変化
-
PeerTube v5.1
- 2023年3月の PeerTube v5.1 では、インスタンス運営者が アカウント申請を管理・審査 できる機能が追加された
- ライブストリーミングの遅延時に現在の生配信地点へ戻る back-to-live ボタン が追加された
- 外部資格情報でログインしやすくするため、認証プラグインも改善された
-
PeerTube v5.2
- 2023年6月の PeerTube v5.2 では、PeerTube チャンネルをポッドキャストクライアントで読めるように RSS フィード をポッドキャスト標準に適合させた
- ストリーマーはライブアーカイブの公開範囲を Public、Unlisted、Private、Internal から事前に設定できる
- キーボードで操作するユーザー向けの マウスなしナビゲーション が改善された
- ドキュメント も強化された
リモートトランスコーディングが減らす運用負担
- v5.2 の中核機能は リモートトランスコーディング である
- PeerTube はアップロードされた動画やライブストリームを効率的な形式に変換する必要があり、この作業には多くの CPU リソースを使う
- 従来は、運営者が継続的には不要な処理のためにも高性能 CPU サーバーを用意しなければならなかった
- リモートトランスコーディングにより、一部または全部の変換処理をより高性能な別サーバーへ移せるようになった
- そのサーバーは複数の管理者で共同利用することもできる
- この機能は PeerTube の運用をより安価でレジリエントなものにし、電力効率とコミュニティ間でのリソース共有の可能性を高める
- 技術改善には NGI Entrust プログラム と NLnet 財団 の助成が寄与している
v6 で追加されたユーザー機能
-
パスワード保護動画
- PeerTube アカウントのクリエイターは、動画のアップロード・インポート・設定変更時に 単一のパスワード を指定できる
- 限定コンテンツの提供、教育課程の段階的公開、信頼する相手との限定共有に活用できる
- REST API を使えば、管理者と開発者が複数のパスワードを設定・保存でき、アクセス権の付与と取り消しが容易になる
- この機能は Framasoft のインターンシップ期間中に Wicklow が担当した
-
ストーリーボードプレビュー
- v6 では、進行バーにマウスや指を乗せたときにフレームのサムネイルを表示する ストーリーボード 機能が追加された
- ストーリーボードは動画のアップロードまたはインポート時に生成されるため、v6 にアップグレードしたインスタンスの新規動画で標準提供される
- 既存動画については、管理者が
npm run create-generate-storyboard-jobコマンドを実行してストーリーボードを生成できる - この処理では CPU リソースを使用する場合がある
-
動画の再アップロード
- クリエイターはミスの修正、新しい情報の追加、より良い編集版の提供のため、既存の動画ファイルを 新しいバージョンに置き換える ことができる
- 置き換え時には既存の動画ファイルは完全に削除されるが、URL、タイトル、情報、コメント、統計などは維持される
- この機能は動画制作者と管理者のあいだの信頼が必要なため、管理者が PeerTube プラットフォーム上で有効化しなければ利用できない
- 更新された動画には Video re-upload タグが表示される
-
チャプター追加
- クリエイターは動画設定ページの新しい chapters タブ で、各チャプターのタイムコードとタイトルを指定できる
- 他プラットフォームから動画をインポートする際、元動画のチャプターを PeerTube が自動認識して取り込める
- チャプターが設定されると進行バーが区間ごとに分かれ、その区間にマウスオーバーまたはタッチするとチャプター名が表示される
パフォーマンステストと最適化
- 2022年には、フランスの独立系ジャーナリスト David Dufresne の Au Poste ! ライブ配信とホスティング事業者 Octopuce を通じて、同時視聴者 400人超のライブストリーミング負荷テストを実施した
- 2023年には、ライブストリーミングと通常の動画ストリーミング条件で 同時ユーザー 1,000人 をシミュレーションするテストを行う予定である
- Octopuce はテストインフラの展開を支援している
- Framasoft は 2023年末または 2024年初頭に、結論とユースケース別の推奨サーバー構成を含むレポートを公開する予定である
- 初期テストの結果は、v6 の複数の 性能改善 につながった
- ユニキャスト HTTP 処理をワーカースレッドで処理
- ActivityPub リクエスト署名をワーカースレッドで処理
- おすすめ動画の HTTP リクエスト最適化
- ライブまたはタグでフィルタリングする際の動画 SQL クエリ最適化
- 多数の視聴者がいる場合の
/videos/{id}/viewsエンドポイント最適化 - PeerTube HTTP ログ無効化機能の追加
WebTorrent 削除とプレーヤー改善
- v6 では技術的負債を減らすため WebTorrent サポートを削除 し、HLS に注力する
- WebTorrent と HLS は、Web ブラウザーで P2P ストリーミングを提供する技術要素である
- PeerTube は、HLS のほうが現在および将来の計画により適していると判断している
- v6 の焦点は HLS と WebRTC P2P である
- 動画プレーヤーはより効率的に変更された
- 動画が切り替わるたびにプレーヤーを再生成しない
- 速度や全画面表示などの視聴設定を、動画変更後も維持する
- 動画のアスペクト比に合わせてサイズを自動調整する
- PeerTube プラットフォームにホストされた動画が検索エンジン結果でよりよく表示されるよう SEO が改善された
- 障害のある人々の体験を改善するため、複数のレベルで アクセシビリティ 改善が行われた
- 全変更ログは PeerTube v6.0.0 リリース で確認できる
今後の計画と支援
- Framasoft は、YouTube の広告ブロッカー対策、Twitch におけるストリーマー搾取の増加、関連システムの有害性への認識拡大のなかで、PeerTube が関心と評価を集め、コミュニティが成長しているとみている
- PeerTube の今後の計画に関する発表が多いため、別のお知らせを 2週間後に公開する予定である
- PeerTube に関する質問に答える Ask Us Anything ライブ配信も計画されている
- PeerTube のニュースは PeerTube Newsletter、PeerTube Mastodon アカウント、Framablog で確認できる
- PeerTube の開発は、常勤の有給開発者 1人、インターン 1人、コミュニティが共同で担っている
- Framasoft はフランスの非営利団体であり、年間収入の 75% が個人寄付によるものである
- PeerTube 開発資金は主に、フランス語圏の自由・オープンソースソフトウェア愛好家からの支援と、2021年・2023年の NGI イニシアチブを通じた NLnet 助成によって成り立っている
- Framasoft は 2024年の予算均衡のため、5週間以内に €176,425 を集める必要がある
1件のコメント
Hacker News の意見
PeerTubeを試してみたいと思っていて関心はあるが、詳しくは知らない
記事ではWebTorrentを削除してHLSを選んだとあるが、それならPeerTubeはもうP2Pではないのか気になる
HLSはコーデックやコンテナ形式のようなもので、WebTorrentはトラフィック急増時にサーバーが簡単に詰まらないよう、ピア同士で動画データをストリーミングする方式のように聞こえる
それがPeerTubeが他のプラットフォームに対して持つ中核的な利点で、名前もそれに由来するのだと思っていたが、自分の理解が間違っているのか、それとも本当になくなったのか分からない
記事ではHLSもP2Pストリーミングの構成要素だとしているが、HLSはMP4やMKVのように動画データを包むコンテナ形式に近いのではないかと思う
HLSデータは、WebTorrentが削除されていなければ、むしろWebTorrentで配信できる対象に近く見える
WebTorrentの削除を反映するよう更新が必要だが、HLSの部分は今でも有効
HLSプレーヤーを使う場合、プレーヤーはhls.jsでオリジンサーバーからHLSプレイリストを取得し、PeerTubeはhls.jsにカスタムローダーを提供して、セグメントをHTTPだけでなくWebRTCベースのP2Pでもダウンロードさせる
セグメントは、オリジンサーバーと動画をミラーしているサーバーからはHTTPで、同時に同じ動画を見ている他のブラウザーからはWebRTCで取得され、hls.jsがそれをHTML要素へストリーミングする
元のコピーは自分のサイトであれ他人のサイトであれ、どこかのWebサイトにホストされ、十分な人数が視聴するとP2Pストリーミング配信システムが動作して帯域幅を補う仕組み
多くの視聴者に対応する際、莫大なホスティング帯域幅を必要としないようにするための方法にすぎない
ただしPeerTubeを使っている人はほとんどいない。Hardlimitの人気一覧を見ると、1位の動画が217回再生で、バグレポートを説明するために2日前に上げた自分の動画が14回再生で9位。悲惨なレベル
WordPress連携ができて、WordPressサイトがPeerTubeで動画を提供できるようになり、リンクを貼るだけで再生可能な動画として自動埋め込みするサイトが増えれば、伸びるかもしれない
https://video.hardlimit.com/videos/trending
WebTorrentはWebRTCデータストリーム上のトレントにすぎないが、「P2P HLS」と言うと、HLSをWebRTCデータストリームまたはビデオストリーム上で送るという意味のように思える
WebTorrentの削除は残念。実際のトレントクライアントではまだ作業が進行中で、そのエコシステムがもともとゆっくり動くのは確かだが、WebTorrentのせいではない
結局、ゆっくり動くエコシステムで機会を得る前に外れてしまった形
また、PeerTubeインスタンス同士が共有infohashとDHT程度だけでP2Pを行うのがさらに難しくなる
動画の再アップロードはこうした不変のソリューションと衝突するが、それはむしろ利点に近い
以前アップロードされたCrazy Frogの動画が、ごく最近ひっそり別カットに差し替わったことを知っていた? https://youtu.be/k85mRPqvMbE?t=75 vs. https://hobune.stream/videos/k85mRPqvMbE
再アップロードは再アップロードであるべきで、以前のバージョンは別に残るべき
さらに、同じソースに基づく相互運用可能なYouTubeアーカイブを作り、見つけることもますます不可能になる。保存とミラーリングの取り組みが互いに断絶し、重複している状態
v3から提供されたライブストリーミングを実装するのが難しかった点と関係している
Googleのlibwebrtcが事実上の標準であり、WebTorrentはデータストリームだけが必要でも、ビデオ・オーディオコーデックまで含めて全体をコンパイルしなければならないと理解している
Node.jsでもwebtorrentはJavaScriptで書かれていて簡単そうに見えるが、選択肢はwrtcかElectron程度
wrtcはネイティブアドオンなのでソースからビルドするか、事前ビルドされたバイナリを使う必要があり、webtorrent-hybridはこれを使っているが、この3年間アップデートがない
ElectronはBlinkエンジンの一部としてlibwebrtcを同梱して提供しており、webtorrent-desktopはこの方式を使っていると理解している
P2Pトラフィックのためのより良いWeb APIがあればよいのに。残念ながらWebTransportはファイアウォールのホールパンチングなどを行わないため、P2P用途ではない
そうしたAPIがあれば、誰もがlibwebrtcをビルドし、使い、配布することに時間を浪費する代わりに、P2Pエコシステムが実際に前進できたはず
数年前にAndroid向けのPeerTubeクライアントを作った
PeerTubeが好きで、このプロジェクトを本当に信じているが、クライアントに注いだ労力や、Jetpack/MVVM構成でほぼ終えていた書き直し作業に見合う価値があるのか分からない
捨てるのは申し訳ないが、たぶんやめるべきだと思う
https://github.com/sschueller/peertube-android
PeerTube自体に関心がないからなのか、Android版の需要がないからなのか気になる
鶏と卵の問題のように見える。PeerTube向けのAndroidやiOSアプリがあってこそPeerTubeが人気になるのか、PeerTubeが人気になってこそAndroidアプリの需要が生まれるのか、という問題だ
自分の考えでは、後者より前者に近い。諦めようとする動機を判断することはできないが、普通は最も難しい最後の一歩を踏ん張るほうがよいと思う
来年に公式アプリが出れば、多くのコントリビューターが必要になりそうだ
このプロジェクトのアイデアは本当に良い。だが残念ながら、PeerTubeが勝つのは難しい経済的理由がある
動画ホスティングの費用のせいでもなく、ホスティングが無料でも同じことが当てはまる
人気クリエイターだと想像してみると、ユーザーが邪魔されずに快適に見られる広告なしのプラットフォームに動画を上げることもできるし、広告付きプラットフォームに上げて甘い広告収益の一部を受け取ることもできる
動画が人気になるほど、2つ目の選択肢の誘惑は強くなる
そのため無料プラットフォームでは最も人気のあるコンテンツが抜け落ち、視聴者もそれに従って去っていく
この論理は、無料プラットフォーム対商用プラットフォーム全般にも当てはまる。今日のインターネットがここまでいまいちになった根本理由に近いと思う
このジレンマを解く方法があるなら、私には分からない
概してポッドキャストは無料プラットフォームを通じて配信され、コンテンツはスポンサー広告で収益化されてきた
つまり、クリエイターがブランドと直接契約し、司会者が読み上げる広告枠をコンテンツ内に入れる方式だ
無料配信プラットフォームでも、クリエイターが収益化できる明確で実証済みの道がある
もちろんYouTubeをよく見る人なら分かるように、クリエイターは商用プラットフォームでスポンサー広告を入れ、AdSense収益の分配も受ける形で二重に収益を得ている
だからYouTubeにも投稿することには依然として大きな利点がある。ただしスポンサー契約の価値はプラットフォーム全体のリーチに関係するので、主要な商用プラットフォームが独占を強制しない限り、複数のプラットフォームで公開する動機が生まれ得る
前提そのものが間違っている。「勝つ」の条件が同じではないので、その言葉を使うこと自体あまり有用ではない
PeerTubeとFramasoftの成功指標は、社会とコミュニティがどれだけ自由であるかだ
Fediverseの流れと自由ソフトウェア利用の増加を見ると、とても良い軌道に乗っていると思う
Googleの外にも広告市場は確かにある。動画のスポンサーをする企業はすべてその例だ
実際、YouTuberたちはGoogleから受け取るお金より、そうしたスポンサーからの収益のほうが多いように見える
結局、誰かがその努力をしなければならない
PeerTubeのインストールと運用の難易度はどの程度だと見ているのか気になる
MediaCMS [0, 1] のインストール [2] くらい簡単にPeerTubeをインストールする方法はあるのか?
セルフホスト動画、実質的なYouTube代替を評価してみたが、PeerTubeはMediaCMSよりはるかに成熟していて人気もあるように見えた
しかし「簡単さ」を求めて、今はMediaCMSに落ち着いている。プロジェクトの長期的な持続可能性は少し心配だが、より良い選択肢がなく、いったん保留にしている
PeerTubeを単一サーバーでも同じくらい簡単に立ち上げられるなら知りたい
ここが技術サイトなのは分かっているが、自分の主な活動範囲外の運用・設定にあまり時間を使いたくない
できるだけそのまま動き、かつセルフホストであればよく、ベアメタルでも構わない
PeerTubeがはるかに多くのことをできるのは分かっているが、ホスティング関連の複雑さを、実際のものでも体感上のものでも減らす方法について考えがあれば、とてもありがたい
[0] https://mediacms.io
[1] https://news.ycombinator.com/item?id=25507204
[2] https://github.com/mediacms-io/mediacms/…
どのくらい時間がかかったかは覚えていないが、大きな問題はあまり経験しなかったと思う
既存のLDAPサーバーとのログイン連携を追加するのも非常に簡単だった
PeerTube/Mastodonに関心があるなら、最近出たこの動画を見ることを勧める
https://urbanists.video/w/n7xyeV1kbW8mUKr4ncchhs
試してみたいなら、このインスタンスが6.0.0-rc.2に上がっている: https://framatube.org/videos/local
Aboutも参照: https://framatube.org/about/instance
安定版v6のインスタンスは見つけられなかった
Mastodon インスタンスを自分で運用するのと同じように、PeerTube インスタンスも自分で運用している
Mastodon は素晴らしい。個人インスタンスが他のどのインスタンスともつながってデータを取得でき、検索すると自分のインスタンスが元のサーバーへ検索をプロキシしてくれる
大きなサーバーを1つ使うより、ほんの少し面倒なだけ
PeerTube はそうではない。名目上は同じ機能をすべてサポートしているが、細部が積み重なるとまともに動かない
個人インスタンスでただ動画を見て回りたいとしよう。リモートコンテンツはどうやって見つけるのか? サーバーが別のサーバーを「フォロー」して、そのタイムラインをこちら側へ複製できる。ただし、リモートサーバーが許可していればの話
ユーザーの立場では、どこにあるチャンネルでもフォローでき、そのコンテンツが自分のサーバーのローカルタイムラインに流れ込む
では検索は? サードパーティの検索インデックスを使う必要があり、しかもそれはオプトイン。そうでなければ、知っているリモートインスタンスごとに直接アクセスして検索しなければならない
どうにかしてサーバーにコンテンツがたくさん入ってきたとしても、見る価値のあるものをどうやって見つけるのか? 見つけられない
フィルタリングと検索の大半は役に立たず、個人の購読フィードだけがかろうじて信頼できる
PeerTube を好きになりたいのに、本当に本当に嫌いだ。発見可能性があまりに悪く、プラットフォーム全体がほとんど使い物にならないレベル
現実的には、最大のインスタンスに参加するのが最善である可能性が高い。そうなると、分散・連合構造という核心的な意義が崩れてしまう
サービス上に動画がどれだけ多くあっても、誰も見つけられないなら意味がない。PeerTube がこの問題に真剣に力を入れなければ、数年以内に無意味なものになるだろう
どういうわけか、ページの HTML ヘッダーが言語を fr-FR と示していたため、Firefox が親切にも英語への翻訳を提案してきた
Framasoft の取り組みは本当に励みになる
もっと広く採用されることを願う。Firefox 2 と 3 の時代、そして「コミュニティマーケティング」の時代を覚えている人がいるかもしれないが、ここにもそういうプロジェクトには価値がありそうだ
たとえば影響力のあるクリエイターたちが毎年 Framasoft February を実施し、希望する動画の一部を PeerTube にホスティングすると約束してくれるとよい
Show HN を投稿して反応があり、HN のトラフィック爆弾を受けるとしよう
理論上 PeerTube は YouTube に依存しなくても動画の負荷をさばけるはずだが、実際に成功した人はいるのか?
自分の好きなコンテンツ提供者たちに、ぜひ参加してほしいと頼むつもりだ