Skip to main content
Version: 11.12.1

Basic player

This example plays a Big Buck Bunny HLS stream using a minimal player setup.

Open Video UI​

Tip: open your browser's developer console and use the player and THEOplayer variables to interact with this demo.

Open Video UI is provided by <theoplayer-default-ui>, configured through its configuration and source attributes.

Code
demo.html
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Basic player</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0, viewport-fit=cover" />
<link rel="preconnect" href="https://fonts.googleapis.com" />
<link rel="preconnect" href="https://fonts.gstatic.com" crossorigin />
<link href="https://fonts.googleapis.com/css2?family=Noto+Sans:ital,wght@0,400;0,700;1,400;1,700&display=swap" rel="stylesheet" />
<style>
html,
body {
margin: 0;
padding: 0;
}

theoplayer-default-ui:not(:defined) {
display: inline-block;
box-sizing: border-box;
}

theoplayer-default-ui {
width: 100%;
aspect-ratio: 16 / 9;
font-family: 'Noto Sans', sans-serif;
background: #000;
}
</style>
<script src="https://cdn.theoplayer.com/dash/theoplayer/THEOplayer.js"></script>
<script nomodule src="https://unpkg.com/@theoplayer/web-ui@2/polyfills"></script>
<script src="https://unpkg.com/@theoplayer/web-ui@2"></script>
</head>
<body>
<!--
libraryLocation: For demonstration purposes, we use the theoplayer.com CDN.
For production use, we recommend hosting THEOplayer yourself
and changing this (as well as the <script> tags above)
to point to THEOplayer's location on your own website.

licenseUrl: Change this to point to your THEOplayer license file.
Alternatively, replace it with a "license" property whose value is your THEOplayer license itself.
-->
<theoplayer-default-ui
configuration='{"libraryLocation":"https://cdn.theoplayer.com/dash/theoplayer/","licenseUrl":"../../../../theoplayer-license.txt"}'
source='{"sources":{"src":"https://cdn.theoplayer.com/video/big_buck_bunny/big_buck_bunny_metadata.m3u8","type":"application/x-mpegurl"},"poster":"https://cdn.theoplayer.com/video/big_buck_bunny/poster.jpg","metadata":{"title":"Big Buck Bunny"}}'
></theoplayer-default-ui>
<script src="../utils.js"></script>
</body>
</html>

Legacy UI​

The legacy video.js-based UI is created with new THEOplayer.Player().

Code
legacy-ui.html
<!doctype html>
<html lang="en">
<head>
<meta charset="UTF-8" />
<title>Basic player (legacy UI)</title>
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
<style>
html,
body {
margin: 0;
padding: 0;
}

.theoplayer-skin {
width: 100%;
}
</style>
<link rel="stylesheet" href="https://cdn.theoplayer.com/dash/theoplayer/ui.css" />
<script src="https://cdn.theoplayer.com/dash/theoplayer/THEOplayer.js"></script>
</head>
<body>
<div id="player" class="video-js theoplayer-skin vjs-16-9"></div>
<script>
var player = new THEOplayer.Player(document.querySelector('#player'), {
// For demonstration purposes, we use the theoplayer.com CDN.
// For production use, we recommend hosting THEOplayer yourself
// and changing this (as well as the <script> and <link> tags above)
// to point to THEOplayer's location on your own website.
libraryLocation: 'https://cdn.theoplayer.com/dash/theoplayer/',
// Change this property to point to your THEOplayer license file:
licenseUrl: '../../../../theoplayer-license.txt',
// Alternatively, uncomment this, change its value to your THEOplayer license, and remove "licenseUrl":
// license: 'your_theoplayer_license',
});
player.source = {
sources: [
{
src: '//cdn.theoplayer.com/video/big_buck_bunny/big_buck_bunny_metadata.m3u8',
type: 'application/x-mpegurl',
},
],
};
</script>
</body>
</html>