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.
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. |
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>
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:
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 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 |