NextGen Live Timeshift/キャッチアップ

このトピックでは、NextGen Live Timeshift 機能の使い方とその利点について学びます。

概要

Brightcove の Timeshift 機能を利用すると、視聴者は任意の時間に移動でき、DVR のような体験を提供し、ライブチャンネルをより柔軟に操作できます。

NextGen Live は TimeShift(追っかけ再生)をサポートします。特別な機能を有効化したり、アカウントレベルでの変更を行う必要はありません。

ライブ配信における Timeshift の設定

この機能は既存のライブチャンネルでも新しいライブチャンネルでも利用できます。

以下は NextGen Live で Timeshift を設定する手順になります:

  • 新しいライブチャンネルを作成し、Video Cloud Live モジュールからチャンネル ID(Job ID)を取得します。
  • チャンネルを開始し、しばらく(例:30分)またはそれ以上動作させます。既存の実行中のジョブを選択することも可能です。
  • ライブチャンネルを作成した後、以下の URL に従ってアクセストークンを生成する必要があります。
  • アクセストークンの取得方法
  • 再生トークンの作成方法

一般情報

ベース URL

NextGen Live API のベース URL は次のとおりです:

https://api.live.brightcove.com
HTTP

トークンを取得したら、次のように POST リクエストを送信して再生トークンを取得できます:

POST v2/accounts/{account_id}/playback/{job_id}/token

この呼び出しには以下のヘッダーを渡す必要があります:

Authorization: Bearer {access_token}
HTTP

サンプル ペイロード


   {
   "dvr": false,
   "low_latency": false,
   "manifest_format": "hls",
   "playlist_name": "",
   "start_time": "2025-08-18T16:49:29+05:30",
   "end_time": "2025-08-18T16:49:39+05:30",
   "byocdn_id": "",
   "ssai": false,
   "ad_config_id":"",
   "cenc": false
 }  
 

レスポンスは次のようになります(読みやすさのため整形済み):

{
     "access_token": "ANB7xKhiUZmwltVd3f1odcHHM9VAwg02kwmLwtZwHv3SxGCOWLUf5W4G7X22PRjmR9StvFUqzpVZ1suOfyfOigdi-rnohxyEaSSuZceeLw_9OBW7fXldOG05HEgkeK3N-DBZZZyilodmjA1JWZHbgI3IU000000000000-z8AL-blKTSMtNI3_fz3oNBisfrHGUv5tXHoQT4B7FYcvdrap16gTOO7_wNt1zmgLJiUHvyxZgsgBchm_AhohVL-AYgcfCbCR0v7d2hgI4ag35pnZNeujDiBLfnCFcVMlqQGq8UEVZrmU9a8000000000qmSrkxLPYZ800-vIWX-lw",
     "token_type": "Bearer",
     "expires_in": 300
 }
JSON

上記のように再生トークンを生成した後、以下の GET API 呼び出しを使用して Timeshift 再生 URL を取得できます。

https://edge.api.brightcove.com/playback/v1/accounts/$account_id/videos/$job_id?livePlaybackToken=$token
HTTP

前の呼び出しで生成されたアカウントID、ジョブID、および再生トークンをそれぞれ編集して指定してください。

この呼び出しには以下のヘッダーを渡す必要があります:

Authorization: BCOV-Policy {policy_key}
HTTP

Policy Key を取得するには、以下のURLを参照してください。

BCOV Policy Key の作成方法

レスポンス ペイロード


{
"description": "テスト中 ",
"tags": [],
"cue_points": [],
"custom_fields": {},
"account_id": "x",
"sources": [
   {
       "codecs": "mp4a,avc1",
       "ext_x_version": "6",
       "src": "ここに再生URLが入ります",
       "type": "application/x-mpegURL"
   }
],
"name": "Timeshift テスト",
"reference_id": null,
"long_description": null,
"duration": -1,
"economics": "AD_SUPPORTED",
"text_tracks": [],
"published_at": "2025-09-09T11:25:57.505Z",
"created_at": "2025-09-09T11:25:57.505Z",
"updated_at": "2025-09-09T11:25:57.828Z",
"offline_enabled": false,
"link": null,
"id": "x",
"ad_keys": null
}

推奨事項

  • 再生トークン リクエストを作成する際、ペイロード内の Timeshift 関連の主要フィールドは start_time と end_time です。
  • 時間は epoch 形式または ISO 8601 形式で指定できます。両方のフィールドには有効な文字列を設定し、空にしてはいけません。
  • 有効なケースとして、開始時間はジョブの過去 14 日以内である必要があります。

有効なケース

以下は、NextGen Live における Timeshift を使用する際の有効なシナリオです。これらに従うことで、スムーズな再生と予測可能な動作が保証されます。

  • 開始時間が過去 14 日以内であること: start_time として指定できるのは、現在のライブチャンネルから過去 14 日以内の時間のみです。
  • 開始時間が終了時間より前であること: start_time は常に end_time より前である必要があります。
  • 最大期間の制限: end_timestart_time の差は 24 時間以内でなければなりません。
  • 開始時間のみが指定されている場合: start_time のみ定義されている場合、再生は「指定された start_time まで巻き戻し可能なライブ配信」として動作します。これはライブスポーツやニュースイベントに便利です。再生ウィンドウが 24 時間を超えると、URL は期限切れになります。
  • 開始時間と終了時間が未来に設定されている場合: 両方の時間が未来に設定されている場合、start_time が現在時刻以下になるまで再生は開始しません。再生は以下のステートを自動的に遷移します:
    • 再生なし
    • ライブイベント再生
    • VOD 再生(14 日間利用可能)
    この構成は、同じ URL でライブ視聴と追いかけ再生の両方を提供したいスケジュールイベント配信に最適です。