hls.js 1.6.3-0.canary.11261 → 1.6.3-0.canary.11262

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/hls.mjs CHANGED
@@ -523,7 +523,7 @@ function enableLogs(debugConfig, context, id) {
523
523
  // Some browsers don't allow to use bind on console object anyway
524
524
  // fallback to default if needed
525
525
  try {
526
- newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.6.3-0.canary.11261"}`);
526
+ newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.6.3-0.canary.11262"}`);
527
527
  } catch (e) {
528
528
  /* log fn threw an exception. All logger methods are no-ops. */
529
529
  return createLogger();
@@ -10234,7 +10234,7 @@ function requireEventemitter3 () {
10234
10234
  var eventemitter3Exports = requireEventemitter3();
10235
10235
  var EventEmitter = /*@__PURE__*/getDefaultExportFromCjs(eventemitter3Exports);
10236
10236
 
10237
- const version = "1.6.3-0.canary.11261";
10237
+ const version = "1.6.3-0.canary.11262";
10238
10238
 
10239
10239
  // ensure the worker ends up in the bundle
10240
10240
  // If the worker should not be included this gets aliased to empty.js
@@ -21568,6 +21568,7 @@ class EMEController extends Logger {
21568
21568
  this._requestLicenseFailureCount = 0;
21569
21569
  this.mediaKeySessions = [];
21570
21570
  this.keyIdToKeySessionPromise = {};
21571
+ this.mediaKeys = null;
21571
21572
  this.setMediaKeysQueue = EMEController.CDMCleanupPromise ? [EMEController.CDMCleanupPromise] : [];
21572
21573
  this.onMediaEncrypted = event => {
21573
21574
  const {
@@ -22019,16 +22020,21 @@ class EMEController extends Logger {
22019
22020
  return this.attemptKeySystemAccess(keySystemsToAttempt);
22020
22021
  }
22021
22022
  attemptSetMediaKeys(keySystem, mediaKeys) {
22023
+ if (this.mediaKeys === mediaKeys) {
22024
+ return Promise.resolve();
22025
+ }
22022
22026
  const queue = this.setMediaKeysQueue.slice();
22023
22027
  this.log(`Setting media-keys for "${keySystem}"`);
22024
22028
  // Only one setMediaKeys() can run at one time, and multiple setMediaKeys() operations
22025
22029
  // can be queued for execution for multiple key sessions.
22026
22030
  const setMediaKeysPromise = Promise.all(queue).then(() => {
22027
22031
  if (!this.media) {
22032
+ this.mediaKeys = null;
22028
22033
  throw new Error('Attempted to set mediaKeys without media element attached');
22029
22034
  }
22030
22035
  return this.media.setMediaKeys(mediaKeys);
22031
22036
  });
22037
+ this.mediaKeys = mediaKeys;
22032
22038
  this.setMediaKeysQueue.push(setMediaKeysPromise);
22033
22039
  return setMediaKeysPromise.then(() => {
22034
22040
  this.log(`Media-keys set for "${keySystem}"`);
@@ -22402,12 +22408,14 @@ class EMEController extends Logger {
22402
22408
  media.removeEventListener('encrypted', this.onMediaEncrypted);
22403
22409
  media.removeEventListener('waitingforkey', this.onWaitingForKey);
22404
22410
  this.media = null;
22411
+ this.mediaKeys = null;
22405
22412
  }
22406
22413
  }
22407
22414
  _clear(media) {
22408
22415
  var _media$setMediaKeys;
22409
22416
  const mediaKeysList = this.mediaKeySessions;
22410
22417
  this._requestLicenseFailureCount = 0;
22418
+ this.mediaKeys = null;
22411
22419
  this.setMediaKeysQueue = [];
22412
22420
  this.mediaKeySessions = [];
22413
22421
  this.keyIdToKeySessionPromise = {};