Application collectors
Dash.js Media Player
v2.26.0 • For the Javascript Collector
The Dash.js Media Player Extension is a configuration option for the Javascript Collector by Datazoom that makes the following additional data points automatically collectable in real time.
Integration Instructions
Datazoom provides plugins for data collection through our Beacon Services. Integrate the Dash.js plugin into your web application with the following snippet: Insert this JS line into your HTML Replace the This inserts Datazoom's data collection SDK into the page. To activate data collection for a Dash.js instance, create a Datazoom context which references the player instance with the following snippet: For example: If the data collection must be stopped for any reason, for example after the destruction of the corresponding player instance, invoke the We have made it convenient to manage your dash.js Collector integration by providing NPM (Node Package Manager) support. Please see installation details here. Dash.js API Doc : Getting started with the Web SDK | Dash.js DocumentationPlugin Integration
<script src='https://platform.datazoom.io/beacon/v1/config?configuration_id=CONFIG_ID'></script>
CONFIG_ID value with the collector configuration ID.Activate Data Collection for a Dash.js
datazoom_context = datazoom.createContext(dashjs_player);
<!DOCTYPE html>
<html lang="en">
<head>
<!-- THE DASHJS CDN -->
<script src="https://reference.dashif.org/dash.js/latest/dist/dash.all.min.js"></script>
<!-- THE DATAZOOM BEACON SCRIPT -->
<script src='https://platform.datazoom.io/beacon/v1/config?configuration_id=CONFIG_ID'></script>
</head>
<body>
<div>
<video id="video" controls style="width:50%;height:50%"></video>
</div>
<script>
var dashjs_player;
var datazoom_context;
var url = "https://dash.akamaized.net/akamai/bbb_30fps/bbb_30fps.mpd";
// Create a MediaPlayer and initialize it.
dashjs_player = dashjs.MediaPlayer().create();
dashjs_player.initialize(document.getElementById("video"), url);
// Activates data collection
datazoom_context = datazoom.createContext(dashjs_player);
</script>
</body>
</html>
Stop Data Collection
destroy() method of the Datazoom context object as in the following example:if (dashjs_player) {
dashjs_player.destroy();
dashjs_player = null;
}
if (datazoom_context) {
datazoom_context.destroy();
datazoom_context = null;
}
NPM (Node Package Manager)
References:
CMCD Support
Datazoom provides two discrete settings that control CMCD data collection, one for a specific player event, “Media Object Request”, and one for the corresponding CDN log response.
Player Collector configuration options
Use this option to enable your configured CDN to collect and return CMCD data, contained in the CMCD node of the log line JSON
Off - no CMCD keys are passed
Lite - only the CMCD keys Session ID (sid) and Request ID (rid) are passed to the CDN via query parameter or request header with every “Media Object Request”.
Full - the full set of keys specified by the CMCD standard are passed to the CDN via query parameter or request header with every “Media Object Request”
Bitmovin and JW Player support only the “Lite” setting above
Data Pipe configuration options
Select the CMCD data points you wish to be included in content requests.
Media Object Request - The video player will emit an event called “media_object_request” that will contain the selected CMCD keys below
CMCD keys - Select the CMCD keys you wish to have included with each Media Object Request
Ad Frameworks Extensions
If your Javascript application has a media player with an ad framework, Datazoom’s Javascript Collector with a Dash.js Media Player can be extended with the following ad framework extensions.
Supported Features
Supported Data Points
Events
Discrete occurrences driven by user interactions or system actions
-
Audio Track Changed
-
Buffer End
-
Buffer Start
-
Cast End
-
Cast Start
-
Cast Transfer
-
Error
-
Exit Fullscreen
-
Fullscreen
-
Heartbeat
-
Media Loaded
-
Media Object Request
-
Media Request
-
Milestone
-
Mute
-
Pause
-
Playback Complete
-
Playback Start
-
Player Ready
-
Playing
-
Qualified View
-
Rendition Change
-
Resize
-
Resume
-
Seek End
-
Seek Start
-
Stall End
-
Stall Start
-
Stop
-
Subtitle Change
-
Unmute
- Volume Change
Metadata
Attributes
Player
CMCD
-
Buffer Length (CMCD)
-
Buffer Starvation (CMCD)
-
Content ID (CMCD)
-
Deadline (CMCD)
-
Encoded Bitrate (CMCD)
-
Measured throughput (CMCD)
-
Next Object Request (CMCD)
-
Object Duration (CMCD)
-
Object Type (CMCD)
-
Playback Rate (CMCD)
-
Request ID (CMCD)
-
Requested Maximum Throughput (CMCD)
-
Session ID (CMCD)
-
Startup (CMCD)
-
Stream Type (CMCD)
-
Streaming Format (CMCD)
-
Top Bitrate (CMCD)
- Version (CMCD)
User
Fluxdata
Metrics measuring changing parameters over time
-
Bandwidth
-
Buffer Duration
-
Buffer Duration - Content
-
Buffer Length
-
Content Session Start Timestamp
-
Current Audio Track
-
Current Subtitles
-
Number of Content Plays
-
Number of Content Requests
-
Number of Errors
-
Number of Errors - Content
-
Pause Duration
-
Pause Duration - Content
-
Playback Duration
-
Playback Duration - Content
-
Playback Rate
-
Player State
-
Player Viewable
-
Player Viewable Percent
-
Playhead Position
-
Playhead Position - Program Date Time
-
Rendition Audio Bitrate
-
Rendition Height
-
Rendition Name
-
Rendition Video Bitrate
-
Rendition Width
-
Stall Count
-
Stall Count - Content
-
Stall Duration
-
Stall Duration - Content
-
Time Since Content Request
-
Time Since Content Started
-
Time Since Last Buffer Start
-
Time Since Last Buffer Start - Content
-
Time Since Last Heartbeat
-
Time Since Last Milestone - Content
-
Time Since Last Pause
-
Time Since Last Rendition Change
-
Time Since Last Seek Start
-
Time Since Last Stall Start
-
Time Since Last Stall Start - Content
- Volume

