IMA SDK を使用すると、マルチメディア広告をウェブサイトやアプリに簡単に統合できます。IMA SDK は、 VAST 準拠の任意の広告サーバーから広告をリクエストし、アプリ内の広告再生を管理できます。IMA DAI SDK を使用すると、アプリは広告とコンテンツ動画(VOD またはライブ コンテンツ)のストリーム リクエストを行います。SDK は統合された動画ストリームを返すため、アプリ内で広告動画とコンテンツ動画の切り替えを管理する必要はありません。
関心のある DAI ソリューションを選択する
Pod Serving DAI
IMA SDK を使用すると、マルチメディア広告をウェブサイトやアプリに簡単に統合できます。IMA SDK は、 VAST 準拠の任意の広告サーバーから広告をリクエストし、アプリ内の広告再生を管理できます。IMA DAI SDK を使用すると、アプリは広告とコンテンツ動画(VOD またはライブ コンテンツ)のストリーム リクエストを行います。SDK は統合された動画ストリームを返すため、アプリ内で広告動画とコンテンツ動画の切り替えを管理する必要はありません。
このガイドでは、ライブ ストリームと VOD ストリームの再生用に IMA DAI SDK と動画プレーヤーを使用して、DAI Pod Serving ストリームを再生する方法について説明します。完了したサンプルの統合を表示または確認するには、Pod サービングのサンプルをダウンロードします。
IMA DAI Pod Serving の概要
StreamRequest
: Google の広告サーバーのストリーム リクエストを定義するオブジェクト。Pod サービングを有効にするには、ImaSdkFactory.createPodStreamRequest()
またはImaSdkFactory.createPodVodStreamRequest()
を使用して作成する必要があります。これらのメソッドにはネットワーク コードが必要です。また、createPodStreamRequest
にはカスタム アセットキーと、省略可能なAPI キーも必要です。どちらにも他のオプション パラメータが含まれています。StreamManager
: 動画ストリームと IMA DAI SDK 間の通信を処理するオブジェクト(トラッキング ピングの発行、ストリーム イベントのパブリッシャーへの転送など)。
前提条件
DAI 広告付きの動画ストリームを再生するように IMA DAI SDK ですでに設定されている Android アプリ。このようなアプリをまだお持ちでない場合は、Android DAI BasicExample を開始点として使用することをおすすめします。BasicExample には、このガイドで参照されているコードベースがあります。
IMA DAI を機能させるには、アプリが
VideoStreamPlayerCallback.onUserTextReceived()
を使用して ID3 イベントを送信することが重要です。フルサービス DAI コード スニペットの例をご覧ください。
Pod Serving 変数を設定する
Pod Serving に必要な変更はすべて SampleAdsWrapper.java で行います。まず、定数変数を更新します。
追加する広告連続配信ストリーム リクエスト定数は次のとおりです。
STREAM_URL
: ライブ配信にのみ使用 - Pod Serving を使用するマニフェスト マニピュレータまたはサードパーティ パートナーから提供される動画ストリーミング URL。リクエストを行う前に、IMA DAI SDK から提供されたストリーム ID を挿入する必要があります。この場合、ストリーム URL にはプレースホルダ"[[STREAMID]]"
が含まれており、リクエストの前にストリーム ID に置き換えられます。NETWORK_CODE
: アド マネージャー 360 アカウントのネットワーク コード。CUSTOM_ASSET_KEY
: ライブ配信にのみ使用 - アド マネージャー 360 で Pod サービング イベントを識別するカスタム アセットキー。これは、マニフェスト マニピュレータまたはサードパーティの Pod Serving パートナーによって作成できます。API_KEY
: ライブ配信にのみ使用 - IMA DAI SDK からストリーム ID を取得するために必要となるオプションの API キー。
Android DAI BasicExample は、さまざまな種類のストリームを再生するように設計されていますが、Pod Serving の場合は、単一のストリームのみを再生するように設定されています。サンプルの変数セクションを次のように変更します。
ライブまたは VOD Pod ストリーム リクエストを作成して Pod Serving を有効にする
ライブ配信 Pod サービング
さまざまなストリームタイプのビルドを切り替えるために使用されていたメソッド buildStreamRequest()
を削除しました。次に、requestAndPlayAds()
を変更して ImaSdkFactory.createPodStreamRequest()
を呼び出し、ライブ Pod サービング広告リクエストを作成します。
VOD ストリームの Pod Serving
さまざまなストリームタイプのビルドを切り替えるために使用されていたメソッド buildStreamRequest()
を削除しました。次に、requestAndPlayAds()
を変更して ImaSdkFactory.createPodVodStreamRequest()
を呼び出し、VOD Pod Serving 広告リクエストを作成します。
ストリーム リクエスト インスタンスを作成したら、AdsLoader.requestStream()
を使用してストリームをリクエストします。
ストリーム URL を編集して設定する
ライブ配信 Pod サービング
StreamManager.getStreamId()
メソッドを呼び出してストリーム ID を取得します。これは、"[[STREAMID]]"
に置き換えて STEAM_URL
に挿入する必要があります。この変更を行った後、videoPlayer.setStreamUrl()
メソッドを使用して新しいストリーム URL を設定し、videoPlayer.play()
メソッドを呼び出してストリームの再生を開始します。
VOD ストリームの Pod Serving
StreamManager.getStreamId()
メソッドを呼び出してストリーム ID を取得します。- 動画技術パートナー(VTP)からストリーミング URL をリクエストします。
- VTP から URL を受け取ったら、URL を指定して
StreamManager.loadThirdPartyStream()
メソッドを呼び出し、VTP から返された字幕とともにストリームを読み込みます。
VOD Pod サービング リクエストの場合、IMA はストリームが読み込まれると VideoStreamPlayer.loadUrl()
コールバックを呼び出します。ストリーミング再生を開始するには、videoPlayer.setStreamUrl()
呼び出しと videoPlayer.play()
呼び出しを VideoStreamPlayer.loadUrl()
コールバックに追加します。
IMA DAI アセットをクリーンアップする
IMA DAI SDK を使用して Pod Serving ストリームで広告のリクエストと表示を正常に完了したら、Pod Serving セッションの完了後にリソースをクリーンアップすることをおすすめします。StreamManager.destroy()
を呼び出して、ストリームの再生を停止し、すべての広告トラッキングを停止し、読み込まれたすべてのストリーム アセットを解放します。
Android SDK の使用例については、GitHub のサンプルをご覧ください。