summaryrefslogtreecommitdiffstats
path: root/assets/js/player.js
diff options
context:
space:
mode:
authorÉmilien Devos <contact@emiliendevos.be>2022-04-22 22:37:45 +0200
committerGitHub <noreply@github.com>2022-04-22 22:37:45 +0200
commit2ea986326d1a64c294025b79088032f3c77e8320 (patch)
tree27e66ed965773a6573b8659ce52db1c9fe7b6649 /assets/js/player.js
parentcf755dec22250cb53fdfb80eed838e2724d1d2a3 (diff)
downloadinvidious-2ea986326d1a64c294025b79088032f3c77e8320.tar.gz
invidious-2ea986326d1a64c294025b79088032f3c77e8320.tar.bz2
invidious-2ea986326d1a64c294025b79088032f3c77e8320.zip
Bump videojs to 7.12.1 (#3011)
Diffstat (limited to 'assets/js/player.js')
-rw-r--r--assets/js/player.js57
1 files changed, 36 insertions, 21 deletions
diff --git a/assets/js/player.js b/assets/js/player.js
index f4440de1..f5bec651 100644
--- a/assets/js/player.js
+++ b/assets/js/player.js
@@ -49,6 +49,42 @@ videojs.Vhs.xhr.beforeRequest = function(options) {
var player = videojs('player', options);
+player.on('error', () => {
+ if (video_data.params.quality !== 'dash') {
+ if (!player.currentSrc().includes("local=true") && !video_data.local_disabled) {
+ var currentSources = player.currentSources();
+ for (var i = 0; i < currentSources.length; i++) {
+ currentSources[i]["src"] += "&local=true"
+ }
+ player.src(currentSources)
+ }
+ else if (player.error().code === 2 || player.error().code === 4) {
+ setTimeout(function (event) {
+ console.log('An error occurred in the player, reloading...');
+
+ var currentTime = player.currentTime();
+ var playbackRate = player.playbackRate();
+ var paused = player.paused();
+
+ player.load();
+
+ if (currentTime > 0.5) currentTime -= 0.5;
+
+ player.currentTime(currentTime);
+ player.playbackRate(playbackRate);
+
+ if (!paused) player.play();
+ }, 10000);
+ }
+ }
+});
+
+if (video_data.params.quality == 'dash') {
+ player.reloadSourceOnError({
+ errorInterval: 10
+ });
+}
+
/**
* Function for add time argument to url
* @param {String} url
@@ -144,27 +180,6 @@ if (isMobile()) {
})
}
-player.on('error', function (event) {
- if (player.error().code === 2 || player.error().code === 4) {
- setTimeout(function (event) {
- console.log('An error occurred in the player, reloading...');
-
- var currentTime = player.currentTime();
- var playbackRate = player.playbackRate();
- var paused = player.paused();
-
- player.load();
-
- if (currentTime > 0.5) currentTime -= 0.5;
-
- player.currentTime(currentTime);
- player.playbackRate(playbackRate);
-
- if (!paused) player.play();
- }, 5000);
- }
-});
-
// Enable VR video support
if (!video_data.params.listen && video_data.vr && video_data.params.vr_mode) {
player.crossOrigin("anonymous")