You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
67 lines
2.2 KiB
HTML
67 lines
2.2 KiB
HTML
3 years ago
|
<!DOCTYPE html>
|
||
|
<html lang="en">
|
||
|
<head>
|
||
|
<meta charset="UTF-8">
|
||
|
<title>DASH Test</title>
|
||
|
<link href="//vjs.zencdn.net/7.8.2/video-js.min.css" rel="stylesheet">
|
||
|
<script src="https://ajax.googleapis.com/ajax/libs/shaka-player/3.0.1/shaka-player.ui.js"></script>
|
||
|
<link rel="stylesheet" href="https://ajax.googleapis.com/ajax/libs/shaka-player/3.0.1/controls.css">
|
||
|
</head>
|
||
|
<body>
|
||
|
<video id="shaka" width="1280" height="720" controls></video>
|
||
|
|
||
|
<script type="application/javascript">
|
||
|
const manifestUri = 'manifest.mpd';
|
||
|
|
||
|
function initApp() {
|
||
|
// Install built-in polyfills to patch browser incompatibilities.
|
||
|
shaka.polyfill.installAll();
|
||
|
|
||
|
// Check to see if the browser supports the basic APIs Shaka needs.
|
||
|
if (shaka.Player.isBrowserSupported()) {
|
||
|
// Everything looks good!
|
||
|
initPlayer();
|
||
|
} else {
|
||
|
// This browser does not have the minimum set of APIs we need.
|
||
|
console.error('Browser not supported!');
|
||
|
}
|
||
|
}
|
||
|
|
||
|
async function initPlayer() {
|
||
|
// Create a Player instance.
|
||
|
const video = document.getElementById('shaka');
|
||
|
const player = new shaka.Player(video);
|
||
|
|
||
|
// Attach player to the window to make it easy to access in the JS console.
|
||
|
window.shakaPlayer = player;
|
||
|
|
||
|
// Listen for error events.
|
||
|
player.addEventListener('error', onErrorEvent);
|
||
|
|
||
|
// Try to load a manifest.
|
||
|
// This is an asynchronous process.
|
||
|
try {
|
||
|
await player.load(manifestUri);
|
||
|
// This runs if the asynchronous load is successful.
|
||
|
console.log('The video has now been loaded!');
|
||
|
} catch (e) {
|
||
|
// onError is executed if the asynchronous load fails.
|
||
|
onError(e);
|
||
|
}
|
||
|
}
|
||
|
|
||
|
function onErrorEvent(event) {
|
||
|
// Extract the shaka.util.Error object from the event.
|
||
|
onError(event.detail);
|
||
|
}
|
||
|
|
||
|
function onError(error) {
|
||
|
// Log the error.
|
||
|
console.error('Error code', error.code, 'object', error);
|
||
|
}
|
||
|
|
||
|
document.addEventListener('DOMContentLoaded', initApp);
|
||
|
|
||
|
</script>
|
||
|
</body>
|
||
|
</html>
|