Skip to content

Teleport SDK Integration with Dash.js ​

This section provides instructions for integrating the Teleport SDK with the Dash.js media player for DASH content playback.

1. Script Connection ​

Ensure that you have connected the main Teleport SDK script and the loader for Dash.js. You can use separate scripts or a ready-made bundle.

Separate Scripts: ​

html
<!-- Main Teleport SDK script -->
<script src="https://cdn.teleport.media/stable/teleport.js"></script>
<!-- Loader for Dash.js -->
<script src="https://cdn.teleport.media/stable/teleport.dashjs.js"></script>

Bundle (includes SDK, loader, and polyfills): ​

html
<script src="https://cdn.teleport.media/stable/teleport.dashjs.bundle.js"></script>

2. Teleport SDK Initialization

After connecting the scripts, you need to initialize the Teleport SDK, passing your API key and the player instance.

js
// 1. Initialize Dash.js
const video = document.getElementById('video'); // Replace 'video' with the ID of your <video> element
const player = dashjs.MediaPlayer().create();
player.initialize(video, 'YOUR_DASH_MANIFEST_URL', true); // URL of your DASH manifest

// 2. Initialize Teleport SDK
teleport.initialize({
    apiKey: "YOUR_API_KEY", // Your API key from the Teleport cabinet
    loader: {
        type: "dashjs", // Plugin identifier for Dash.js
        params: {
            player: player // Pass the Dash.js instance
        }
    }
})
.then(function (instance) {
    console.log('Teleport SDK successfully initialized for Dash.js!', instance);
    player.play();
})
.catch(function (error) {
    console.error('Teleport SDK initialization error:', error);
});

// Optional: release Teleport resources when closing the page
window.addEventListener("unload", function () {
    if (tlprt) {
        tlprt.dispose();
        tlprt = null;
    }
});

Additional Configuration

For finer tuning of Teleport SDK behavior (e.g., URL cleaning, segment quality detection), refer to the Customization section.