コンテンツにスキップ

ライブストリームを視聴する

入力がライブストリームを受信し始めると、入力のモードプロパティが automatic に設定されている限り、新しいHLSおよびDASH URLを持つビデオが自動的に作成されます。

APIを使用する

ライブ入力には、複数のビデオUIDを関連付けることができます。特定の入力に対する現在のライブストリームを表すビデオUIDを取得するには、/stream エンドポイントに GET リクエストを送信します。

ブラウザでビデオを再生するには、preview フィールドのURLを使用します。独自のプレーヤーを使用するには、hls または dash URLを使用します。

リクエスト
curl -X GET \
-H "Authorization: Bearer <API_TOKEN>" \
https://api.cloudflare.com/client/v4/accounts/<ACCOUNT_ID>/stream/live_inputs/<LIVE_INPUT_UID>/videos

レスポンスには、現在のライブビデオを再生するために使用できるHLS/DASH URLと、以前に録画されたライブビデオが含まれています。以下の例では、ライブビデオの状態は live-inprogress で、以前に録画されたビデオの状態は ready です。

レスポンス
{
"result": [
{
"uid": "6b9e68b07dfee8cc2d116e4c51d6a957",
"thumbnail": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/thumbnails/thumbnail.jpg",
"status": {
"state": "live-inprogress",
"errorReasonCode": "",
"errorReasonText": ""
},
"meta": {
"name": "Stream Live Test 23 Sep 21 05:44 UTC"
},
"created": "2021-09-23T05:44:30.453838Z",
"modified": "2021-09-23T05:44:30.453838Z",
"size": 0,
"preview": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/watch",
...
"playback": {
"hls": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/manifest/video.m3u8",
"dash": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/manifest/video.mpd"
},
...
},
{
"uid": "6b9e68b07dfee8cc2d116e4c51d6a957",
"thumbnail": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/thumbnails/thumbnail.jpg",
"thumbnailTimestampPct": 0,
"readyToStream": true,
"status": {
"state": "ready",
"pctComplete": "100.000000",
"errorReasonCode": "",
"errorReasonText": ""
},
"meta": {
"name": "CFTV Staging 22 Sep 21 22:12 UTC"
},
"created": "2021-09-22T22:12:53.587306Z",
"modified": "2021-09-23T00:14:05.591333Z",
"size": 0,
"preview": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/watch",
...
"playback": {
"hls": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/manifest/video.m3u8",
"dash": "https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/manifest/video.mpd"
},
}
],
}

ダッシュボードを使用する

ビデオの埋め込みコードまたはHLSマニフェストURLを取得するには:

  1. Cloudflareダッシュボードにログインし、アカウントを選択します。
  2. Stream > Live Inputsをクリックします。
  3. リストからライブ入力をクリックして選択します。ライブ入力のページが表示されます。
  4. ビデオの下にあるEmbedおよびHLS Manifest URLを見つけます。
  5. 使用するオプションを決定し、選択したオプションの下にあるClick to copyをクリックします。

ライブ入力IDで表示

以下のオプションのいずれかを使用して、入力IDによるライブビデオを表示できます:

  • ビデオIDを入力IDに置き換えます。
  • 埋め込みコードを使用します。
  • マニフェストURLを使用します。

ライブ入力IDの状態

ライブ入力IDが現在ビデオをストリーミングしているかどうかを確認するには、lifecycle エンドポイントにリクエストを送信します。Streamプレーヤーは、ライブストリームの状態を確認するために入力IDを使用することをサポートしていますが、サードパーティのプレーヤーは追加のサポートが必要な場合があります。

Terminal window
curl -X GET \
-H "Authorization: Bearer <API_TOKEN>" \
https://customer-f33zs165nr7gyfy4.cloudflarestream.com/6b9e68b07dfee8cc2d116e4c51d6a957/lifecycle

以下の例では、レスポンスは ID がアクティブな videoUID を持つ入力に関連していることを示しています。live ステータス値は、入力がアクティブにストリーミングしていることを示します。

{
"isInput": true,
"videoUID": "55b9b5ce48c3968c6b514c458959d6a",
"live": true
}
{
"isInput": true,
"videoUID": null,
"live": false
}

ライブ入力IDを介してライブストリームを表示する際には、ライブ入力録画設定の requireSignedURLs および allowedOrigins オプションが使用されます。これらの設定は、ビデオレベルの設定とは独立しています。

ライブストリーム録画の再生

ライブストリームが終了した後、録画が自動的に生成され、60秒以内に利用可能になります。ビデオの視聴と再生を成功させるために、以下の点に留意してください:

  • ライブストリームが視聴者が視聴中に終了した場合、Streamプレーヤーを使用している視聴者は60秒待ってからプレーヤーを再読み込みして、ライブストリームの録画を視聴する必要があります。
  • ライブストリームが終了した後、APIを介して録画の状態を確認できます。ビデオの状態が ready の場合、マニフェストURLのいずれかを使用して録画をストリーミングできます。

ライブストリームの録画が生成されている間、ビデオは not-found または not-started と報告される場合があります。

ライブストリーム録画にStreamプレーヤーを使用していない場合は、ライブストリームの録画と再生を参照して、ライブストリーム録画を再生する方法についての詳細を確認してください。