Ad Verification with Open Measurement SDK

→ See all player demos
→ See all demos

Ad viewability and verification measurement using the Open Measurement SDK

This demo showcases how to enable ad event reporting using the Open Measurement SDK for viewability measurement and tracking.

OM SDK Tracker Configuration
Verification Resource
Event Log

Getting Started Guide

1. Acquire the OM SDK files from the IAB Tech Lab Tools Portal

2. Include the following scripts in your page

  • OM SDK Scripts: Service Script and JS Session Client
  • Bitmovin Player Scripts including the Bitmovin Advertising module (BAM) and the Advertising OM SDK module
<!-- Open Measurement SDK Scripts -->
<script type="text/javascript" src="./omsdk/Service/omweb-v1.js"></script>
<script type="text/javascript" src="./omsdk/Session-Client/omid-session-client-v1.js"></script>

<!-- Bitmovin Modular Player Scripts -->
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-core.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-engine-bitmovin.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-xml.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-dash.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-mserenderer.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-container-mp4.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-abr.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-advertising-core.js"></script>

<!-- Bitmovin Advertising Module -->
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-advertising-core.js"></script>
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-advertising-bitmovin.js"></script>

<!-- Bitmovin OM SDK Module -->
<script type="text/javascript" src="https://cdn.bitmovin.com/player/web/8/modules/bitmovinplayer-advertising-omsdk.js"></script>

3. Set up the player instance for ad verification using OM SDK

  1. Add player modules to player core
  2. Create a player configuration including a OM SDK Tracker configuration
  3. Instantiate the player with above configuration, load a source & play

Note: The configured validationScriptUrl , among other things, defines which ad tracking events should subscribed to and the location of the verification server to report to.

// Add modules for ordinary playback, e.g. here specifically for DASH streams (step a)
bitmovin.player.core.Player.addModule(bitmovin.player['engine-bitmovin'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['mserenderer'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['xml'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['dash'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['abr'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['container-mp4'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['polyfill'].default);

// Add Bitmovin Advertising and OM SDK player modules
bitmovin.player.core.Player.addModule(bitmovin.player['advertising-core'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['advertising-bitmovin'].default);
bitmovin.player.core.Player.addModule(bitmovin.player['advertising-omsdk'].default);

// Create player config & include a OM SDK tracker config (step b)
var conf = {
  key: '<YOUR PLAYER KEY>',
  advertising: {
    adBreaks: [ /* ... */ ],
    trackers: {
      omSdk: {
        partnerName: 'awesome-company',
        partnerVersion: '1.3.25',
        verificationResources: [{
          validationScriptUrl: 'https://somewhere.com/validation-script.js',
        }]
      },
    }
  },
};

// Create player instance & load source (step c)
var playerContainer = document.getElementById('player-container');
var player = new bitmovin.player.core.Player(playerContainer, conf);

player.load({
  dash: 'https://bitmovin-a.akamaihd.net/content/MI201109210084_1/mpds/f08e80da-bf1d-4e3d-8899-f0f6155f6efa.mpd',
});
Create an account to get started!Sign up for freeNo credit card required.