ima-ad-player
v0.5.7
Published
Yet another Google IMA video ad player.
Downloads
238
Readme
Google IMA video ad player
Yet another Google IMA HTML5 SDK video ad player.
Getting started
Add the ad player script to your HTML :
<head>
<script type="text/javascript" src="https://cdn.jsdelivr.net/npm/ima-ad-player@latest/dist/ima-ad-player.min.js"></script>
</head>
Then use the ImaAdPlayer
factory to create ad player instance :
ImaAdPlayer({
video: document.querySelector('.a-video-element'),
displayContainer: document.querySelector('.a-display-container-element'),
tag: 'https://myadserver.com/path/to/vast/tag.xml',
}, function(player, error) {
if (error) {
// Ad player creation failed
return console.log(error);
}
player.on('ad_begin', function() {
// Pause content video
});
player.on('ad_end', function() {
// Play or resume content video
});
// Must be done as the result of a user action (if autoplay not permitted)
player.play();
});
The ad player assumes the ad display container and video element are correctly positioned and sized.
Documentation
- ad player configuration options
- ad player events
- ad player api
For a complete example see the HTML development page.
Autoplay
Ad player default behaviour is to assumes that play()
method is called when video is allowed to autostart. (ie: autoplay is permitted or called after user interaction)
For that reason, default internal behaviour is to call setAdWillAutoPlay(true)
and setAdWillPlayMuted(false)
on IMA AdsRequest instance.
It can be changed using adWillAutoPlay
and adWillPlayMuted
configuration options.
Usage as Node.js external dependency
Add it to your project, for example, using NPM command :
$ npm install ima-ad-player
Then import and use ad player factory :
import ImaAdPlayer from 'ima-ad-player'
ImaAdPlayer({
// ...
}, function(player, error) {
// ...
});
About
This library is basically a wrapper on IMA SDK library. The goal is to provide a simple implementation which cover common ad scenarios.
I created this project because I needed to implement the IMA SDK in several other projects without having to duplicate the implementation code.
It is used in the following projects :
License
The MIT License (MIT). Please see License File for more information.