SSAI と Brightcove ウェブ & スマートTV SDK の統合
概要
SSAI(Server-Side Ad Insertion)は、サーバーサイドで動画ストリームに広告を挿入し、視聴者にシームレスな広告体験を提供します。 このガイドでは、API を使用して SSAI を実装する手順について説明します。
前提条件
-
Video Cloud にアクセスできる Brightcove アカウントを持っていること。
-
プロジェクトにインストールされている Brightcove Web & Smart TV SDK。
-
広告設定を作成していること。
使用例
-
Brightcove SDK から Player (with UI) クラスのインポート。
import { Player, IntegrationsManager } from '@brightcove/web-sdk/ui';
-
Brightcove SDK から SSAI 統合クラスのインポート。
import { SsaiIntegrationFactory } from '@brightcove/web-sdk/integrations/ssai';
-
Brightcove SDK から SSAI 統合 CSS のインポート。
import '@brightcove/web-sdk/integrations/ssai/styles';
-
SSAI統合の設定。
IntegrationsManager.registerSsaiIntegrationFactory(SsaiIntegrationFactory);
-
プレーヤーの作成と設定。
const player = new Player({accountId:'<account-id>'}); player.updateConfiguration({ brightcove: { // Passing an Ad Config ID will enable the fetching of an SSAI stream from the Playback API adConfigId: '<valid-ad-config-id>', }, ssai: { timeout: 30_000, hideOverlays: false, // etc } });
-
プレーヤーをマウント ルート(ページ内の DOM 要素)にアタッチします:
const root = document.querySelector('#player-mount-root'); player.attach(root);
-
IntegrationsManager を介して SSAI Integration API にアクセスします。
const { ssaiIntegration } = player.getIntegrationsManager();
-
SSAI固有のメソッドを呼び出し。
ssaiIntegration.seekInRelativeTime(50);
設定の概要
このセクションでは、ウェブ & スマートTV SDKを使用する際にサーバーサイド広告挿入(SSAI)で利用可能なさまざまな設定オプションに関する詳細情報を提供します。
設定オプション | タイプ | デフォルト | 説明 |
---|---|---|---|
hideOverlays |
真偽値 | false | trueを設定すると、広告再生中にカウントダウンタイマーと詳細クリックスルーのオーバーレイが表示されなくなります。 |
timeout |
数値 | 45000 | VMAP を取得する XHR がタイムアウトするまでのミリ秒数。 |
enableDiscontinuities |
真偽値 | true | trueの場合、HLS不連続またはDASHマルチピリオドを持つビデオソースをリクエストします。 VOD SSAI でのみ有効。 |
enableOm |
真偽値 | false | trueの場合(必要なOpen Measurement SDKスクリプトが埋め込まれている場合)、プラグインはomParamsオブジェクトの値を使用してOMマネージャを起動し、新しいOMセッションクライアントを作成します。 |
omParams |
OmConfiguration | N/A | Open Measurement セッションのクライアントと OM 広告機能を開始するために必要なパラメータを記述したオブジェクト。 |
vmapURLParams |
オブジェクト | {} | VMAP ソース URL の任意の値を置き換えるためのパラメータを含むオブジェクト。こちらを参照して下さい。 |
パブリック メソッドの概要
メソッド | 説明 | パラメーター | パラメーター タイプ | 戻り値 |
---|---|---|---|---|
getRelativeDuration |
リニア広告またはコンテンツの再生時間を取得します。 | なし | N/A | 数値 |
seekInRelativeTime |
リニア広告またはコンテンツ(現在再生中のもの)の任意のポイントをシークする。 | seekTarget, preventAdSkips | 数値, 真偽値? | void |
getCurrentLinearAd |
現在のLinearAdを取得する。 | なし | N/A | LinearAd | null |
getRelativeTimelineState |
現在のリニア広告またはコンテンツに対する TimelineState オブジェクトを取得します。 | なし | N/A | TimelineState | null |
イベントの概要
イベント名 | 属性 | 説明 |
---|---|---|
ClickThrough |
読み取り専用 | SSAI広告でクリックスルーイベントが発生するとトリガーされます。 |
エラーの概要
エラー名 | 説明 |
---|---|
AdsBeforePrerollError |
プレロール広告の開始前にエラーが発生しました。 |
AdsPrerollError |
プリロール広告中のエラー。 |
AdsMidrollError |
ミッドロール広告中のエラー。 |
AdsPostrollError |
ポストロール広告中のエラー。 |
AdsMacroReplacementError |
広告URLまたはトラッキングイベント内のマクロの置換エラー。 |
AdsResumeContentError |
広告の中断後、コンテンツを再開する際にエラーが発生しました。 |
SsaiVmapParsingError |
SSAI広告のVMAPレスポンスの解析エラー。 |
SsaiLiveVmapParsingError |
ライブSSAI広告のVMAPレスポンスの解析エラー。 |
SsaiVodVmapParsingError |
VOD SSAI広告のVMAPレスポンスの解析エラー。 |
SsaiUnsupportedOmidAdSessionError |
OMID(Open Measurement Interface Definition)広告セッションはサポートされていません。 |
SsaiOmSessionError |
SSAIのOMセッションでエラー。 |
SsaiVmapRequestError |
SSAI広告に対するVMAPリクエストのエラー。 |