CTV 向け TMP
コネクテッド TV アプリは広告ポッド — ストリーミングコンテンツ中のコマーシャルブレイクを埋める広告のシーケンス — を構成します。ポッド構成は、競合分離、フリークエンシー制限、duration 制約を尊重しながら複数のパッケージを同時にアクティベートすることを意味します。TMP はパッケージアクティベーションとアイデンティティ適格性を扱い、放送局のアドサーバーがポッド組み立てを扱います。今日どう機能するか
放送局は、そのアドサーバー(FreeWheel、Google Ad Manager、SpringServe)を通じて CTV ディールを管理します。各ディールはターゲティングルール、競合分離制約、クリエイティブローテーションロジックで設定されます。ポッド構成はアドサーバーのポッド最適化エンジンによって扱われます。バイヤーエージェントが、どのパッケージをアクティベートするか、特定のポッドにどのクリエイティブバリアントを優先するかについてリアルタイム入力を提供する標準的な方法はありません。4 つのメッセージ
CTV 広告ブレイクは 4 つの TMP メッセージを含みます: context match リクエストとレスポンス(何のコンテンツが再生中か、どのパッケージが一致するか)、次に identity match リクエストとレスポンス(この世帯は適格か)。パブリッシャーは結果をローカルで結合してポッドを構成します。Context Match Request
ポッドブレイクが近づくと、放送局は context match リクエストを送ります。placement_id は広告ブレイク位置(例: pre_roll、mid_roll_1、pod_break_2)を識別します。artifact_refs は番組とエピソードを参照し、バイヤーエージェントがコンテンツレベルのターゲティングに使います。パッケージリストは送られません — プロバイダーはこのプレースメントの同期されたパッケージセットを使います。
- アーティファクトは業界 ID で番組とエピソードを参照する。 バイヤーエージェントは、番組(「The Night Kitchen」は料理ドラマ、食品ブランドに好適合)をその Gracenote ID 経由で、特定のエピソードをその EIDR 経由で、または両方でマッチできる。
- リクエストごとにパッケージリストは送られない。 プロバイダーはメディアバイセットアップからの同期されたパッケージセットを使って、このプレースメントのすべての適格なパッケージを評価する。同じパッケージがすべての世帯について評価される — 世帯によるフィルタリングは identity match で起こる。
- クリエイティブサポートはプロダクトの
trusted_match設定で宣言される。 プロダクトの設定がクリエイティブレスポンスタイプを含むとき、バイヤーエージェントはクリエイティブマニフェストを返し、放送局が直接レンダリングできる。
Context Match Response
各バイヤーエージェントはコンテンツコンテキストを評価し、アクティベートしたいパッケージのオファーで応答します。ルーターはすべてのレスポンスをマージします。ここでは 2 つのバイヤーがアクティベートしました:creative_manifest は通常クリエイティブをインラインで含むのではなく VAST URL を参照します。動画アセットは大きく、マニフェストは外部アセットを指し、放送局のアドサーバーがレンダリング時にそれをフェッチします。
Identity Match Request
別途、放送局は世帯トークンと放送局のseller_agent_url を伴う identity match リクエストを送ります。バイヤーは seller_agent_url からアクティブなパッケージセットを解決します。放送局が(下記のように)package_ids を明示的に送るとき、構成は現在のポッドブレイクと独立でなければなりません(MUST) — all-active(この放送局でのそのバイヤーのすべてのアクティブパッケージ)または fuzzed(バイヤーが黙って落とす合成の存在しない ID でパディングされたランダムサンプル)のいずれか。ポッドブレイク固有のサブセットは禁止されています — それはバイヤーがパッケージセットを比較して identity リクエストを特定の context リクエストと相関させることを許します。
Identity Match Response
各バイヤーエージェントは、世帯トークンを自身のデータ(フリークエンシーキャップ、オーディエンスメンバーシップ、購入履歴)に対して評価し、適格なパッケージの ID と TTL を返します。バイヤーは理由を開示しません — パブリッシャーは世帯が資格を満たすかどうかだけを知る必要があります。serve_window_sec: 90 は広告ブレイクの duration をカバーします — ルーターは再クエリせずにキャッシュされた適格性を使ってすべてのポッドスロットを埋めます。パブリッシャーは現在のポッドに関連するパッケージ ID のみを抽出します。
ポッド構成
放送局は今や 2 セットの結果を持ち、ポッドをローカルで構成します:- コンテキストアクティベーションでフィルター。 context match からのオファーを持つパッケージのみが候補: Sparklean(30s)と Greenleaf(15s)。Vaultline と Driftmoto はアクティベートしなかった。
- アイデンティティ適格性でフィルター。 コンテキストアクティベートされたパッケージのうち、世帯適格性を確認: Sparklean は適格、Greenleaf は適格。両方通過。
- 適格なオファーをランク付け。 アドサーバー自身の優先度とペーシングルールを使って適格なオファーをランク付け。
- 競合分離を適用。 放送局のアドサーバーが競合分離ルールを強制 — 同じ広告主カテゴリーの 2 つのブランドは同じポッドに現れられない。Sparklean(クリーニング)と Greenleaf(食料品)は異なるカテゴリーなので衝突なし。
- ポッドを組み立てる。 利用可能な duration を埋める。典型的なミッドロールポッドは 60 秒かもしれません:
- Slot 1(30s): Sparklean — context match、世帯適格
- Slot 2(15s): Greenleaf — context match、世帯適格
- 残り 15s: 他の需要ソース(プログラマティック、ハウス広告)で埋める
SSAI 統合
サーバーサイド広告挿入(SSAI)は支配的な CTV 配信モデルです。TMP ルーターは SSAI エンジンと並んでサーバーサイドで実行され、アクティベーションフロー全体をクライアントデバイスから外します。- フロー。 SSAI エンジンはコンテンツストリームからポッドブレイクシグナルを受け取り、コンテキストとアイデンティティのマッチについて TMP ルーターにクエリし、オファーを受け取り、配信前に VAST クリエイティブをストリームにステッチする。
- クリエイティブ配信。 Context Match レスポンスの
creative_manifestは、SSAI エンジンが直接フェッチしスプライスできる VAST URL を含む。クライアント側の広告ロードは不要。 - レイテンシー予算。 SSAI エンジンの全体的な広告挿入予算は通常 200-500ms(クライアント側挿入より大きい)。ステッチがストリーム配信前に起こるため。TMP ルーターは依然としてその部分に 50ms 未満をターゲットにする。追加の予算は SSAI エンジンに VAST フェッチとストリームステッチの時間を与える。
- コンパニオン広告。 VAST レスポンスがコンパニオンクリエイティブを含む場合、SSAI エンジンはそれらを CTV アプリのディスプレイ層に渡して動画コンテンツと並べてレンダリングできる。
番組とエピソードのアーティファクト Refs
CTV アーティファクトは通常、業界標準の識別子を使って番組と特定のエピソードの両方を参照します:- 番組レベルのターゲティング。 「The Night Kitchen の任意のエピソードでアクティベート」 — エージェントは Gracenote 番組 ID がそのターゲティングルールにあるかを確認する。
- エピソードレベルのターゲティング。 「シーズンプレミアでのみアクティベート」 — エージェントは特定の EIDR エピソード ID を確認する。
- ジャンルまたはトピックのターゲティング。 エージェントはキャッシュされたアーティファクトデータからジャンルとトピックのメタデータを解決する。これは、特定の番組 ID をターゲティングルールにハードコードせずに広範なカテゴリーターゲティングに機能する。