チャンネル クリップの作成と管理

このページでは、Live Stream API チャンネル クリップの作成と管理方法について説明します。チャンネル クリップは、チャンネルのサブリソースです。チャンネル クリップを使用して、ライブ配信からビデオ オンデマンド(VOD)ファイルを作成できます。これらの VOD ファイルは Cloud Storage に保存されます。詳細については、ライブ ストリームから VOD クリップを作成するをご覧ください。

Google Cloud プロジェクトと認証の設定

Google Cloud プロジェクトと認証情報を作成していない場合は、始める前にをご覧ください。

前提条件

チャンネル クリップを作成する前に、次のリソースを作成する必要があります。

  1. 入力エンドポイントを作成する

  2. 保持構成を使用してチャネルを作成する

チャンネル クリップを作成する

チャンネル クリップを作成する前に、必ずチャンネルを開始して、チャンネルへのコンテンツのストリーミングを開始してください。

チャネルを作成するには、projects.locations.channels.clips.create メソッドを使用します。

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号
  • LOCATION: チャネルがあるロケーション。サポートされているリージョンのいずれかを使用します。
    ロケーションを表示
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: チャネルのユーザー定義の識別子。
  • CLIP_ID: VOD クリップのユーザー定義の識別子。
  • MARK_IN_TIME: RFC3339 UTC「Zulu」形式のタイムスタンプを使用した、元のライブ配信マニフェストのマークイン Unix エポック時間。(例: 2014-10-02T15:01:23Z)。
  • MARK_OUT_TIME: 元のライブ配信マニフェスト内のマークアウトの Unix エポック時間。RFC3339 UTC「Zulu」形式のタイムスタンプを使用します(例: 2014-10-02T15:01:23Z)。
  • BUCKET_NAME: VOD クリップのマニフェスト ファイルとセグメント ファイルを保持するために作成した Cloud Storage バケットの名前。ライブ ストリームのマニフェスト用に作成したバケットと同じバケットを使用するか、別のバケットを使用できます。また、バケット名にディレクトリ名を追加することもできます(my-bucket/vod-clip など)。

リクエストを送信するには、次のいずれかのオプションを開きます。

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/CLIP_ID",
    "verb": "create",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

このコマンドは、リクエストの進行状況を追跡するために使用できる長時間実行オペレーション(LRO)を作成します。詳しくは、長時間実行オペレーションの管理をご覧ください。

チャンネル クリップの詳細を取得する

チャンネル クリップの詳細を取得するには、projects.locations.channels.clips.get メソッドを使用します。

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号
  • LOCATION: チャネルがあるロケーション。サポートされているリージョンのいずれかを使用します。
    ロケーションを表示
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: チャネルのユーザー定義の識別子。
  • CLIP_ID: VOD クリップのユーザー定義の識別子。

リクエストを送信するには、次のいずれかのオプションを開きます。

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/CLIP_ID",
  "createTime": CREATE_TIME,
  "startTime": START_TIME,
  "updateTime": UPDATE_TIME,
  "state": "SUCCEEDED",
  "outputUri": "gs://BUCKET_NAME",
  "slices": [
    {
      "timeSlice": {
        "markinTime": "MARK_IN_TIME",
        "markoutTime": "MARK_OUT_TIME"
      }
    }
  ],
  "features": {},
  "clipManifests": [
    {
      "manifestKey": "manifest_hls",
      "outputUri": "gs://BUCKET_NAME/main.m3u8"
    }
  ]
}

projects.locations.channels.clips.get メソッドを使用すると、チャンネルごとに最新の 1,000 件のクリップジョブ レコードのみが使用できます。上限を超えたクリップジョブ レコードは削除されます。生成されたクリップ ファイルは outputUri で指定する必要があります。Live Stream API はこれらのファイルを Cloud Storage から削除しません。

チャンネル クリップを一覧表示する

チャンネル用に作成したすべてのチャンネル クリップを一覧表示するには、projects.locations.channels.clips.list メソッドを使用します。

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号
  • LOCATION: チャネルがあるロケーション。サポートされているリージョンのいずれかを使用します。
    ロケーションを表示
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: チャネルのユーザー定義の識別子。

リクエストを送信するには、次のいずれかのオプションを開きます。

次のような JSON レスポンスが返されます。

{
    "clips": [
      {
        "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/CLIP_ID",
        "createTime": CREATE_TIME,
        "startTime": START_TIME,
        "updateTime": UPDATE_TIME,
        "state": "SUCCEEDED",
        "outputUri": "gs://BUCKET_NAME",
        "slices": [
          {
            "timeSlice": {
              "markinTime": "MARK_IN_TIME",
              "markoutTime": "MARK_OUT_TIME"
            }
          }
        ],
        "features": {},
        "clipManifests": [
          {
            "manifestKey": "manifest_hls",
            "outputUri": "gs://BUCKET_NAME/main.m3u8"
          }
        ]
      },
      {
        "name": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/my-clip2",
        "createTime": CREATE_TIME,
        "startTime": START_TIME,
        "updateTime": UPDATE_TIME,
        "state": "SUCCEEDED",
        "outputUri": "gs://BUCKET_NAME",
        "slices": [
          {
            "timeSlice": {
              "markinTime": "MARK_IN_TIME",
              "markoutTime": "MARK_OUT_TIME"
            }
          }
        ],
        "features": {},
        "clipManifests": [
          {
            "manifestKey": "manifest_hls",
            "outputUri": "gs://BUCKET_NAME/main.m3u8"
          }
        ]
      }
  ]
}

チャネル クリップを削除する

チャネル クリップを削除するには、projects.locations.channels.clips.delete メソッドを使用します。この方法では、クリッピング タスクのみが削除されます。Cloud Storage バケットに作成された VOD リソースは、Live Stream API によって管理されず、削除もされません。

リクエストのデータを使用する前に、次のように置き換えます。

  • PROJECT_NUMBER: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号
  • LOCATION: チャネルがあるロケーション。サポートされているリージョンのいずれかを使用します。
    ロケーションを表示
    • us-central1
    • us-east1
    • us-east4
    • us-west1
    • us-west2
    • northamerica-northeast1
    • southamerica-east1
    • asia-east1
    • asia-east2
    • asia-northeast1
    • asia-southeast1
    • australia-southeast1
    • europe-west1
    • europe-west2
    • europe-west3
    • europe-west4
  • CHANNEL_ID: チャネルのユーザー定義の識別子。
  • CLIP_ID: VOD クリップのユーザー定義の識別子。

リクエストを送信するには、次のいずれかのオプションを開きます。

次のような JSON レスポンスが返されます。

{
  "name": "projects/PROJECT_NUMBER/locations/LOCATION/operations/OPERATION_ID",
  "metadata": {
    "@type": "type.googleapis.com/google.cloud.video.livestream.v1.OperationMetadata",
    "createTime": CREATE_TIME,
    "target": "projects/PROJECT_NUMBER/locations/LOCATION/channels/CHANNEL_ID/clips/CLIP_ID",
    "verb": "delete",
    "requestedCancellation": false,
    "apiVersion": "v1"
  },
  "done": false
}

このコマンドは、リクエストの進行状況を追跡するために使用できる長時間実行オペレーション(LRO)を作成します。詳しくは、長時間実行オペレーションの管理をご覧ください。