配信ソフトウェア

映像・音声ソースを合成し、配信プラットフォームやファイルに出力するソフトウェアのジャンル。

このジャンルを定義するプロトコル要素

「配信ソフト」と呼ばれるために実装すべきインターフェースは概ね以下の3層に分かれる。

1. 入力(Source)

何を取り込めるか。

プロトコル / 形式内容
カメラデバイスUSB / 内蔵カメラ(V4L2, AVFoundation, DirectShow)
画面キャプチャデスクトップ全体 or 個別ウィンドウ
仮想カメラ入力他アプリが仮想カメラとして映像を渡す(VTuber アプリはここに接続)
NDIネットワーク経由の映像入力。LAN 内で低遅延
メディアファイル画像、動画、音声ファイル
ブラウザソースURL を指定して Web ページを映像として取り込む(チャットオーバーレイ等)
キャプチャカードHDMI 入力をキャプチャ(ゲーム機、外部カメラ)

2. 合成(Scene / Composition)

取り込んだソースをどう組み合わせるか。

3. 出力(Output)

どこに送り出すか。

プロトコル用途
RTMP / RTMPS配信の事実上の標準。YouTube, Twitch, ニコ生 がすべて対応
SRT低遅延・高信頼性。不安定な回線向き
WHIP / WHEPWebRTC ベース。超低遅延(< 1秒)。Cloudflare Stream 等
HLS / DASHセグメントベース。CDN 配信向き。遅延は大きい(5-30秒)
録画MP4 / MKV / FLV へのローカル保存
仮想カメラ出力合成結果を仮想カメラデバイスとして他アプリ(Zoom, Discord)に渡す

エンコーダ

映像を圧縮する部分。これがリアルタイム配信のボトルネック。

エンコーダ種別プラットフォーム
x264CPU (ソフトウェア)すべて
NVENCGPU (NVIDIA)Windows, Linux
VideoToolboxGPU (Apple)macOS
QuickSyncGPU (Intel)Windows, Linux
AMFGPU (AMD)Windows

コーデックは H.264 が最も互換性が高い。H.265 (HEVC) と AV1 は高圧縮率だがプラットフォーム対応がまだ限定的。

VTuber ワークフローにおける位置

[[face-tracking|フェイストラッキング]]
    ↓
VTuber アプリ([[3tene]] 等)
    ↓ 仮想カメラ出力
配信ソフト([[obs|OBS Studio]] 等)  ← ゲーム画面、チャット、アラートも合成
    ↓ RTMP
YouTube / Twitch

配信ソフトは VTuber パイプラインの「出口」。アバター映像を他のソースと合成して配信プラットフォームに送る。

代表的なソフトウェア

関連

Graph