MediaTailor 広告挿入の開始方法 - AWS Elemental MediaTailor

翻訳は機械翻訳により提供されています。提供された翻訳内容と英語版の間で齟齬、不一致または矛盾がある場合、英語版が優先します。

MediaTailor 広告挿入の開始方法

を使用するには AWS Elemental MediaTailor、 MediaTailor 設定にアクセス、表示、編集するための および アクセス AWS アカウント 許可が必要です。これを行う方法については、「セットアップ AWS Elemental MediaTailor」を参照してください。

この入門チュートリアルでは、次のタスクの実行方法を示します。

  • HLS または DASH コンテンツストリームを準備する

  • 広告決定サーバー (ADS) テンプレート URL を設定する

  • 再生エンドポイントを含む MediaTailor 設定を作成する

  • プレイヤーまたはコンテンツ配信ネットワーク (CDN) を使用して に再生リクエストを行う MediaTailor

完了すると、ストリーム内のパーソナライズされた広告コンテンツ MediaTailor に対する再生リクエストを に送信できます。

前提条件

開始する前に、セットアップ AWS Elemental MediaTailor の手順を完了するようにしてください。

ステップ 1: アクセス AWS Elemental MediaTailor

IAM 認証情報を使用して、 の MediaTailor コンソールにサインインしますhttps://console.aws.amazon.com/mediatailor/home

ステップ 2: ストリームを準備する

AWS Elemental MediaTailorと互換性のある HLS または DASH のマニフェストを生成するようにオリジンサーバーを設定します。

HLS ストリームを準備する

HLS マニフェストは以下の要件を満たす必要があります。

  • マニフェストはパブリックインターネットでアクセス可能であることが必要です。

  • マニフェストはライブまたはビデオオンデマンド (VOD) である必要があります。

  • マニフェストに 3 以降の EXT-X-VERSION があること。

  • ライブコンテンツの場合は、マニフェストに ad avail を表すマーカーがあること。VOD コンテンツの場合、これはオプションで、代わりに VMAP timeoffset を使用できます。

    マニフェストファイルには、以下のいずれかでマークされた広告スロットが必要です。

    • #EXT-X-CUE-OUT / #EXT-X-CUE-IN (一般的) 継続時間は以下の例のようになります。

      #EXT-X-CUE-OUT:60.00 #EXT-X-CUE-IN
    • #EXT-X-DATERANGE (一般的ではない) 継続時間は以下の例のようになります。

      #EXT-X-DATERANGE:ID="",START-DATE="",DURATION=30.000,SCTE35-OUT=0xF #EXT-X-DATERANGE:ID="",START-DATE="",DURATION=30.000,SCTE35-OUT=0xF

      #EXT-X-DATERANGE にあるフィールドはすべて必須です。

    マニフェストで広告マーカーを設定する方法は、広告がストリームに挿入されるか、ストリーム内の他のフラグメントに置き換えられるかに影響します。詳細については、「 MediaTailor 広告挿入動作を理解する」を参照してください。

  • HLS マスターマニフェストは、HTTP ライブストリーミングのマスタープレイリストタグに記載されている HLS 仕様に従う必要があります。特に、#EXT-X-STREAM-INF には RESOLUTIONBANDWIDTH、および CODEC の各フィールドを含める必要があります。

ストリームを設定したら、マスターマニフェストのコンテンツオリジン URL プレフィックスを書き留めておきます。このプレフィックスはこのチュートリアルの後半の AWS Elemental MediaTailorで設定を作成するのに必要です。

DASH ストリームを準備する

