Fix errors on Firefox

This commit is contained in:
Gabe Kangas 2020-06-18 20:46:00 -07:00
parent 88b2301321
commit 886485255a
3 changed files with 13 additions and 8 deletions

View File

@ -12,6 +12,7 @@ async function setupApp() {
messages: [],
description: "",
title: "",
isOnline: false,
},
watch: {
messages: {

View File

@ -9,11 +9,11 @@ const player = videojs('video', null, function () {
getStatus();
setInterval(getStatus, 5000);
setupPlayerEventHandlers();
})
player.ready(function () {
console.log('Player ready.')
player.reset();
player.src({ type: 'application/x-mpegURL', src: streamURL });
});
@ -44,9 +44,9 @@ function setupPlayerEventHandlers() {
// console.log("stalled");
// })
//
// player.on('playing', function (e) {
// // console.log("playing");
// })
player.on('playing', function (e) {
clearTimeout(playerRestartTimer);
})
//
// player.on('waiting', function (e) {
// // console.log("waiting");
@ -55,8 +55,9 @@ function setupPlayerEventHandlers() {
function restartPlayer() {
try {
console.log('restarting')
const player = videojs('video');
player.pause();
player.src(player.src()); // Reload the same video
player.load();
player.play();

View File

@ -1,3 +1,5 @@
var playerRestartTimer;
async function getStatus() {
const url = "/status";
@ -5,13 +7,14 @@ async function getStatus() {
const response = await fetch(url);
const status = await response.json();
clearTimeout(playerRestartTimer);
if (!app.isOnline && status.online) {
// The stream was offline, but now it's online. Force start of playback after an arbitrary
// delay to make sure the stream has actual data ready to go.
setTimeout(function () {
playerRestartTimer = setTimeout(function () {
restartPlayer();
}, 3000)
}, 3000);
}
app.streamStatus = status.online