Video Advertising Standards & Specifications

Posted by Jonas Jaanimagi On September 14, 2021 Technical Standards and Specs

The IAB Australia Standards & Guidelines Council have recently worked to consolidate all of the latest digital advertising standards and specifications – and ensure that they are easy to find and all in one place.

These are the specifications for Video Advertising and take into consideration in-stream ads delivered within web environments, in-app, CTV and OTT.

In terms of definitions, digital video ads are essentially separated out into two different formats – linear and nonlinear. Either format may also include a companion banner ad that displays outside the player.

Linear video ads are the ads, typically in video format, that interrupt streaming video content much like a TV commercial. They can play before (pre-roll), during (mid-roll), or after (post-roll) the streaming content. Linear ad formats can be accompanied by a companion ad, or they can include an interactive component.

Nonlinear video ads are typically served as images that “overlay” the video content. The ad runs concurrently with the streaming content so the user sees the ad while also viewing the content without interruption.

Companion ads are ads that are served along with linear or nonlinear ads in the form of text, static image display ads, rich media, or skins that wrap around the video experience.

To simplify ad portability and the ad development process for linear ads, “ready-to-serve” ad files should be provided along with the mezzanine source file. Ready-to-serve files can be submitted as either three files at specified quality levels to be used for progressive download or as one adaptive streaming file that uses the three specified quality levels. In either case, the files should be encoded at varied bitrate levels to meet quality standards for resolution and bandwidth in high, medium, and low video environments. In addition, one high-quality mezzanine (source) file should be included to allow publishers to encode at the highest quality possible in select video environments.

The full specifications and details for each of the four file submission guidelines are outlined in the Digital Video In-Stream Ad Format Guidelines available at the bottom of this page.

Server-side ad insertion (SSAI):

SSAI is the technology that inserts personalised ads and stitches them seamlessly into a single stream so that a client media player on the user device no longer has to make ad server calls in order to deliver an ad. This is ideal for mid-roll, live streaming, and broadcast scenarios such as a news or sporting event where the latency of loading and unloading a player/ad on the client can cause errors and result in a poor user experience.

Instead, an SSAI provider makes the ad requests on the client’s behalf, which has passed along details about the viewing session such as location, device type, and other data that can be useful in selecting the most relevant ads. After an ad has been selected, the SSAI provider matches the ad quality to that of the content and stitches the ad into the content stream, which is seamlessly delivered to the client player in a single stream.

SSAI Delivery:

To enable error free execution of SSAI delivery, it is recommended that the following standards are used:

  • VAST
  • Macros
  • Mezzanine and Ready-To-Serve Files

VAST: The Video Ad Serving Template is an XML response framework that enables a consistent delivery format for ad across streaming video and audio platforms. Click here for the VAST specs

SIMID – The Secure Interactive Media Interface Definition is an API made available to build an interactive experience with video ad media – and acts as a replacement for VPAID. Click here for the SIMID specs

OMID – The Open Measurement Interface Definition, the API made available to verification code by OMSDK or equivalent service – and acts as a replacement for VPAID.

Encoding Ready-to-Serve Files:
Offering three ready-to-serve video files at varying bitrates for linear ads gives the player
some flexibility for serving the best ad for the viewer’s environment. Deciding on the appropriate bitrate to use depends on the resolution where the video ad plays. In general, the higher the resolution, the higher the bitrate should be for optimal quality playback. When you submit a video ad for linear placement, you should provide three ready-to-serve versions at quality levels for high, medium, and low as indicated in the following table (along with a mezzanine file, as described in the next section). These files can be compiled into an adaptive streaming file or referenced from an interactive file.

The Mezzanine File:
The mezzanine file is a raw source file that publishers can use to encode the ad at the required quality level for the content stream. This original file is too big to serve but contains the quality necessary to encode the appropriate version for a viewer’s environment. The mezzanine file is vital to ad-stitching services commonly used with online television networks. Ad-serving vendors (3rd party) can also use the mezzanine file to transcode all the necessary files to meet varying publisher requirements.

SSAI VAST Macro Guidance:
While the IAB Tech Lab has an official list of 50+ macros, it’s technically not possible to support all macros in any given HTTP request simply due to length limitations. Refer here to the SSAI VAST Macro Guidance from IAB Tech Lab for the full list of recommended macros to use for sharing basic user agent, environment, and content details that are critical to verification partners and buyers.

SSAI Ad Stitching Flow:

  1. Message Sent to Stitching Service: The publisher sends a message for VOD or stream start signal for live stream, to the ad-stitching service.
  2. Request Ads via Ad Call: The ad-stitching service makes a request to the ad server. For VOD, this is typically VMAP or In-line VMAP with VAST to the main ad decision software.  For live stream this is a formatted ADS ad call for the single break.
  3. Send VAST: The ad server responds with a VAST tag with a mezzanine file, and ready-to-serve files. SSAI vendors download the highest bitrate available and get it ready. If the ad stitching service has already received the creative for a previous request and has transcoded the mezzanine file, it moves on to step 5. If the VAST tag response is a Wrapper tag then the ad-stitching service should extract the inner InLine response using the same precedence logic as a client-side media player.
  4. Extract Mezzanine and Transcode: The ad-stitching service pulls the unique creative identifier from the VAST tag. If the creative has never been used in the system, the mezzanine file is extracted and transcoded. In this scenario, the ad is skipped and the next available ad is played instead. VAST error code 407 is sent.
  5. Select Transcoded: If the creative in the VAST tag from step 3 matches the unique creative identifier for an ad that has already been transcoded, the ad-stitching service selects the pre-transcoded file already in the system.

For the latest dedicated technical best practices for CTV advertising simply click here