DASH マニフェストは以下の要件を満たす必要があります。

  • マニフェストはパブリックインターネットでアクセス可能であることが必要です。

  • マニフェストはライブまたはビデオオンデマンド (VOD) である必要があります。

  • マニフェストが、スプライス挿入マーカーまたはタイムシグナルマーカーを使用して、イベントを ad avail としてマークすること。広告マーカーは、平文の XML または base64 エンコードのバイナリで指定できます。スプライス挿入では out-of-network、インジケータを有効にする必要があります。タイムシグナルマーカーの場合、セグメンテーション UPID 内にあるセグメンテーションタイプ ID は、 によって認識されるキューアウト値である必要があります AWS Elemental MediaTailor。Ad avail はイベントの開始時に開始され、イベント継続時間 (指定されている場合)、または次のイベントが開始されるまで続きます。

    以下は、スプライス挿入マーカーを使用して ad avail として指定されたイベントの例です。この ad avail の継続時間はイベントの継続時間です。

    <Period start="PT444806.040S" id="123586" duration="PT15.000S"> <EventStream timescale="90000" schemeIdUri="urn:scte:scte35:2013:xml"> <Event duration="1350000"> <scte35:SpliceInfoSection protocolVersion="0" ptsAdjustment="180832" tier="4095"> <scte35:SpliceInsert spliceEventId="4026531855" spliceEventCancelIndicator="false" outOfNetworkIndicator="true" spliceImmediateFlag="false" uniqueProgramId="1" availNum="1" availsExpected="1"> <scte35:Program><scte35:SpliceTime ptsTime="5672624400"/></scte35:Program> <scte35:BreakDuration autoReturn="true" duration="1350000"/> </scte35:SpliceInsert> </scte35:SpliceInfoSection> </Event> </EventStream> <AdaptationSet mimeType="video/mp4" ... </AdaptationSet> </Period>
  • 広告表示の AdaptationSet および Representation は、コンテンツストリームの期間と同じ設定である必要があります。 AWS Elemental MediaTailor はこれらの設定を使用して、コンテンツストリームに合わせて広告をトランスコードし、コンテンツと広告間でスムーズに切り替わるようにします。

ストリームを設定したら、DASH マニフェストのコンテンツオリジン URL プレフィックスを書き留めておきます。これは AWS Elemental MediaTailor、このチュートリアルの後半にある で設定を作成するために必要です。

ステップ 3: ADS リクエスト URL とクエリパラメータを設定する

ADS が必要とするクエリパラメータを判断するには、ADS から広告タグ URL を生成します。この URL は ADS に対するリクエストのテンプレートとして機能し、以下の値で構成されています。

  • 静的値

  • によって生成された値 AWS Elemental MediaTailor ( sessionまたは avail クエリパラメータで示される)

  • クライアントアプリケーションから取得した、プレイヤーによって生成された値 (player_params. クエリパラメータで表されます)

例 ADS からの広告タグ URL
https://my.ads.com/ad?output=vast&content_id=12345678&playerSession=[session.id]&cust_params=[player_params.cust_params]

上記の中で、

  • outputcontent_id は静的値です。

  • playerSession =[session.id] は、 によって提供される動的な値です AWS Elemental MediaTailor。[session.id] の値はプレイヤーセッションごとに変更されるため、VAST リクエストの URL はセッションごとに異なります。

  • cust_params はプレイヤー提供の動的値です。

プレイヤーからのマスターマニフェストリクエストは、ADS リクエスト URL の player_params. クエリパラメータに対応するキーバリューペアを提供する必要があります。 AWS Elemental MediaTailorへのリクエストでキーと値のペアを設定する方法については、「での動的広告変数の使用 AWS Elemental MediaTailor」を参照してください。

でオリジンサーバー/ADS マッピングを作成するときに MediaTailor、設定された「テンプレート」URL を に入力しますステップ 4: 設定を作成する

テスト

テスト用に ADS からの静的 VAST レスポンスを使用できます。理想的には、VAST レスポンスは、 AWS Elemental MediaTailor がトランスコードできるメザニン品質の MP4 レンディションを返します。ADS からのレスポンスに複数の再生レンディションが含まれている場合、 は最高品質の解像度の MP4 レンディション MediaTailor を選択し、それをトランスコーダーに送信します。

ステップ 4: 設定を作成する

AWS Elemental MediaTailor 設定には、オリジンサーバーと ADS のマッピング情報が含まれます。

