This is an end-to-end guide to Server Side Ad Insertion (SSAI). For information on integrating SSAI with the Ooyala Live stream, please see here. For information on using SSAI for VOD assets, please see here.
With SSAI, an ad is inserted into the video stream so it becomes a single piece of content. SSAI is specific to advertising on live content and provides monetization support that lets providers sew ads directly into the live video stream, creating one piece of content.
This ad insertion model provides flexibility and minimizes latency in fast-changing live environments, reducing the chances for errors and providing a more seamless ad experience for audiences.
Supported Environments for SSAI
See Supported Browsers and Operating Systems for Player V4 for information about the currently supported versions of the environments listed below.
App Environments Supporting SSAI
Supported formats for SSAI
Ad Servers Supported
We currently support the following features with SSAI:
See the SSAI User Guide for VOD Assets for more information.
We provide the option to insert the ad segments through a button on the UI or through API calls.
The following example shows the details of the API call that needs to be made to insert the ad markers in the stream, which determines where the ad segments are being inserted.
Duration should be no less than 1000.
60000 is equal to 60 seconds.
The delay is in milliseconds.
We currently do not support the following with SSAI Live or VOD:
For VOD SSAI, ads are downloaded from the Ad server and transcoded based on a predefined profile that has 20 different bitrates and resolution combination. All standard Ooyala recommended bitrates are part of this.
During ad insertion, the Ads Proxy service reviews the output HLS bitrate and resolution list and picks the most appropriate bitrates of the ad. This allows us to transcode the ad only once for all the different processing profile per provider.
For Live SSAI, ads are downloaded and transcoded as per each Live channel profile.
As per the IAB standard, ad impression should be done from the client side, i.e. the player. The player plugin for SSAI will support the following features:
Plugin Name: Ooyala_SSAI.js ; Full path:
Details: The Ooyala SSAI Plugin is not included by default it must be added inline (Advanced Embed) or as a URL parameter of the Standard Embed (SSAI URL parameter - https://help-ooyala.brightcove.com/video-platform/concepts/pbv4_plugins_embed.html)
The libraries that need to be included in the applications are the OoyalaSDK.framework and OoyalaSSAISDK.framework.
You can download the Ooyala Mobile SDK for iOS from here.
The libraries that need to be included in the applications are core.jar, OoyalaSsai.jar, and SkinSDK.
You can download the Ooyala Mobile SDK for Android from here.
SSAI for VOD and Live will work on any player that can playback HLS. This means if the customer is using a Non-Ooyala Player (a player different than Ooyala Player), we can still support SSAI. To perform ad impression using a Non-Ooyala player, we support server side ad impression.
However, for VOD SSAI to enable server side ad impression, the customer must deploy the following script, which will send play head information and in return the Ads Proxy service will perform the impression calls.
There is no additional metrics available in IQ related to SSAI. All ad impression should be reviewed in the Ad server dashboard directly.
However, video metrics will be reported as normal (same as if CSAI ads were inserted).