VMAP ad schedule reference (Web Player)


The Digital Video Multiple Ad Playlist, or VMAP, is an XML template that video content owners and ad networks can use to schedule multiple ad insertions from a single tag. The method of ad scheduling is supported via VAST and Google IMA plugins but is not supported in Freewheel.

The VMAP XML document can be set up to contain ad schedule information in the form of percentage offsets, exact times within a video, and shorthand notation for pre-roll and post-roll slots. All of this can be done in the schedule configuration block, but VMAP provides an easy way to create an entire schedule from an ad network.

šŸ“˜

JWP only accepts VAST 3.0+ ad tags within a VMAP response.



Configuring VMAP

Since the VMAP XML document contains all of the information needed to schedule ads, all you would need to do is set the value for the schedule configuration option to the URL of your VMAP tag.

advertising: {
  client: 'vast',
  schedule: '//yoursite.com/yourvmaptag.xml'
}

All ad configuration options are supported when using VMAP.



VMAP Structure Example

This is what a typical VMAP ad tag looks like with a pre-roll, mid-roll and post-roll.

<vmap:VMAP xmlns:vmap="http://www.iab.net/vmap-1.0" version="1.0">
  <vmap:AdBreak breakType="linear" breakId="mypre" timeOffset="start">
    <vmap:AdSource allowMultipleAds="true" followRedirects="true" id="1">
      <vmap:VASTAdData>
        <VAST version="3.0" xsi:noNamespaceSchemaLocation="vast.xsd">
        ...
        </VAST>
      </vmap:VASTAdData>
    </vmap:AdSource>
    <vmap:TrackingEvents>
      <vmap:Tracking event="breakStart">//MyServer.com/breakstart.gif</vmap:Tracking>
    </vmap:TrackingEvents>
  </vmap:AdBreak>
  <vmap:AdBreak breakType="linear" breakId="myid" timeOffset="00:10:23.125">
    <vmap:AdSource allowMultipleAds="true" followRedirects="true" id="2">
      <vmap:VASTAdData>
        <VAST version="3.0" xsi:noNamespaceSchemaLocation="vast.xsd">
        ...
        </VAST>
      </vmap:VASTAdData>
    </vmap:AdSource>
    <vmap:TrackingEvents>
      <vmap:Tracking event="breakStart">//MyServer.com/breakstart.gif</vmap:Tracking>
    </vmap:TrackingEvents>
  </vmap:AdBreak>
  <vmap:AdBreak breakType="linear" breakId="mypost" timeOffset="end">
    <vmap:AdSource allowMultipleAds="true" followRedirects="true" id="3">
      <vmap:VASTAdData>
        <VAST version="3.0" xsi:noNamespaceSchemaLocation="vast.xsd">
        ...
        </VAST>
      </vmap:VASTAdData>
    </vmap:AdSource>
    <vmap:TrackingEvents>
      <vmap:Tracking event="breakStart">//MyServer.com/breakstart.gif</vmap:Tracking>
    </vmap:TrackingEvents>
  </vmap:AdBreak>
</vmap:VMAP>


Sample VMAP Ad Tag

The following example uses a simple VMAP file to display a pre-roll, a mid-roll at the 50% point of content playback, and a post-roll once the content completes. Rather than inputting the VAST data into the VMAP file, we are able to reference a collection of external tags using the adTagURI field. The one major detail to notice is that the adTagURI section should not use the vmap: prefix. Not adhering to this may result in erratic VMAP behavior between browsers.

The VMAP file itself looks like:

<vmap:VMAP xmlns:vmap="http://www.iab.net/videosuite/vmap" version="1.0">
  <vmap:AdBreak timeOffset="start" breakType="linear" breakId="preroll">
    <vmap:AdSource id="preroll-ad" allowMultipleAds="false" followRedirects="true">
      <AdTagURI templateType="vast3">
        <![CDATA[preroll.xml]]>
      </AdTagURI>
    </vmap:AdSource>
  </vmap:AdBreak>
  <vmap:AdBreak timeOffset="50%" breakType="linear" breakId="midroll">
    <vmap:AdSource id="overlay-1-ad" allowMultipleAds="false" followRedirects="true">
      <AdTagURI templateType="vast3">
        <![CDATA[midroll.xml]]>
      </AdTagURI>
    </vmap:AdSource>
  </vmap:AdBreak>
  <vmap:AdBreak timeOffset="end" breakType="linear" breakId="postroll">
    <vmap:AdSource id="postroll-ad" allowMultipleAds="false" followRedirects="true">
      <AdTagURI templateType="vast3">
        <![CDATA[postroll.xml]]>
      </AdTagURI>
    </vmap:AdSource>
  </vmap:AdBreak>
</vmap:VMAP>


Features Not Yet Supported

ā€¢ repeatAfter attribute