VAST Wrapper Ads

Product
Video Cloud
Applies to Roles
Ad Operations
Version
Brightcove 5
Modules
Advertising API
Edition
Pro, Enterprise

This topic describes how to use VAST ad wrappers, a feature of the VAST ad standard, with Video Cloud players.

The VAST standard supports the use of wrappers. A VAST wrapper is a VAST response that does not contain a VAST inline ad but instead contains information about a redirect to a third party ad server. This allows different parties to serve ad inventory from a secondary ad server. A VAST wrapper redirect can also point to another VAST wrapper, creating a chain of VAST wrappers that finally point to a VAST inline ad.

Each VAST wrapper ad that is loaded contains tracking information that should be reported when a VAST ad is reached. This is so all parties involved in serving the final ad are notified.

Implementations of the VAST standard can vary between ad serving technologies. Video Cloud adheres to the IAB's VAST 2.0 specification and we do not yet support all ad serving scenarios with VAST ad formats. Please consult the documentation carefully before embarking on a VAST implementation to make sure your scenario is supported. For more information about VAST ad formats and VAST XML, see VAST Ad Formats and Format Codes. If you have any requests for additional VAST support, please post on our Advertising forum.

VAST wrapper XML elements

The VAST wrapper can include the following XML elements:

Element name Description Children
VideoAdServingTemplate The outer container element. Ad
Ad A required top-level element with an id attribute. Wrapper
Wrapper A container for the wrapper sub-elements. AdSystem, VASTAdTagURL, Impression,
AdSystem A string identifying the source ad server.  
VASTAdTagURL Contains a URL element with the location of a secondary ad server. URL
Impression Contains the URL that is called when the ad begins displaying and result in the publisher being paid. Read more. URL
TrackingEvents Contains one or more Tracking elements. Read more. Tracking
Tracking Specifies the type of event (start, midpoint, or complete) and the URL to send the event to. URL
URL The specific URL for the VASTAdTagURL, Impression, or Tracking event. Put the text of the URL inside a <![CDATA[]]> tag to avoid problems with special characters in the URL.  

Example of a VAST wrapper

Here is an example that shows what the XML of a VAST wrapper might look like:

<VideoAdServingTemplate 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:noNamespaceSchemaLocation="vast.xsd">
    <Ad id="videoAd_wrapper">
        <Wrapper>
            <AdSystem>AdServer</AdSystem>
            <VASTAdTagURL>
                <URL <![CDATA[http://www.secondaryadserver.com/ad/tag/parameters?time=1234567]]> </URL>
            </VASTAdTagURL>
            <Impression>
 		<URL id="myImpression">
                  <![CDATA[http://www.primarysite.com/tracker?imp]]>
                </URL>
           </Impression>
	   <TrackingEvents>
	        <Tracking event="start">
		    <URL id="adSimulator0">
                      <![CDATA[http://www.secondaryadserver.com/ad/start]]>
                    </URL>
		</Tracking>
		<Tracking event="midpoint">
		    <URL id="adSimulator0">
                      <![CDATA[http://www.secondaryadserver.com/ad/midpoint]]>
                    </URL>
		</Tracking>
		<Tracking event="complete">
                    <URL id="adSimulator0">
                      <![CDATA[http://www.secondaryadserver.com/ad/complete]]>
                    </URL>
		</Tracking>
	   </TrackingEvents>
        </Wrapper>
    </Ad>
</VideoAdServingTemplate>

How Video Cloud handles VAST wrapper redirects

A VAST wrapper, instead of containing an actual VAST ad, can contain a redirect to another VAST wrapper. Using redirects enables ad requests to be made successively to more than one ad source, which can maximize the chance that there will be an ad available to play. However, if there is no limit on the number of chained redirects, the player experience suffers. Therefore, a Video Cloud player limits the maximum number of redirects to three, counting the initial ad request, and limits the maximum wait time for redirects to five seconds. For example, in the sequence below the redirect counter would look like this:

  1. The first ad request is made. The redirect counter = 1
  2. A VAST Wrapper ad is returned by initial ad request and a redirect call is made. The redirect counter = 2.
  3. A second VAST Wrapper ad is returned as a result of the first redirect and an ad request is made. The redirect counter = 3.
  4. A third VAST Wrapper ad is returned as a result of the second redirect. The redirect counter = 4. Since the value of the redirect counter is greater than 3, the player does not make any further ad request and no ad will be displayed.

A cumulative timeout of five seconds is applied to the multiple VAST wrapper redirects. That is, if after five seconds, no VAST ad response has been reached or the maximum number of three redirects have been made, the Video Cloud player stops redirecting VAST responses and continues with video content playback.

Impression tracking with VAST wrappers

Impression tracking information is collected for each VAST wrapper ad that is loaded; start, midpoint, and complete impression points are reported when the VAST inline ad is reached. The only ad that the player displays is the final VAST inline ad. Any other inline ads that are contained in any of the VAST wrapper ads are ignored.

For example, suppose we have a VAST wrapper ad that contains a redirect to a secondary ad server, which points to a VAST ad. The structure of the VAST wrapper is as follows:

VideoAdServingTemplate
  Ad
    Wrapper
      AdSystem
      VASTAdTagURL
        URL (The location of the secondary ad server.)
      Impression
        URL =”http://primaryadserver.com/impression”
      TrackingEvents
        Tracking event="start"
          URL =”http://primaryadserver.com/start”
        Tracking event="midpoint"
          URL=”http://primaryadserver.com/midpoint”
        Tracking event="complete"  
          URL =”http://primaryadserver.com/complete”

The secondary ad server points to a VAST ad that looks like this:

VideoAdServingTemplate
  Ad
    Wrapper
      AdSystem
      Video
        MediaFiles
          MediaFile
            URL (The location of the video ad)
      Impression
        URL=”http://secondayadserver.com/impression”
      TrackingEvents
        Tracking event="start"
          URL =”http://secondaryadserver.com/start”
        Tracking event="midpoint"
          URL=”http:// secondaryadserver.com/midpoint”
        Tracking event="complete"
          URL =”http:// secondaryadserver.com/complete”

Once the VAST ad is reached, delivered by the secodary ad server, and played in the Video Cloud player, the following impressions and tracking events will be reported:

event URL destinations
impression http://primaryadserver.com/impression
http:// secondaryadserver.com/impression
start http://primaryadserver.com/start
http:// secondaryadserver.com/start
midpoint http://primaryadserver.com/midpoint
http:// secondaryadserver.com/midpoint
complete http://primaryadserver.com/complete
http:// secondaryadserver.com/complete

VAST Wrapper Limitations

  • Video Cloud supports up to 3 wrapper redirects and a maximum wait time of 5 seconds to reach an actual VAST inline ad response to display before timing out the ad request and continuing video content playback.
  • Video Cloud supports only video ad wrapper responses. We do not support VAST wrappers responses with companion banners. 
  • Video Cloud does not support a mixture of inline and wrapper elements within the same ad response. For example, we have seen some ad servers like OpenX return an inline companion and wrapper video ad within the same VAST XML response. This is not supported.
Tags
VAST