4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

VAST4.2でつくる動画広告の世界 その2(VASTタグ)

Last updated at Posted at 2023-02-27

前回の第1回目で VAST が動作する仕組みを大まかに説明しました。

今回から VAST4.2 の各要素を見ていきます。

TL;DR

  • ラップ(3pas入稿)するか否かで、<Wrapper><InLine>を使い分ける
    • ラップする場合でも各種計測タグなどは利用できる
  • VAST4では <AdServingId> という広告リクエストごとに一意のIDが必須になる
  • VAST4では <UniversalAdID> というシステム間で一意のクリエイティブを示すIDが必須になる

VAST xmlの構成要素

アウトラインの説明を優先するため、AdPodやメザニンファイル等の指定方法は次回以降、個別に説明します。
また、要素の数が多すぎるので、必須のものをメインにして説明します。

どの要素を使って広告を組み立てるかはPlayerに委ねられるのため、基本的にはID等を除き

<AdTitle>○○商品の施策 9月</AdTitle>

のような内部情報ではなく、

<AdTitle>商品名</AdTitle>

のようなユーザーが見ても違和感ないような情報を使ったほうがいいと思います。

VASTタグ

<?xml version="1.0" encoding="UTF-8"?>
<VAST version='4.2' xmlns:xs='<http://www.w3.org/2001/XMLSchema>' xmlns='<http://www.iab.com/VAST>'>
  <Ad id='1'>
    <InLine>
      <!-- InLineタグ -->
    </InLine>
  </Ad>
</VAST>

<VAST> がrootになり、その配下に <Ad><Error> のどちらかを指定します。

Ad内にはさらに <Wrapper> もしくは <InLine> を指定することができます。

  • <Error>
    • noad(返す広告がなし)を表す
  • <Ad>
    • <Wrapper>
      • VASTは自身のVASTから他のVASTを参照することができます(前回参照)。ラップする場合、このタグでVASTのURLを指定する
        • ラップする場合でもImp計測や各種ビーコンの測定はできるため、 <Impression><Creatives> は利用できる
    • <InLine>
      • 実際に配信するクリエイティブ情報を載せる
      • id: 識別子
      • sequence: Ad Pod。重要な機能なのでまた説明します。
      • adType: video or audio or hybrid。省略した場合はvideo。

InLine / Wrapper タグ内

<InLine>
  <AdSystem version="1.0">AD_SYSTEM</AdSystem>
  <Error><![CDATA[https://example.com/error]]></Error>
  <Impression id="Impression-ID"><![CDATA[https://example.com/track/impression]]></Impression>
  <Pricing model="cpm" currency="USD">
    <![CDATA[ 25.00 ]]>
  </Pricing>
  <AdServingId>AD_SYSTEM-00000000-0000-0000-0000-000000000000</AdServingId>
  <AdTitle>AD_TITLE</AdTitle>
  <Creatives>
    <!-- Creativesタグ -->
  </Creatives>
</InLine>
<Wrapper>
  <AdSystem version="1.0">AD_SYSTEM</AdSystem>
  <Error><![CDATA[http://example.com/error]]></Error>
  <Impression id="Impression-ID"><![CDATA[http://example.com/track/impression]]></Impression>
  <Creatives>
	<!-- Creativesタグ -->
  </Creatives>
  <VASTAdTagURI>
    <![CDATA[http://example.com/vast_inline.xml]]>
  </VASTAdTagURI>
</Wrapper>
  • <AdSystem>
    • 配信システム名
    • 必須
    • InLine or Wrapperで利用化
  • <AdTitle>
    • 広告タイトル
      • メディアによってはこの名前が表示される場合がある
      • 余白が足りない場合は <Description> (オプション)を使う
    • 必須
    • InLineでのみ利用化
  • <AdServingId>
    • 広告ライフサイクルのID
      • 1つのImpから各種トラッキングやクリック等を、複数システムをまたいで一意に識別できるID
      • <InLine>で一意である必要があるため、AdPod等で複数<InLine>がある場合は別々のAdServingIdを付与する必要がある
      • GUIDもしくはAdSystem+GUIDなどの、十分にユニーク、もしくはタイムスタンプと組み合わせてユニークな値が推奨
      • [ADSERVINGID] マクロで展開可能
    • InLineのみ利用化で必須
  • <Impression>
    • Impビーコン
      • Imp通知用URIを指定
    • InLine or Wrapperで利用化
  • <Category>
    • 広告のカテゴリ
      • カテゴリIDまたはラベルを指定
      • authority でカテゴリリストを渡す必要あり
    • パブリッシャーが要求しない限りはオプション
    • InLineでのみ利用化
  • <Pricing>
    • RTBの価格を指定できるらしい
      • OpenRTB等の一般的なRTBの仕組みでは既に価格設定のプロトコルがあるため、何に使うかはよく分からない
    • オプション
    • InLine or Wrapperで利用化
  • <ViewableImpression>
    • PlayerがViewableと判断した段階で発火するビーコン
      • <Viewable>
        • 視聴可能を満たした場合に発火
      • <NotViewable>
        • 視聴可能に満たなかった場合に発火
      • <ViewUndetermined>
        • 視聴可能か判断できなかった場合に発火
    • オプション
    • InLine or Wrapperで利用化

Creativesタグ内

<Creatives>
  <Creative id="1" sequence="1" adId="1">
	<UniversalAdId idRegistry="example.com">11111111<UniversalAdId>
    <!-- Linearタグ -->
    <!-- Companionタグ -->
  </Creative>
</Creatives>
  • <Creatives>
    • クリエイティブそのものを示す、 <Creative> をまとめる要素
    • InLineの場合は1つ必須、Wrapperの場合は 0 or 1
    • <Creative>
      • 複数存在できる
      • id
        • クリエイティブを提供する 広告システム を識別するためのID
      • adId
        • クリエイティブ を識別するための広告システムで一意のID。後述のUniversalAdIdが導入され、システムをまたいだ一意のIDが特定できるようになったので、今後不要かもしれない
      • sequence
        • 広告を再生する順番
        • Ad sequenceとCreative sequenceが非常に紛らわしいが、この Creative sequence はPodではなく、単純に1クリエイティブとして複数コンテンツを再生する
      • <UniversalAdID>
        • システム間で一意のクリエイティブ識別子
          • 一意のクリエイティブを示す文字列
        • 必須
        • idRegistry
          • カタログ化されているサイトのURL
          • idRegistryのサービスドメインとIDでシステム間で一意になる理解
        • e.g.
          • <UniversalAdId idRegistry="ad-id.org">CNPA0484000H<UniversalAdId>
          • <UniversalAdId idRegistry="clearcast.co.uk">AAA/BBBB123/030<UniversalAdId>

あとがき

今回はVAST全体の構成と、Creativesタグまでを説明しました。
Creative内には 前々回 話した Linear、NonLinear(廃止)、Companionと複数のパターンがあるため、次回に分割して説明します。

Supershipではプロダクト開発やサービス開発に関わる人を絶賛募集しております。
Supership 採用サイト

4
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
4
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?