Video Stitcher API では、ライブ ストリームの再生を開始するたびにライブ セッションを作成し、Google アド マネージャーによって配信される広告をミッドロール挿入点で動的に統合します。レスポンスには、再生 URL とライブ セッションの構成を指定します。
このドキュメントでは、ライブ セッションの作成方法について説明します。詳細については、REST のドキュメントをご覧ください。
始める前に
- ライブ構成ファイルを作成するGoogle Ad マネージャーとの統合では、
gamSettings
オブジェクト が設定されていることを確認してください。 - スレートを指定する場合は、登録するスレート上に
gamSettings
オブジェクトが設定されていることを確認します。
ライブ セッションを定義する
ライブ セッションを定義する場合は、次のフィールドに値を入力する必要があります。
liveConfig
ライブ セッションを定義する場合、次のフィールドは省略可能です。
ライブ セッションを作成する
ライブ セッションを作成するには、IMA SDK(Video Stitcher API を呼び出す)を使用するか、Video Stitcher API を直接使用します。
IMA SDK を使用する
IMA SDK と統合する場合は、IMA SDK によってライブ セッションが作成されます。
function requestVideoStitcherStream() { const streamRequest = new google.ima.dai.api.VideoStitcherLiveStreamRequest(); streamRequest.liveStreamEventId = 'LIVE_CONFIG_ID'; streamRequest.region = 'LOCATION'; streamRequest.projectNumber = 'PROJECT_NUMBER'; streamRequest.oAuthToken = 'OAUTH_TOKEN'; streamRequest.networkCode = 'NETWORK_CODE'; streamRequest.customAssetKey = 'ASSET_KEY'; streamManager.requestStream(streamRequest); }
セッションごとに次のパラメータをオーバーライドできます。
省略可能なパラメータとオーバーライド
IMA SDK を使用してライブ セッションを作成する場合は、JSON オブジェクトを渡すことで、セッションの特定のパラメータをオーバーライドできます。たとえば、liveConfig のデフォルトの adTracking
が SERVER
に設定されている場合、その値を CLIENT
にオーバーライドできます。また、videoStitcherSessionOptions
フィールドを設定することで、IMA SDK の manifestOptions
フィールドを設定することもできます。
function requestVideoStitcherStream() { const streamRequest = new google.ima.dai.api.VideoStitcherLiveStreamRequest(); streamRequest.liveStreamEventId = 'LIVE_CONFIG_ID'; streamRequest.region = 'LOCATION'; streamRequest.projectNumber = 'PROJECT_NUMBER'; streamRequest.oAuthToken = 'OAUTH_TOKEN'; streamRequest.networkCode = 'NETWORK_CODE'; streamRequest.customAssetKey = 'ASSET_KEY'; streamRequest.videoStitcherSessionOptions = { adTracking: 'CLIENT', manifestOptions: { includeRenditions: [ { bitrateBps: 150000, codecs: 'hvc1.1.4.L126.B0' }, { bitrateBps: 440000, codecs: 'hvc1.1.4.L126.B0' }, ], bitrateOrder: 'descending', } }; streamManager.requestStream(streamRequest); }
API を直接使用する
API を直接使用してライブ セッションを作成するには、projects.locations.liveSessions.create
メソッドを使用します。
セッションごとに次のパラメータをオーバーライドできます。
REST
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT_NUMBER
: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号LOCATION
: セッションを作成するロケーション。サポートされているリージョンのいずれかを使用します。3~7 つの店舗を表示us-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
LIVE_CONFIG_ID
: ライブ構成ファイルのユーザー定義の識別子。
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "PLAY_URI", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある C# の設定手順を実施してください。 詳細については、Video Stitcher API C# API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Go の設定手順を実施してください。 詳細については、Video Stitcher API Go API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Java の設定手順を実施してください。 詳細については、Video Stitcher API Java API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Node.js の設定手順を実施してください。 詳細については、Video Stitcher API Node.js API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある PHP の設定手順を実施してください。 詳細については、Video Stitcher API PHP API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Python の設定手順を実施してください。 詳細については、Video Stitcher API Python API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Ruby
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Ruby の設定手順を実施してください。 詳細については、Video Stitcher API Ruby API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Video Stitcher API は、リクエストごとに一意のセッション ID を生成します。過去 5 分以内に playUri
のリクエストがない場合、セッションは期限切れとなります。
レスポンスはライブ セッション オブジェクトです。playUri
は、クライアント デバイスがこのライブ セッションの広告結合されたストリームの再生に使用する URL です。
クライアントのデバイスに代わってセッションを生成する場合は、HTTP ヘッダーを使用して次のパラメータを設定できます。
パラメータ | HTTP ヘッダー |
---|---|
CLIENT_IP | x-forwarded-for |
REFERRER_URL | referer |
USER_AGENT | user-agent |
前述の curl
リクエストには、次のヘッダーを追加できます。
-H "x-forwarded-for: CLIENT_IP" \ -H "referer: REFERRER_URL" \ -H "user-agent: USER_AGENT" \
x-forwarded-for
ヘッダーが指定されていない場合、Video Stitcher API は広告メタデータ リクエストでクライアントの IP アドレスを使用します。クライアントのデバイスに代わってセッションが生成された場合、クライアントの IP アドレスがクライアントのデバイスの IP と一致しない場合があります。
Ad tracking
Video Stitcher API は、クライアント側の広告トラッキングとサーバー側の広告トラッキングの両方をサポートしています。デフォルトでは、ライブ セッションは関連する liveConfig
の adTracking
フィールドの値を使用します。
値をオーバーライドするには、ライブ セッションの作成時に adTracking
フィールドを設定します。
広告ターゲティングのパラメータ
Google アド マネージャーの広告タグには、セッションごとに更新できるターゲティング パラメータを含めることができます。
クライアントサイド広告トラッキングを使用する場合
IMA SDK を使用して、クライアントサイドの広告トラッキングを設定します。IMA SDK でターゲティング パラメータを設定する方法をご覧ください。
サーバーサイド広告トラッキングを使用する場合
サーバーサイド広告トラッキングを使用する際に広告ターゲティング パラメータの値を置き換えるには、gamSettings.targetingParameters
フィールドにマッピングを指定します。たとえば、[my_key] マクロを文字列 my_value
に置き換える場合は、次の情報を指定する必要があります。
{ ... "gamSettings": { "targetingParameters": { "my_key": "my_value", }, }, ... }
マニフェストのオプション
manifestOptions
パラメータは、合成された動画マニフェストで生成される動画レンダリングを指定します。合成された動画マニフェスト内のレンディションの順序にも対応しています。詳細については、マニフェスト オプションのドキュメントをご覧ください。
セッションを取得する
ライブ セッションを取得するには、projects.locations.liveSessions.get
メソッドを使用します。
REST
リクエストのデータを使用する前に、次のように置き換えます。
PROJECT_NUMBER
: IAM 設定ページの [プロジェクト番号] フィールドにある Google Cloud プロジェクト番号LOCATION
: セッションを作成するロケーション。サポートされているリージョンのいずれかを使用します。3~7 つの店舗を表示us-central1
us-east1
us-west1
asia-east1
asia-south1
asia-southeast1
europe-west1
southamerica-east1
SESSION_ID
: ライブ セッションの ID
リクエストを送信するには、次のいずれかのオプションを展開します。
次のような JSON レスポンスが返されます。
{ "name": "projects/PROJECT_NUMBER/locations/LOCATION/liveSessions/SESSION_ID", "playUri": "ad-stitched-live-stream-uri", "liveConfig": "projects/PROJECT_NUMBER/locations/LOCATION/liveConfigs/LIVE_CONFIG_ID", }
C#
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある C# の設定手順を実施してください。 詳細については、Video Stitcher API C# API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Go
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Go の設定手順を実施してください。 詳細については、Video Stitcher API Go API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Java
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Java の設定手順を実施してください。 詳細については、Video Stitcher API Java API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Node.js
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Node.js の設定手順を実施してください。 詳細については、Video Stitcher API Node.js API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
PHP
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある PHP の設定手順を実施してください。 詳細については、Video Stitcher API PHP API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Python
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Python の設定手順を実施してください。 詳細については、Video Stitcher API Python API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
Ruby
このサンプルを試す前に、クライアント ライブラリを使用した Video Stitcher API クイックスタートにある Ruby の設定手順を実施してください。 詳細については、Video Stitcher API Ruby API リファレンス ドキュメントをご覧ください。
Video Stitcher API への認証を行うには、アプリケーションのデフォルト認証情報を設定します。 詳細については、ローカル開発環境の認証の設定をご覧ください。
広告合成された再生リストの例
以下は、広告合成前のソースライブ再生リストのサンプルです。
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:32:00Z",DURATION=60,SCTE35-OUT=0xF...
#EXTINF:10.010
segment_00007.ts
#EXTINF:10.010
segment_00008.ts
#EXT-X-DATERANGE:ID="2415919105",START-DATE="2021-06-22T08:39:20Z",SCTE35-IN=0xF...
#EXTINF:10.010
segment_00009.ts
以下は、広告合成後のソースライブ再生リストのサンプルです。
#EXTM3U
#EXT-X-TARGETDURATION:10
#EXT-X-VERSION:4
#EXT-X-MEDIA-SEQUENCE:5
#EXTINF:10.010
segment_00005.ts
#EXTINF:10.010
segment_00006.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://dai.google.com/.../ad-1/seg-1.ts
#EXTINF:5.000
https://dai.google.com/.../ad-1/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:6.000
https://dai.google.com/.../ad-2/seg-1.ts
#EXTINF:5.000
https://dai.google.com/.../ad-2/seg-2.ts
#EXT-X-DISCONTINUITY
#EXTINF:10.010
segment_00009.ts
Google アド マネージャーで有効になっているライブ セッションを検査する
このページでは、ライブセッションと特定のライブセッションの広告タグの詳細を検査する方法について説明します。これらのセッションの広告タグの詳細を確認するには、アド マネージャーのストリーム アクティビティ モニターを使用して、広告リクエストの詳細を確認します。