Clappr DASH
Tuesday, March 31, 2020 5:24 AMClappr is an extensible plugin for creating video players that can be used as backgrounds or simple video containers. It is supported by many browsers and basically all mobile devices, even in some video game consoles.
Supported versions of Clappr
Teleport.js is compatible with Clappr versions later than 0.2.70.
Before start
Before teleport.js in initialized the first time, you need to validate the domain and get the API key in Teleport client area.
Initialization
Loading javascript modules when integrating Clappr with teleport.js should occur strictly in the following order:
- Clappr.
- Teleport Core bundle with Clappr DASH plugin.
Example:
<script src="https://cdn.jsdelivr.net/npm/clappr@latest/dist/clappr.min.js"></script>
<script src="https://cdn.teleport.media/stable/teleport.clappr-dash.bundle.js"></script>
To load chunks from P2P you need:
- Initialize Teleport with
clappr-dash
loader. - After initializing the Teleporter script, get the loader API, and then
TeleportClapprDashPlayback
plugin. It is supports P2P connections. - Create an instance of Clappr with
TeleportClapprDashPlayback
plugin.
Example
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>TELEPORT CLAPPR DASH EXAMPLE</title>
</head>
<body>
<div id="video"></div>
<script src="https://cdn.jsdelivr.net/npm/clappr@latest/dist/clappr.min.js"></script>
<script src="https://cdn.teleport.media/stable/teleport.clappr-dash.bundle.js"></script>
<script>
var tlprt;
var STREAM_URL = "<manifest URL>";
var API_KEY = "<YOUR APIKEY>";
function initApp() {
teleport.initialize({
apiKey: API_KEY,
loader: { // Loader configuration
type: "clappr-dash" // Plugin ID
}
})
.then(function (instance) {
tlprt = instance;
// Get plugin for Clappr from loader
var TeleportClapprDashPlayback = instance.getLoader().getPlugin();
// Create player
var player = new Clappr.Player({
source: STREAM_URL,
autoPlay: true,
plugins: [
TeleportClapprDashPlayback
],
parentId: "#video"
});
})
.then(function () {
console.log("The video has now been loaded!");
// Subscribe to on close window event for free used resources
window.addEventListener("unload", function () {
if (tlprt) {
tlprt.dispose();
tlprt = null;
}
});
})
.catch(onError);
}
function onError(error) {
// Log the error
console.error("Error code", error.code, "object", error);
}
document.addEventListener("DOMContentLoaded", initApp);
</script>
</body>
</html>