Getting started with THEOads on Web
This guide will get you started with THEOads in your THEOplayer Web SDK: configure the license, update dependencies and set the source description.
Prerequisites
-
You need to have a THEOplayer license which is compatible with THEOads. This can be done through https://portal.theoplayer.com.
-
You need a working THEOads signaling service.
-
Your THEOplayer SDK needs to have the
theoads
feature enabled.As of THEOplayer version 8.2.0, this feature is enabled in the main
theoplayer
package. You can install this package with the following command:npm install theoplayer
Integration
This guide assumes you know how to set up THEOplayer. For more information regarding this check out the THEOplayer getting started.
Google DAI library
Since THEOads integrates with Google DAI Pod Serving, it is required to load the Google DAI script on your page:
<script src="https://imasdk.googleapis.com/js/sdkloader/ima3_dai.js"></script>
Player configuration
To make use of the THEOads integration, first enable the feature in your player configuration:
const player = new THEOplayer.Player(element, {
libraryLocation: 'YOUR-LIBRARY-LOCATION',
license: 'YOUR-LICENSE-WITH-THEOADS',
ads: {
theoads: true,
},
});
Then, specify a source with a THEOads-enabled ad description:
player.source = {
sources: {
src: 'PATH-TO-SIGNALING-SERVER/hls/MANIFEST-URI',
type: 'application/x-mpegurl',
hlsDateRange: true,
},
ads: [
{
integration: 'theoads',
networkCode: 'NETWORK-CODE',
customAssetKey: 'CUSTOM-ASSET-KEY',
backdropDoubleBox: 'PATH-TO-DOUBLE-BOX-BACKDROP-IMAGE', // Optional
backdropLShape: 'PATH-TO-L-SHAPE-BACKDROP-IMAGE', // Optional
},
],
};
- Notice that the
src
is different as usual. For THEOads, a signaling server needs to be set up which acts as a proxy to parse the given manifest and insert the ad interstitials. More information can be found here. - The
hlsDateRange
flag needs to be set totrue
as the ad markers are done usingEXT-X-DATERANGE
tags. - The
ads
object needs to have its integration set totheoads
. Furthermore, thenetworkCode
andcustomAssetKey
needs to be set according to your configured Google account.
Integrating with Open Video UI
THEOads works seamlessly together with Open Video UI for Web.
You can pass your THEOads-enabled source directly to the UI's source
property:
<theoplayer-default-ui></theoplayer-default-ui>
<script>
const ui = document.querySelector('theoplayer-default-ui');
ui.configuration = {
libraryLocation: 'YOUR-LIBRARY-LOCATION',
license: 'YOUR-LICENSE-WITH-THEOADS',
ads: {
theoads: true,
},
};
ui.source = {
sources: {
src: 'PATH-TO-SIGNALING-SERVER/hls/MANIFEST-URI',
type: 'application/x-mpegurl',
hlsDateRange: true,
},
ads: [
{
integration: 'theoads',
networkCode: 'NETWORK-CODE',
customAssetKey: 'CUSTOM-ASSET-KEY',
},
],
};
</script>
It should look something like this: