27 lines
869 B
HTML
27 lines
869 B
HTML
<!DOCTYPE html>
|
|
<html>
|
|
<head>
|
|
<meta charset="utf-8" />
|
|
<title>edge5 video relay</title>
|
|
<script src="https://cdn.jsdelivr.net/npm/mpegts.js/dist/mpegts.js"></script>
|
|
<style>
|
|
body { margin: 0; background: #000; }
|
|
#v { display: block; width: 100vw; height: 100vh; object-fit: contain; }
|
|
</style>
|
|
</head>
|
|
<body>
|
|
<video id="v" controls autoplay muted></video>
|
|
<script>
|
|
const cameraId = new URLSearchParams(location.search).get('camera') ?? 'v1';
|
|
const wsUrl = `${location.protocol === 'https:' ? 'wss' : 'ws'}://${location.host}/ws/${cameraId}`;
|
|
const player = mpegts.createPlayer(
|
|
{ type: 'mpegts', isLive: true, url: wsUrl },
|
|
{ liveBufferLatencyChasing: true, liveBufferLatencyMaxLatency: 1.5 }
|
|
)
|
|
player.attachMediaElement(document.getElementById('v'))
|
|
player.load()
|
|
player.play()
|
|
</script>
|
|
</body>
|
|
</html>
|