設定を作成する (コンソール)
  1. https://console.aws.amazon.com/mediatailor/ で MediaTailor コンソールを開きます。

  2. [設定] ページで、[Create configuration (設定の作成)] を選択します。

  3. ページ下部の [設定] セクションで、[設定名] に設定を説明する一意の名前を入力します。名前は設定の主な識別子です。許容される最大長は 512 文字です。

  4. [Video content source (動画コンテンツソース)] に、このストリームの HLS マスターマニフェストまたは DASH マニフェストの URL プレフィックスからアセット ID を除いたものを入力します。たとえば、マスターマニフェストの URL が http://origin-server.com/a/master.m3u8 の場合は、「http://origin-server.com/a/」と入力します。別の方法として http://origin-server.com のような短いプレフィックスを入力することもできますが、そうする場合は、コンテンツに対するプレイヤーリクエストのアセット ID に /a/ を含める必要があります。最大長は 512 文字です。

    注記

    コンテンツオリジンが HTTPS を使用している場合、その証明書は既知の認証機関からのものであることが必要です。(この目的に自己署名証明書を使用することはできません)。それ以外の場合、 はコンテンツオリジンへの接続に AWS Elemental MediaTailor 失敗し、プレイヤーのリクエストに応じてマニフェストを提供できません。

  5. [Ad decision server] (広告決定サーバー) には、ADS の URL を入力します。これは、「ステップ 3: ADS リクエスト URL とクエリパラメータを設定する」で説明されている変数を含む URL、またはテスト目的で使用している静的 VAST URL です。最大長は 25,000 文字です。

    注記

    ADS が HTTPS を使用している場合、その証明書は既知の認証機関からのものであることが必要です。(この目的に自己署名証明書を使用することはできません)。これは、ADS によって返されるメザニン広告 URL についても同様です。それ以外の場合、 はコンテンツオリジンからマニフェストに広告を取得してステッチ MediaTailor できません。

  6. (DASH の必要に応じてオプション) ロケーション で、マ MediaTailor ニフェストにアクセスするための CDN ルーティングルールが設定されていて、クライアント側のレポートを使用しているか、プレイヤーがスティッキー HTTP リダイレクトをサポートしている場合は、DISABLED を選択します。

    [Location] (ロケーション) 機能の詳細については、「DASH のロケーション機能」を参照してください。

  7. (オプション) オリジンサーバーがシングルピリオド DASH マニフェストを生成する場合は、[DASH mpd manifest origin type] (DASH mpd マニフェストオリジンタイプ)、[SINGLE_PERIOD] の順に選択します。デフォルトでは、 は DASH マニフェストを複数期間のマニフェストとして MediaTailor 扱います。詳細については、「MPEG-DASH ソースの統合」を参照してください。

  8. [Create configuration] (設定を作成) をクリックします。

    AWS Elemental MediaTailor は、設定ページに新しい設定を表示します。

ステップ 5: 設定をテストする

設定を保存したら、ストリーミングプロトコルに該当する形式の URL を使用してストリームをテストします。

  • 例: HLS

    playback-endpoint/v1/master/hashed-account-id/origin-id/master.m3u8
  • 例: DASH

    playback-endpoint/v1/dash/hashed-account-id/origin-id/manifest.mpd

コードの説明は以下のとおりです。

  • playback-endpoint は、設定を作成したときに AWS Elemental MediaTailor によって生成された固有の再生エンドポイントです。

    https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com
  • hashed-account-id は AWS アカウント ID です。

    AKIAIOSFODNN7EXAMPLE
  • origin-id は、設定を作成したときに付けた名前です。

    myOrigin
  • master.m3u8 または manifest.mpd は、テストストリームからのマニフェストの名前とそのファイル拡張子です。これは、ステップ 4: 設定を作成する で設定した動画コンテンツソースにマニフェストを付加するときに、マニフェストが完全に識別されるように定義します。

上記の例の値を使用すると、完全な URL は以下のようになります。

  • 例: HLS

    https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/master/AKIAIOSFODNN7EXAMPLE/myOrigin/master.m3u8
  • 例: DASH

    https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/dash/AKIAIOSFODNN7EXAMPLE/myOrigin/manifest.mpd

以下のいずれかの方法でストリームをテストできます。

  • 前の例に示したように、スタンドアロンプレイヤーに URL を入力します。

  • ユーザー独自のプレイヤー環境でストリームをテストします。

ステップ 6: 再生リクエストを に送信する AWS Elemental MediaTailor

AWS Elemental MediaTailorから渡された設定の再生エンドポイントに再生リクエストを送信するように、ダウンストリームプレーヤーまたは CDN を設定します。ステップ 3: ADS リクエスト URL とクエリパラメータを設定する で ADS リクエスト URL に使用したプレイヤー定義の動的変数は、いずれもプレイヤーからのマニフェストリクエスト内で定義される必要があります。

以下がテンプレートの ADS URL であるとします。

