@api.video/hlsjs-player-analytics
v1.0.5
Published
api.video player analytics plugin for hls.js based players
Downloads
185
Readme
api.video is the video infrastructure for product builders. Lightning fast video APIs for integrating, scaling, and managing on-demand & low latency live streaming features in your app.
Table of contents
Project description
hls.js module to call the api.video analytics collector.
Getting started
Setup
Include https://unpkg.com/@api.video/hlsjs-player-analytics
in your web page.
<script src="https://unpkg.com/@api.video/hlsjs-player-analytics"></script>
Code sample
Include the module in your HTML file like so:
<html>
<head>
<script src="https://cdn.jsdelivr.net/npm/hls.js@latest"></script>
<script src="https://unpkg.com/@api.video/hlsjs-player-analytics"></script>
</head>
<body>
<video id="video" controls width=640 height=480></video>
<script>
var video = document.getElementById('video');
var videoSrc = 'https://cdn.api.video/vod/vi5oDagRVJBSKHxSiPux5rYD/hls/manifest.m3u8';
if (Hls.isSupported()) {
var hls = new Hls();
new HlsJsApiVideoAnalytics(hls);
hls.loadSource(videoSrc);
hls.attachMedia(video);
}
</script>
</body>
</html>
Documentation
Module instanciation
Then, before having instanciated Hls
, instanciate a HlsJsApiVideoAnalytics
object.
The HlsJsApiVideoAnalytics
constructor take the following parameters:
| Parameter name | Mandatory | Type | Description |
| -------------: | --------- | ------------------------------------------- | ------------------- |
| hls | yes | Hls
instance | the instance of Hls |
| options | no | HlsJsApiVideoAnalyticsOptions
(see below) | optional options |
Available options (HlsJsApiVideoAnalyticsOptions
):
| Option name | Mandatory | Type | Description |
| -----------: | --------- | ------------------------------------- | ------------------------------------------------------------------------------------------------------------ |
| userMetadata | no | { [name: string]: string }[]
| object containing metadata (see Full example below) |
| sequence | no | {start: number; end?: number;}
| if only a sequence of the video is going to be played |
Instanciation example
var hls = new Hls();
new HlsJsApiVideoAnalytics(hls, {
sequence: {
start: 10,
end: 50
},
userMetadata: {
gender: "male"
}
});