diff --git a/src/js/html5.js b/src/js/html5.js index fc8da8c0..0876211a 100644 --- a/src/js/html5.js +++ b/src/js/html5.js @@ -82,9 +82,6 @@ const html5 = { triggerEvent.call(player, player.media, 'qualitychange', false, { quality: input, }); - - // Save to storage - player.storage.set({ quality: input }); }, }); }, diff --git a/src/js/plyr.js b/src/js/plyr.js index 621ce207..dfde03b1 100644 --- a/src/js/plyr.js +++ b/src/js/plyr.js @@ -696,10 +696,15 @@ class Plyr { config.default, ].find(is.number); + let updateStorage = true; + if (!options.includes(quality)) { const value = closest(options, quality); this.debug.warn(`Unsupported quality option: ${quality}, using ${value} instead`); quality = value; + + // Don't update storage if quality is not supported + updateStorage = false; } // Update config @@ -707,6 +712,11 @@ class Plyr { // Set quality this.media.quality = quality; + + // Save to storage + if (updateStorage) { + this.storage.set({ quality: quality }); + } // Seek to duration before changing quality this.seek = duration;