Skip to content

非公式本サイトは非公式の日本語ドキュメントであり、Cloudflare 公式サイトではありません。最新情報はdevelopers.cloudflare.comをご確認ください。

独自のプレーヤーを使う

最終更新 Markdown で表示Agent セットアップ

Cloudflare Stream は、HLS と DASH に対応するすべての動画プレーヤーと互換です。HLS と DASH はメディアストリーミングの標準形式で、Web ブラウザー、モバイル OS、メディアストリーミングデバイスで広くサポートされています。

プラットフォーム別ガイド:

HLS マニフェストと DASH マニフェストを使う

URL

各動画とライブストリームには、固有の HLS マニフェストと DASH マニフェストがあります。次の URL で、<UID> を動画またはライブ入力の UID に、<CODE> を固有のカスタマーコードに置き換えてアクセスします。

HLStxt
https://customer-<CODE>.cloudflarestream.com/<UID>/manifest/video.m3u8
DASHtxt
https://customer-<CODE>.cloudflarestream.com/<UID>/manifest/video.mpd

LL-HLS 再生 ベータ

ライブ入力で低遅延 HLS ベータが有効な場合、HLS マニフェスト URL にクエリ文字列 ?protocol=llhls を付けて、カスタムプレーヤーで低遅延マニフェストを試せます。このオプションの有効化は ライブストリームを開始する を参照してください。

HLStxt
https://customer-<CODE>.cloudflarestream.com/<UID>/manifest/video.m3u8?protocol=llhls

ダッシュボード

  1. Cloudflare ダッシュボードで Stream ページを開きます。

    Videos を開く ↗
  2. 動画一覧から対象の動画を探して選択します。

  3. Settings タブで HLS Manifest URLDash Manifest URL を探します。

  4. 使う項目の下にある Click to copy を選択します。

API

マニフェスト URL を Cloudflare API で取得する方法は、Stream の動画詳細 API ドキュメント を参照してください。

利用可能なクライアント帯域を指定してマニフェストをカスタマイズする

各 HLS マニフェストと DASH マニフェストは、動画またはライブストリームの複数の解像度を提供します。プレーヤーにはアダプティブビットレートのロジックがあり、視聴者の利用可能な帯域を推定して、再生に最適な解像度を選びます。プレーヤーごとに判断ロジックは異なり、帯域または解像度をカスタマイズしたり上書きしたりする設定があるものがほとんどです。

プレーヤーにそのような設定がない場合や、上書きが必要な場合は、マニフェストファイルの取得リクエストに clientBandwidthHint クエリパラメーターを付けられます。これは最後の手段として使ってください。まずプレーヤー側のカスタマイズオプションを使うことを推奨します。開発中のサイトやアプリは高速なインターネット接続であることが多く、この設定で高画質再生を強制したくなるかもしれません。ただし、多くの視聴者はより遅いモバイル回線で接続しています。

  • clientBandwidthHint float
    • 指定した帯域値(Mbps)に最も近い動画表現だけを返します。特定の品質レベルを強制するときに使えます。無効または空のマニフェストになる値を指定した場合、ヒントは無視されます。

次の例は、ビットレートが 1.8 Mbps に最も近い動画表現だけを表示します。

txt
https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/manifest/video.m3u8?clientBandwidthHint=1.8

ネイティブアプリで 1 秒未満の遅延でライブ動画を再生する

超低遅延が必要で、ユーザーがネイティブアプリでライブ動画を見る場合は、再生に SRT または RTMPS を使い、エンドツーエンド(glass-to-glass)遅延 1 秒未満 でライブ動画を配信できます。

Cloudflare ネットワーク経由の SRT および RTMPS 再生を示す図

SRT と RTMPS の再生は ffmpeg に組み込まれています。独自の動画プレーヤーに ffmpeg を組み込む必要があります。AVPlayer (iOS)ExoPlayer (Android) も、SRT または RTMPS 再生をネイティブではサポートしていません。

クロスプラットフォームの ffmpeg ラッパーとして ffmpeg-kit を推奨します。

役に立ちましたか?