Add handling to remove invalid sources

This commit is contained in:
Omar Roth 2019-01-28 22:36:27 -06:00
parent 26b7200360
commit ff09a7255a
1 changed files with 30 additions and 9 deletions

View File

@ -115,17 +115,38 @@ var player = videojs("player", options, function() {
}); });
player.on('error', function(event) { player.on('error', function(event) {
console.log("An error occured in the player, reloading..."); if (player.error().code === 2) {
console.log("An error occured in the player, reloading...");
var currentTime = player.currentTime(); var currentTime = player.currentTime();
var playbackRate = player.playbackRate() var playbackRate = player.playbackRate();
player.load(); player.load();
if (currentTime > 0.5) { if (currentTime > 0.5) {
currentTime -= 0.5; currentTime -= 0.5;
}
player.currentTime(currentTime);
player.playbackRate(playbackRate);
player.play()
} else if (player.error().code === 4) {
console.log("Detected invalid source, removing...");
var currentTime = player.currentTime();
var sources = player.options().sources;
for (var i = 0; i < sources.length; i++) {
if (sources[i].src === player.currentSource().src) {
sources.splice(i, 1);
break
}
};
player.load();
if (currentTime > 0.5) {
currentTime -= 0.5;
}
player.currentTime(currentTime);
player.src(sources);
player.play();
} }
player.currentTime(currentTime);
player.playbackRate(playbackRate);
player.play()
}); });
player.share(shareOptions); player.share(shareOptions);