diff options
Diffstat (limited to 'src')
-rw-r--r-- | src/js/config/defaults.js | 17 | ||||
-rw-r--r-- | src/js/html5.js | 3 | ||||
-rw-r--r-- | src/js/listeners.js | 6 | ||||
-rw-r--r-- | src/js/plugins/youtube.js | 54 | ||||
-rw-r--r-- | src/js/plyr.js | 5 |
5 files changed, 6 insertions, 79 deletions
diff --git a/src/js/config/defaults.js b/src/js/config/defaults.js index a898755d..e6e2d7c1 100644 --- a/src/js/config/defaults.js +++ b/src/js/config/defaults.js @@ -68,19 +68,7 @@ const defaults = { // Quality default quality: { default: 576, - options: [ - 4320, - 2880, - 2160, - 1440, - 1080, - 720, - 576, - 480, - 360, - 240, - 'default', // YouTube's "auto" - ], + options: [4320, 2880, 2160, 1440, 1080, 720, 576, 480, 360, 240], }, // Set loops @@ -268,8 +256,9 @@ const defaults = { // YouTube 'statechange', + + // Quality 'qualitychange', - 'qualityrequested', // Ads 'adsloaded', diff --git a/src/js/html5.js b/src/js/html5.js index 0876211a..fc8da8c0 100644 --- a/src/js/html5.js +++ b/src/js/html5.js @@ -82,6 +82,9 @@ const html5 = { triggerEvent.call(player, player.media, 'qualitychange', false, { quality: input, }); + + // Save to storage + player.storage.set({ quality: input }); }, }); }, diff --git a/src/js/listeners.js b/src/js/listeners.js index c2b772b2..a6db034a 100644 --- a/src/js/listeners.js +++ b/src/js/listeners.js @@ -430,12 +430,6 @@ class Listeners { player.storage.set({ speed: player.speed }); }); - // Quality request - on.call(player, player.media, 'qualityrequested', event => { - // Save to storage - player.storage.set({ quality: event.detail.quality }); - }); - // Quality change on.call(player, player.media, 'qualitychange', event => { // Update UI diff --git a/src/js/plugins/youtube.js b/src/js/plugins/youtube.js index 66a73acf..73175c14 100644 --- a/src/js/plugins/youtube.js +++ b/src/js/plugins/youtube.js @@ -2,9 +2,7 @@ // YouTube plugin // ========================================================================== -import controls from '../controls'; import ui from '../ui'; -import { dedupe } from '../utils/arrays'; import { createElement, replaceElement, toggleClass } from '../utils/elements'; import { triggerEvent } from '../utils/events'; import fetch from '../utils/fetch'; @@ -23,37 +21,6 @@ function parseId(url) { return url.match(regex) ? RegExp.$2 : url; } -// Standardise YouTube quality unit -function mapQualityUnit(input) { - const qualities = { - hd2160: 2160, - hd1440: 1440, - hd1080: 1080, - hd720: 720, - large: 480, - medium: 360, - small: 240, - tiny: 144, - }; - - const entry = Object.entries(qualities).find(entry => entry.includes(input)); - - if (entry) { - // Get the match corresponding to the input - return entry.find(value => value !== input); - } - - return 'default'; -} - -function mapQualityUnits(levels) { - if (is.empty(levels)) { - return levels; - } - - return dedupe(levels.map(level => mapQualityUnit(level))); -} - // Set playback state and trigger change (only on actual change) function assurePlaybackState(play) { if (play && !this.embed.hasPlayed) { @@ -225,11 +192,6 @@ const youtube = { triggerEvent.call(player, player.media, 'error'); } }, - onPlaybackQualityChange() { - triggerEvent.call(player, player.media, 'qualitychange', false, { - quality: player.media.quality, - }); - }, onPlaybackRateChange(event) { // Get the instance const instance = event.target; @@ -299,16 +261,6 @@ const youtube = { }, }); - // Quality - Object.defineProperty(player.media, 'quality', { - get() { - return mapQualityUnit(instance.getPlaybackQuality()); - }, - set(input) { - instance.setPlaybackQuality(mapQualityUnit(input)); - }, - }); - // Volume let { volume } = player.config; Object.defineProperty(player.media, 'volume', { @@ -457,12 +409,6 @@ const youtube = { player.media.duration = instance.getDuration(); triggerEvent.call(player, player.media, 'durationchange'); } - - // Get quality - controls.setQualityMenu.call( - player, - mapQualityUnits(instance.getAvailableQualityLevels()), - ); } break; diff --git a/src/js/plyr.js b/src/js/plyr.js index 573b4d4c..44e41cb6 100644 --- a/src/js/plyr.js +++ b/src/js/plyr.js @@ -698,11 +698,6 @@ class Plyr { quality = value; } - // Trigger request event - triggerEvent.call(this, this.media, 'qualityrequested', false, { - quality, - }); - // Update config config.selected = quality; |