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