サポートに連絡する| システムステータス
ページコンテンツ

    クリップの作成このページは移動しました。3 秒後に新しい場所に移動します。ブックマークを更新してください!

    Live API:VOD クリップを作成する

    このトピックでは、ライブストリームからビデオオンデマンド (VOD) クリップを作成する方法について説明します。

    概要

    クリップは、ライブストリームから抽出された動画です。S3 バケット、FTP サイト、または Video Cloudアカウントに送信できます。クリップはMP4ビデオとして作成され、それはすべてのケースで宛先に送信されるものです。Video Cloud の場合、MP4 は取り込みシステムによってトランスコードされ、ビデオに対して作成されるレンディションの種類は、使用するインジェストプロファイルによって異なります。

    クリップの定義は、/vodsエンドポイントを使用して作成されます。

    クリップはいくつかの方法で作成できます。

    • ライブストリームイベントの SMPTE タイムコードで、stream_start_timecodestream_end_timecodeおよび/または定義されている- これにはエンコーダが必要であることに注意してくださいタイムコード情報を送信する
    • start_timeend_time開始時刻を基準に定義されたおよび/または定義 ( stream_start_time )ライブストリームイベント全体の
    • エポック (Unix) 時間 (秒) start_timeend_timeで定義されたおよび/または定義
    • duration
    • VOD API できると一緒に使用する暗号化またはDRM保護仕事。現在、Live Module はこれをサポートしていませんが、将来のリリースでは予定です。

    備考

    1. クリップをできるだけ早く使用できるようにするには、セグメント精度が高いクリップを最初に作成してから、使用可能な次第、フレーム精度のクリップに置き換えます。
    2. を指定した場合duration、作成されるクリップは次のようになります。
      • ジョブがアクティブでまだ稼働している場合:(リクエスト時間-期間)~(リクエスト時間)
      • ジョブが終了した場合:( finished_at -duration) から ( finished_at )
    3. [and] start_timeの両方を指定した場合end_time :
      • ジョブがアクティブでまだ生きている場合: created_atエポックタイムウィンドウが完全にリクエスト時間内に収まる限り、クリップが作成されます。
      • ジョブが終了した場合: created_atエポックタイムウィンドウが完全におよび内にある限りfinished_at、クリップが作成されます。
    4. SSAI を使用したライブストリームのクリップには、広告は含まれません。
    5. クリップは、イベントの 7 日後まで作成できます。SEP では、次のアクティベーションまで、または 7 日(どちらか短い方)まで作成できます。
    6. VOD API は、ストリーム内に存在するコンテンツ以外のコンテンツを追加しません。300 秒の長さのライブストリームで 350 を指定すると、出力の長さは 300 秒になります。
    7. ライブストリームはブロードキャストされた状態で保存され、イベント終了後の 7 日間すぐに利用できるため、クリッピング機能に DVR 対応のライブストリームを使用する必要はありません。
    8. Brightcove Live クリッピングでは、最高解像度の出力と同じ解像度のクリップしか生成されません。ソース入力解像度とは一致しません(最高解像度の出力と同じでない限り)。

    クリップを複数の宛先に送信することもできます。

    • ビデオクラウドアカウント
    • FTPサーバ
    • S3 バケット

    クリップを指定する場合、url出力にはデスティネーションまたは Video Cloud videocloudでのビデオの作成とクリップの取り込みを詳しく説明するオブジェクトです。

    注: ライブストリームの実行中にクリップを作成できます。これを行うには、クリップの開始時間と終了時間をエポック時間、またはライブストリームの開始時刻を基準にして定義する必要があります。

    認証情報

    クリップの送信先でアクセスする認証情報が必要な場合は、Live API の認証情報操作を使用して認証情報を作成できます。詳細については、ライブ API の認証情報の管理を参照してください

    終点

    クリップは、POST次の宛先にリクエストを送信して作成されます。

    https://api.bcovlive.io/v1/vods
    
    

    リクエスト本文- ビデオクラウド

    例 1: ストリーム開始を基準とした開始/終了時間

    リクエスト本文には、開始時刻と終了時刻、およびクリップを送信する場所の詳細が含まれます。ストリームの 3 分目のクリップを作成し、 Video Cloudアカウントに送信するサンプルリクエスト本文を次に示します。

    {
      "live_job_id":"PUT-LIVE-JOB-ID-HERE",
      "outputs":[
        {
          "label": "60 secs by stream from min 2 to min 3",
          "stream_start_time": 120,
          "stream_end_time": 180,
          "credentials": "USER_VIDEOCLOUD_CREDENTIAL_LABEL",
          "videocloud": {
            "video": {
            "name": "One Minute Clip",
            "tags": ["live", "clip"]
            },
              "ingest": {
                "capture-images": true
            }
          }
        }
      ]
    }
    
    

    この例では、1 分のデュレーションのクリップを作成し、 Video Cloudに送信しています。アカウントのデフォルトが使用されるように、再トランスコーディングの取り込みプロファイルを指定せずに、クリップに名前といくつかのタグを付けて、 Video Cloudにサムネイルをキャプチャするように指示しています。トランスコーディング中のクリップからのポスター画像。

    例 2: エポック時間での開始/終了時間

    リクエスト本文には、開始時刻と終了時刻をエポック時間で表し、クリップを送信する場所の詳細が含まれます。ストリームの 3 分目のクリップを作成し、 Video Cloudアカウントに送信するサンプルリクエスト本文を次に示します。

    {
      "live_job_id":"PUT-LIVE-JOB-ID-HERE",
        "outputs":[
          {
            "label": "60 secs - epoch time",
            "start_time": 1516652694,
            "end_time": 1516652754,
            "credentials": "USER_VIDEOCLOUD_CREDENTIAL_LABEL",
            "videocloud": {
              "video": {
              "name": "One Minute Clip",
              "tags": ["live", "clip"]
              },
                "ingest": {
                "capture-images": true
            }
          }
        }
      ]
    }
    
    

    この例では、特定のエポック時間(この例では 2018 年 1 月 22 日 08:24:54 GMT)に 1 分のデュレーションのクリップを作成します。

    例 3: ストリームの開始を基準とした開始時間を持つ期間

    リクエスト本文には、デュレーションと stream_start_time、およびクリップを送信する場所の詳細が含まれます。ストリームの 3 分目のクリップを作成し、 Video Cloudアカウントに送信するサンプルリクエスト本文を次に示します。

    {
      "live_job_id":"PUT-LIVE-JOB-ID-HERE",
      "outputs":[
        {
          "label": "60 secs from start time",
          "stream_start_time": 300,
          "duration": 60,
          "credentials": "USER_VIDEOCLOUD_CREDENTIAL_LABEL",
          "videocloud": {
            "video": {
            "name": "One Minute Clip",
            "tags": ["live", "clip"]
            },
            "ingest": {
            "capture-images": true
            }
          }
        }
      ]
    }
    
    

    この例では、ライブストリームの開始から 5 分後に開始する 1 分間のクリップを作成します。

    例 4: 開始時間または終了時間がない期間

    リクエスト本文には、開始時刻と終了時刻をエポック時間で表し、クリップを送信する場所の詳細が含まれます。ストリームの 3 分目のクリップを作成し、 Video Cloudアカウントに送信するサンプルリクエスト本文を次に示します。

    {
      "live_job_id":"PUT-LIVE-JOB-ID-HERE",
      "outputs":[
        {
          "label": "60 secs - duration",
          "duration": 60,
          "credentials": "USER_VIDEOCLOUD_CREDENTIAL_LABEL",
          "videocloud": {
            "video": {
            "name": "One Minute Clip",
            "tags": ["live", "clip"]
            },
            "ingest": {
              "capture-images": true
            }
          },
          "notifications": ["http://myserver.com/api/notification_listener?type=jvod"]
        }
      ]
    }
    
    

    この例では、1 分のデュレーションのクリップを作成します。開始時間や終了時間を指定していないため、クリップはライブストリームの最後の 60 秒から取得されます。

    例 5: stream_start_timecodeおよびを使用するstream_end_timecode

    リクエスト本文には、HH: MM: SS: FF タイムコードの開始時間と終了時間/フレーム、およびクリップを送信する場所の詳細が含まれます。タイムコードを使用するには、エンコーダがタイムコードを送信している必要があります。ストリームの 50 分のクリップを作成し、 Video Cloudアカウントに送信するリクエスト本文の例を次に示します。

    {
      "live_job_id":"PUT-LIVE-JOB-ID-HERE",
      "outputs":[
        {
          "label": "Clipping using Timecode from-01:10:18:15 to-01:11:08:15",
          "stream_start_timecode": "01:10:18:15",
          "stream_end_timecode": "01:11:08:15",
          "credentials": "USER_VIDEOCLOUD_CREDENTIAL_LABEL",
          "videocloud": {
            "video": {
              "name": "Fifty Minute Clip",
              "tags": ["live", "clip"]
            },
            "ingest": {
            "capture-images": true
            }
          }
        },
        "notifications": ["http://myserver.com/api/notification_listener?type=jvod"]
      ]
    }
    
    

    Video Cloud へのクリップ送信に関する一般情報

    videoingestおよびオブジェクトに含めることができるフィールドについては、動的取り込みを参照してください。APIリファレンス

    リクエストボディ-S3

    リクエスト本文には、開始時刻と終了時刻、およびクリップを送信する場所の詳細が含まれます。ストリームの 3 分間のクリップを作成し、S3 バケットに送信するサンプルリクエスト本文を次に示します。

    {
      "live_job_id":"",
      "outputs":[
        {
          "label": "last_30",
          "duration": 30,
          "url": "s3://YOUR_BUCKET_NAME/file_name.mp4",
          "credentials": "s3-credentials",
          "notifications": ["http://myserver.com/api/notification_listener?type=jvod"]
        }
      ],
    }
    
    

    この例では、30 秒のデュレーションのクリップを作成し、S3 バケットに送信しています。クリップ用のファイル名を含むバケット URL と、保存された S3 バケット認証情報の名前を示す文字列を提供します。認証情報は、Brightcove サポートがお客様のアカウントに対して設定できます。

    リクエスト本文フィールド

    リクエスト本文フィールドの完全な表を次に示します。

    リクエスト本文フィールド
    フィールド タイプ 説明
    live_job_id ストリング

    VOD クリップの作成元となるライブストリームジョブの ID。

    outputs オブジェクト []

    VOD 出力の配列

    outputs.label ストリング

    出力のラベル

    outputs.duration [番号]

    クリップの持続時間 (秒)。durationを単独で使用して、{duration}ストリームの最後の秒で構成されるクリップを定義できます。durationいずれでも使用できstream_start_timestream_end_time , start_time , end_time , stream_end_timecode、またはstream_start_timecode

    outputs.stream_start_time [番号]

    ライブストリームの開始時間に対するクリップの開始時間(秒)は、stream_start_time次のいずれかとともに使用する必要があります。stream_end_timeまたはduration

    outputs.stream_end_time [番号]

    ライブストリームの開始時間に対するクリップの終了時間(秒)は、stream_end_time次のいずれかとともに使用する必要があります。stream_start_timeまたはduration

    outputs.start_time [番号]

    クリップの開始時間はエポック (Unix) 時間 (秒) で表されます。start_timeend_timeまたはduration

    outputs.end_time [番号]

    クリップの終了時刻をエポック (Unix) 時間 (秒) end_timeで指定します。start_timeまたはduration

    outputs.stream_start_timecode [番号]

    ストリームの先頭からの SMPTE 形式 (HH: MM: SS: FF) タイムコード内のクリップの開始時刻は、stream_start_timecode次のいずれかとともに使用する必要があります。stream_end_timecodeまたはduration

    outputs.stream_end_timecode [番号]

    ストリームの終わりからの SMPTE 形式 (HH: MM: SS: FF) タイムコード内のクリップの終了時刻は、outputs.stream_end_timecode次のいずれかとともに使用する必要があります。stream_start_timecodeまたはduration

    outputs.url 文字列

    クリップの宛先 URL。url出力にはこのフィールドを含める必要があります。または、Video Cloud videocloudのビデオプロパティと取り込みオプションを定義するオブジェクトです。

    outputs.credentials ストリング

    このアドレスに対してアカウントで設定された認証情報の名前

    outputs.videocloud オブジェクト

    Video Cloud 取り込みの入力を含むオブジェクト

    outputs.videocloud.video オブジェクト

    Video Cloud ビデオオブジェクト作成の入力を含むオブジェクト-ビデオの作成については、 CMS API リファレンスを参照してください。

    outputs.videocloud.ingest オブジェクト

    Video Cloud ビデオ取り込みの入力を含むオブジェクト- ダイナミックインジェストリファレンスを参照 - そうしないこの情報は Live API によって提供されるので、masterフィールドを含めます。取り込みプロファイルが指定されていない場合は、アカウントのデフォルトプロファイルが使用されます。

    ビデオクラウドの取り込み用のビデオフィールド

    詳細については、 CMS API リファレンスを参照してください

    ビデオフィールド
    フィールド タイプ 説明
    ad_keys ストリング 動画に割り当てられた広告キーと値のペアを表す文字列。キーと値のペアは、キー=値としてフォーマットされ、アンパサンドで区切られます。たとえば、"adKeys": "category=sports&live=true"
    cue_points マップの配列 キューポイントマップの配列
    custom_fields フィールドと値のペアのマップ (文字列) fieldname:valueビデオのカスタムセット- このビデオの値を持たないカスタムフィールドはこのマップに含まれません。カスタムフィールドの値の最大長は1024 のシングルバイト文字
    description 文字列。古い shortDescription の代わりになります ビデオの簡単な説明(最大長:248 シングルバイト文字)
    economics 文字列。有効な列挙値のいずれかである必要があります。 「AD_SUPPOPTED」(デフォルト)または「無料」
    geo プロパティと値のペアのマップ 動画の地上制限プロパティ
    link プロパティと値のペアのマップ 関連リンクプロパティのマップ
    long_description ストリング 長い説明 (5000 文字まで)
    name ストリング ビデオの名前 (最大長:248 半バイト) が必要です
    offline_enabled ブール値 ビデオがオフライン再生可能かどうか
    projection ストリング 360°動画のマッピング投影(例:「エクイレクタングラーン」)
    reference_id ストリング 動画を一意に識別するユーザー指定の ID。150 文字に制限されています。ReferenceId を外部キーとして使用して、別のシステムでこのビデオを識別できます。参照 ID には、スペース、カンマ、特殊文字を含めることはできません。
    schedule プロパティと値のペアのマップ ビデオの空室状況のための開始日と終了日のマップ
    state ストリング アクティブ、非アクティブ
    tags タグの配列 (文字列) 動画に割り当てられたタグの配列
    text_tracks HTML5スタイルのテキストトラックの配列 ビデオに割り当てられたテキストトラック(WebVTT ファイル)の配列

    ビデオキューポイントフィールド

    次の表に、のフィールドを示しますvideo.cuepoints

    キューポイントフィールド
    フィールド タイプ 説明
    id ストリング キューポイントのシステム ID
    force_stop ブール値 ビデオがキューポイントで停止するかどうか
    metadata 文字列; コードポイントのみ キューポイントに関連付けられたメタデータ文字列
    name 文字列 キューポイント名
    time フロート ビデオの開始位置から測定されたキューポイントの時間(秒)
    type 文字列 キューポイントタイプ ( ADまたはDATA )

    動画地理フィールド

    次の表に、video.geoオブジェクトフィールドを示します。

    地理フィルタリングフィールド
    フィールド タイプ 説明
    countries 国コード文字列の配列 ISO 3166 の配列 2 文字または 4 文字のコードリスト (https://www.iso.org/obp/ui/) で、ビデオの再生が許可されている国または禁止されている国の
    exclude_countries ブール値 true の場合、Country 配列は表示から除外された国のリストとして扱われます。
    restricted ブール値 この動画で地理フィルタリングが有効になっているかどうか

    次の表に、video.linkオブジェクトフィールドを示します。

    リンクフィールド
    フィールド タイプ 説明
    url ストリング 関連リンク URL
    text ストリング 関連リンクテキスト

    ビデオ集計表フィールド

    次の表に、video.scheduleオブジェクトのフィールドを示します。

    ビデオ.スケジュールフィールド
    フィールド タイプ 説明
    ends_at ISO-8601 日付形式の文字列 ビデオが視聴できなくなる日時
    starts_at ISO-8601 日付形式の文字列 ビデオが視聴可能になる日時です。

    ビデオクラウドの取り込みフィールド

    ビデオクラウドの取り込みフィールド
    フィールド タイプ 説明
    audio_tracks オプショナル 動的配信のみ オブジェクト []

    オーディオトラックオブジェクトの配列-詳細については、API を使用した複数のオーディオトラックの実装を参照してください。

    audio_tracks.merge_with_existing オプショナル ブール値

    既存のオーディオトラックを置き換えるか、新しいオーディオトラックを追加するか(false現在のみサポートされています)ダイナミック配信のみ

    デフォルト値: false

    audio_tracks.masters オプショナル オブジェクト []

    オーディオトラックオブジェクトの配列 Dynamic Delivery のみ

    audio_tracks.masters.url オプショナル 文字列

    オーディオファイルのURL 動的配信のみ

    audio_tracks.masters.language オプショナル 文字列

    https://www.iana.org/assignments/language-subtag-registry/language-subtag-registry のサブタグからのオーディオトラックの言語コード(デフォルトは Brightcove サポートに連絡してアカウントに設定できます)動的配信のみ

    audio_tracks.masters.variant オプショナル 文字列

    オーディオトラックのタイプ(デフォルトはブライトコーブサポートに連絡してアカウントに設定可能)ダイナミック配信のみ

    許可される値: "main""alternate""commentary""dub""descriptive"

    profile オプショナル 文字列

    トランスコーディングに使用する取り込みプロファイル。存在しない場合は、デフォルトのプロファイルが使用されます

    text_tracks オプショナル オブジェクト []

    text_tracksオブジェクトの配列-WebVTT ファイルの取り込み (テキストトラック) を参照してください。

    text_tracks.url Url

    WebVTT ファイルの URL

    text_tracks.srclang ストリング

    ISO 639 テキストトラックの 2 文字 (アルファ-2) 言語コード

    text_tracks.kind オプショナル 文字列

    vtt ファイルの使用方法について

    デフォルト値: captions

    許可される値: "captions""subtitles""chapters""metadata"

    text_tracks.label オプショナル 文字列

    ユーザーが読めるタイトル

    text_tracks.default オプショナル ブール値

    キャプション/字幕のデフォルト言語を設定します

    capture-images オプショナル ブール値

    trueトランスコーディング中にポスターとサムネイルをキャプチャするかどうかを指定します。デフォルトはプロファイルに画像レンディションがあるかどうか、falseそうでない場合はデフォルトです。詳細については、イメージと動的取り込み API

    poster オプショナル オブジェクト

    取り込むビデオポスター-詳細については、画像と動的取り込み APIを参照してください。

    poster.url Url

    動画ポスター画像のURL

    poster.height オプショナル 整数

    画像のピクセル高さ

    poster.width オプショナル 整数

    画像のピクセル幅

    thumbnail オプショナル オブジェクト

    取り込むビデオサムネイル-詳細については、画像と動的取り込み APIを参照してください。

    thumbnail.url Url

    動画のサムネイル画像の URL

    thumbnail.height オプショナル 整数

    画像のピクセル高さ

    thumbnail.width オプショナル 整数

    画像のピクセル幅

    callbacks オプショナル 文字列 [] 通知の送信先となる URL の配列

     

    API レスポンス

    クリップの作成リクエストに対する応答には、ジョブの ID、リクエスト本文で設定したラベル、およびライブジョブ ID が含まれます。

    {
      "vod_jobs": [
        {
          "jvod_id": "9582606c50d84be5ad4bc104f2aa3360",
          "label": "last 60 secs of live job"
        }
      ],
      "live_job_id": "88ba5d87b61a4ef3a6dddabd0c38d319"
    }
    
    

    応答フィールド

    レスポンス本文フィールド
    フィールド タイプ 説明
    vod_jobs オブジェクト

    クリップ応答オブジェクト

    jvod_id ストリング

    クリップジョブ ID

    label ストリング

    クリップラベル (入力から)

    live_job_id ストリング

    ライブジョブ ID (入力から)


    ページの最終更新日30 Sep 2021