https://my.ads.com/ad?output=vast&content_id=12345678&playerSession=[session.id]&cust_params=[player_params.cust_params]

次に、ADS ではなくオリジンサーバーに先行していない ads.. AWS Elemental MediaTailor passes パラメータをキーと値のペアの前に付けads.て、プレイヤーリクエスト[player_params.cust_params]で を定義します。

プレイヤーリクエスト URL は以下の HLS と DASH 例のバリエーションになります。

https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/master/AKIAIOSFODNN7EXAMPLE/myOrigin/master.m3u8?ads.cust_params=viewerinfo
https://bdaaeb4bd9114c088964e4063f849065.mediatailor.us-east-1.amazonaws.com/v1/dash/AKIAIOSFODNN7EXAMPLE/myOrigin/manifest.mpd?ads.cust_params=viewerinfo

がプレイヤーリクエスト AWS Elemental MediaTailor を受信すると、リクエスト内の情報に基づいてプレイヤー変数が定義されます。結果として得られる ADS リクエスト URL は、このバリエーションになります。

https://my.ads.com/ad?output=vast&content_id=12345678&playerSession=<filled_in_session_id>&cust_params=viewerinfo

ADS に渡すキーバリューペアの設定に関する詳細については、「での動的広告変数の使用 AWS Elemental MediaTailor」を参照してください。

ステップ 7 (オプション): アクティビティをモニタリング AWS Elemental MediaTailor する

Amazon CloudWatch および Amazon CloudWatch Logs を使用して、リクエスト数、エラー数、入力された ad avail 数などの AWS Elemental MediaTailor アクティビティを追跡します。

CloudWatch で を初めて使用する場合は AWS Elemental MediaTailor、 AWS Identity and Access Management (IAM) ロールを作成して、 サービス間の通信を許可します。

AWS Elemental MediaTailor へのアクセスを許可するには CloudWatch (コンソール)
  1. IAM コンソール (https://console.aws.amazon.com/iam/) を開きます。

  2. IAM コンソールのナビゲーションペインで、[Roles] (ロール)、[Create role] (ロールを作成) の順に選択します。

  3. 別の AWS アカウントロールタイプを選択します。

  4. アカウント ID に ID を入力します AWS アカウント 。

  5. [Require external ID (外部 ID を必須にする)] を選択し、「midas」と入力します。このオプションにより、リクエストに正しい sts:ExternalID が含まれている場合にのみサービスがロールを引き受けることができるという条件が、信頼ポリシーに自動的に追加されます。

  6. [次のステップ: アクセス許可] を選択します。

  7. このロールが実行できるアクションを指定するアクセス許可ポリシーを追加します。以下のいずれかのオプションを選択した後、[Next: Review (次へ: 確認)] を選択します。

    • CloudWatchLogsFullAccess Amazon CloudWatch Logs へのフルアクセスを提供するには

    • CloudWatchFullAccess Amazon へのフルアクセスを提供するには CloudWatch

  8. [ロール名] に「MediaTailorLogger」と入力し、[ロールの作成] を選択します。

  9. [ロール] ページで、作成したロールを選択します。

  10. 信頼関係を編集してプリンシパルを更新します。

    1. ロールの [Summary (概要)] ページで、[Trust relationship (信頼関係)] タブを選択します。

    2. [Edit trust relationship (信頼関係の編集)] を選択します。

    3. ポリシードキュメントで、プリンシパルを AWS Elemental MediaTailor サービスに変更します。以下のようになります。

      "Principal": { "Service": "mediatailor.amazonaws.com" },

      ポリシー全体は以下のようになります。

      { "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Principal": { "Service": "mediatailor.amazonaws.com" }, "Action": "sts:AssumeRole", "Condition": { "StringEquals": { "sts:ExternalId": "Midas" } } } ] }
    4. 信頼ポリシーの更新 を選択します。

ステップ 8: クリーンアップする

余分な料金が発生しないように、不要な設定をすべて削除します。

設定を削除するには (コンソール)
  1. AWS Elemental MediaTailor 設定ページで、次のいずれかを実行します。

    • 削除する設定の [設定名] を選択します。

    • [設定名] 列でラジオボタンを選択してから、[Delete (削除)] を選択します。

  2. [設定の削除] 確認ボックスに Delete と入力し、もう一度 [Delete (削除)] を選択します。

    AWS Elemental MediaTailor は設定を削除します。