Implementing Server-Side Ads in the Live Module
The Live module supports Server-Side Ad Insertion (SSAI) so server-side ads can be requested and displayed during a live stream. SSAI provides these main features during live events:
- Since ads are stitched into the live video stream on the server side, they are not affected by ad blockers
- Ads are inserted at cue points sent from your encoder or you can create an instant cue point using the Live module Control Room
- You can configure fill slates to fill any unused ad time
This topic focuses on the settings required and the process to request a server-side ad during a live event.
Configuring the server-side ad settings
Before server-side ads can be delivered, server-side ad settings must be configured. The server-side ad settings define various aspects of ad playback, including ad calls, timing, beacons and other ad configuration options. These settings are configured as part of the Server-Side Ad Settings in the Admin module. In this example, a simple ad tag is defined.
For more information, see Configuring Server-Side Ad Settings.
Configuring the fill slate
Fill slates are videos that will be displayed when there are gaps in a live stream ad break that cannot be filled with a dynamically-served ad. If the requested ad is shorter than the ad break time, the fill slate will be displayed so viewers don't see a blank player. You should configure at least one fill slate before requesting a server-side ad. Ad slates are configured as part of the Live Settings in the Admin module. In this example, a fill slate that displays the Brightcove logo was defined.
For information on creating ad slates, see Managing Live Settings.
Creating a live event that supports server-side ads
In order for a live event to display server-side ads, the Enable Server Side Ad Insertion (SSAI) setting must be selected when the event is created. For complete information on creating a live event using the Live module, see Creating and Managing Live Events using the Live Module.
To create a new live event that supports server-side ads, follow these steps.
- Open the Live module.
- From the Manage Events page click Create Event.
- Enter the event details as needed.
- Click ADVANCED OPTIONS to expand the advanced options.
- Check Enable Server Side Ad Insertion (SSAI). This will enable server side ad insertion.
- Select a Fill Slate. The fill slate will be displayed when there are gaps in a live stream ad break that cannot be filled with a dynamically-served ad.
- When the Ad Audio setting is checked, the audio levels on ads will be normalized based on the adjustment that is set. This can be used as a way to help make sure ads aren’t significantly louder than the content. Brightcove recommends selecting this option.
- Click Create Event.
- The Control Room page will open with details about the live event including the Streaming Endpoint (RTMP URL) and Stream Name. These values will be used by the encoder.
- Configure the encoder and start the live stream.
- By default, the Control Room preview player shows the ad-free stream. Ads will not be shown in the Control Room unless a Live ad configuration is selected. Use the dropdown below to the player to select an ad configuration.
- (Optional) Click the plus button () to select an additional ad configuration. Doing this will add another preview player on the Control Room page.
Click the volume button below the preview player to control which player audio stream is active.
Requesting an ad
To request an ad, click Goto Ad. When clicked, the length of the ad break can be selected.
Click Insert to insert an ad break into the live stream. If the ad doesn't fill the entire ad break time, the fill slate (selected when the event was created) will be displayed. Ads will be seen in the Control Room preview player and in players that are published using the Live module. This example shows 2 ads being displayed in the Control Room.
Publishing the live event
Live streams with server-side ads cannot be published using the Media module, they must be published using the Live Module.
To generate the embed code for a live event with server-side ads, follow these steps:
- Click on an event to open the Control Room page.
- Click Publish and Embed in the left navigation.
- Select an Available Player.
- Select the Ad Configuration to use with the player. The ad configuration will determine which ad(s) appear in the player.
- Click the Player URL to preview the event in a browser or copy the appropriate embed code to use.
Publishing a remote live event
If you want to use a remote live event, follow these steps:
Return to the Live module's Control Room and copy the Playback URL. It should look similar to this:
Append the ad configuration id (045f90cfd55187ff6e60c8) that you want to use to the URL as follows:
Rename the playlist from
playlist_ssaiM.m3u8. The remote asset should look similar to this:
You can use this with any player in your account, along with the embed code. You are ready to stream Live content with server-side ads.
Troubleshooting live stream issues
If you need further help getting your live event to work, you can contact us. To make sure you get the fastest response possible, below is a list of what support will need to solve the problem.
- The specific symptoms the stream is having. For example, does it not play at all or does it stutter or freeze?
- Whether this stream worked correctly in the past
- The entry point URL you are using in your encoder
- The encoding software and hardware are you using
- The URL to the player to which you have published the live event
- The video ID of your live asset in Video Cloud Studio
- The results of a trace-route from your encoder to the publishing point host