In-stream ads
In-stream ads are video advertisements that play before (pre-roll), during (mid-roll), or after (post-roll) the streaming video content requested by the user. These ads are typically non-skippable but may occasionally offer a skip option. In-stream ads are video advertisements that play before (pre-roll), during (mid-roll), or after (post-roll) the streaming video content requested by the user. These ads are typically non-skippable but may occasionally offer a skip option.
Out-stream ads are video ads displayed outside of in-stream video content. A common example of out-stream ads includes videos shown within articles, social media feeds, or product feeds. These ads often autoplay and may relocate to the bottom corner of the page as the user scrolls. In-stream ads typically drive higher CPMs and more desirable to advertisers due to high user engagement and contextual Relevance.
Overwolf provides APIs that allow you to add in-stream advertising to your video capture app which show a video (with sound) directly within the existing video player in your app. Overwolf in-stream ads are shown as pre-roll ads. Overwolf in-stream ads can be skippable or non-skippable based on the advertiser's preferences, must be initiated by the user (click to play), and have sound on.
Example:
External video players embedded in the App (e,g Youtube Youtube, Twitch.tv, or existing video Ad Containers) will not play Overwolf in-stream ads.
Prerequisites
The Overwolf Ads SDK allows you to easily create in-stream Ads for your App's video content, utilizing a standard Overwolf container element.
In-stream requirements:
- Use
owad
for video Containers. - Video length must be greater than 5 sec.
- Load in transparent iframe (no background).
- The iframe should be the same size as the video.
- The iframe should be responsive to the in-stream video player.
- Minimum player size is 640 x 480.
- Click to play must be enabled.
- Sound must be turned on.
owad
in-stream ad properties
The following table outlines the properties that are used for in-stream ads.
Parameter | Value | Description |
---|---|---|
instream | boolean (M) | Enable in-stream ads. |
streamDurationMs | milliseconds (M) | Video duration. |
streamVideoCount | int (M) | Video number in session. |
video_ad_skipped | event (M) | Monitor if/when the ad was skipped and pass to owad.shutdown . |
complete | event (M) | Monitor if/when the ad completes] and pass to owad.shutdown . |
streamPlayCountPlay | int | The Play number in the user session (number of times the user clicked on the play button of the main content player i.e play/pause/play) when requesting an in-stream ad (i.e 1st Play, 2nd Play, etc.). |
containerSize | height = 1, width = 1 | Target container size. |
volume | number (default = 1) | The app's video player volume. Number between 0 and 1 (e.g. .25). |
containerId | container ID | ID of the ad container. Passed when instream = true . |
impression | event | A Video Ad triggered an Impression. |
*M = Mandatory
Example
Assuming the following element structure:
video-content # Controlling the size of all children, who are overlaid on top of each other
├── video-player # The actual video player
├── instream-container # A transparent, passthrough div to contain the in-stream Ad
// Get the container for the Instream Ad Container
const containerElement = document.getElementById(/* 'instream_container' */);
// Create the instream Ad
const instream = new OwAd(containerElement, {
instream: true,
streamDurationMs: 10000,
streamVideoCount: 1,
volume: 1,
} as InstreamAdProperties)
// Add relevant event listeners.
// Checks to see if video ad was skipped
instream.addEventListener('video_ad_skipped', () => {
shutdown();
});
// Checks to see if the in-stream video is complete.
instream.addEventListener('complete', () => {
shutdown();
});
// The command to shut down the instream Ad once it's been played.
const shutdown = () => instream.shutdown();
Further Reading
- For more information about ads, see the IAB tech lab.
- For more information about ad sizes, see these guidelines.