hls.js 1.6.0-beta.1.0.canary.10824 → 1.6.0-beta.2

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.d.mts CHANGED
@@ -462,6 +462,7 @@ export declare class BufferController extends Logger implements ComponentAPI {
462
462
  protected onMediaAttaching(event: Events.MEDIA_ATTACHING, data: MediaAttachingData): void;
463
463
  private assignMediaSource;
464
464
  private attachTransferred;
465
+ private get mediaSourceOpenOrEnded();
465
466
  private _onEndStreaming;
466
467
  private _onStartStreaming;
467
468
  protected onMediaDetaching(event: Events.MEDIA_DETACHING, data: MediaDetachingData): void;
@@ -2300,6 +2301,7 @@ export declare class InterstitialsController extends Logger implements NetworkCo
2300
2301
  private transferMediaFromPlayer;
2301
2302
  private transferMediaTo;
2302
2303
  private onPlay;
2304
+ private onPause;
2303
2305
  private onSeeking;
2304
2306
  private onInterstitialCueEnter;
2305
2307
  private onTimeupdate;
package/dist/hls.d.ts CHANGED
@@ -462,6 +462,7 @@ export declare class BufferController extends Logger implements ComponentAPI {
462
462
  protected onMediaAttaching(event: Events.MEDIA_ATTACHING, data: MediaAttachingData): void;
463
463
  private assignMediaSource;
464
464
  private attachTransferred;
465
+ private get mediaSourceOpenOrEnded();
465
466
  private _onEndStreaming;
466
467
  private _onStartStreaming;
467
468
  protected onMediaDetaching(event: Events.MEDIA_DETACHING, data: MediaDetachingData): void;
@@ -2300,6 +2301,7 @@ export declare class InterstitialsController extends Logger implements NetworkCo
2300
2301
  private transferMediaFromPlayer;
2301
2302
  private transferMediaTo;
2302
2303
  private onPlay;
2304
+ private onPause;
2303
2305
  private onSeeking;
2304
2306
  private onInterstitialCueEnter;
2305
2307
  private onTimeupdate;
package/dist/hls.js CHANGED
@@ -1058,7 +1058,7 @@
1058
1058
  // Some browsers don't allow to use bind on console object anyway
1059
1059
  // fallback to default if needed
1060
1060
  try {
1061
- newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.6.0-beta.1.0.canary.10824");
1061
+ newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.6.0-beta.2");
1062
1062
  } catch (e) {
1063
1063
  /* log fn threw an exception. All logger methods are no-ops. */
1064
1064
  return createLogger();
@@ -16297,7 +16297,7 @@
16297
16297
  return !remuxResult.audio && !remuxResult.video && !remuxResult.text && !remuxResult.id3 && !remuxResult.initSegment;
16298
16298
  }
16299
16299
 
16300
- var version = "1.6.0-beta.1.0.canary.10824";
16300
+ var version = "1.6.0-beta.2";
16301
16301
 
16302
16302
  // ensure the worker ends up in the bundle
16303
16303
  // If the worker should not be included this gets aliased to empty.js
@@ -18488,12 +18488,8 @@
18488
18488
  var trackNames = transferredTracks ? Object.keys(transferredTracks) : null;
18489
18489
  var trackCount = trackNames ? trackNames.length : 0;
18490
18490
  var mediaSourceOpenCallback = function mediaSourceOpenCallback() {
18491
- if (_this6.media) {
18492
- var _this6$mediaSource;
18493
- var readyState = (_this6$mediaSource = _this6.mediaSource) == null ? void 0 : _this6$mediaSource.readyState;
18494
- if (readyState === 'open' || readyState === 'ended') {
18495
- _this6._onMediaSourceOpen();
18496
- }
18491
+ if (_this6.media && _this6.mediaSourceOpenOrEnded) {
18492
+ _this6._onMediaSourceOpen();
18497
18493
  }
18498
18494
  };
18499
18495
  if (transferredTracks && trackNames && trackCount) {
@@ -18577,18 +18573,23 @@
18577
18573
  });
18578
18574
  this.resetQueue();
18579
18575
  } else {
18580
- if (mediaSource.readyState === 'open') {
18576
+ if (this.mediaSourceOpenOrEnded) {
18577
+ var open = mediaSource.readyState === 'open';
18581
18578
  try {
18582
18579
  var sourceBuffers = mediaSource.sourceBuffers;
18583
18580
  for (var i = sourceBuffers.length; i--;) {
18584
- sourceBuffers[i].abort();
18581
+ if (open) {
18582
+ sourceBuffers[i].abort();
18583
+ }
18585
18584
  mediaSource.removeSourceBuffer(sourceBuffers[i]);
18586
18585
  }
18587
- // endOfStream could trigger exception if any sourcebuffer is in updating state
18588
- // we don't really care about checking sourcebuffer state here,
18589
- // as we are anyway detaching the MediaSource
18590
- // let's just avoid this exception to propagate
18591
- mediaSource.endOfStream();
18586
+ if (open) {
18587
+ // endOfStream could trigger exception if any sourcebuffer is in updating state
18588
+ // we don't really care about checking sourcebuffer state here,
18589
+ // as we are anyway detaching the MediaSource
18590
+ // let's just avoid this exception to propagate
18591
+ mediaSource.endOfStream();
18592
+ }
18592
18593
  } catch (err) {
18593
18594
  this.warn("onMediaDetaching: " + err.message + " while calling endOfStream");
18594
18595
  }
@@ -18740,7 +18741,7 @@
18740
18741
  if (this.sourceBufferCount) {
18741
18742
  return;
18742
18743
  }
18743
- if (this.mediaSource !== null && this.mediaSource.readyState === 'open') {
18744
+ if (this.mediaSourceOpenOrEnded) {
18744
18745
  this.checkPendingTracks();
18745
18746
  }
18746
18747
  };
@@ -18930,7 +18931,7 @@
18930
18931
  });
18931
18932
  },
18932
18933
  onError: function onError(error) {
18933
- var _this12$mediaSource, _this12$media;
18934
+ var _this12$media;
18934
18935
  // in case any error occured while appending, put back segment in segments table
18935
18936
  var event = {
18936
18937
  type: ErrorTypes.MEDIA_ERROR,
@@ -18948,7 +18949,7 @@
18948
18949
  // QuotaExceededError: http://www.w3.org/TR/html5/infrastructure.html#quotaexceedederror
18949
18950
  // let's stop appending any segments, and report BUFFER_FULL_ERROR error
18950
18951
  event.details = ErrorDetails.BUFFER_FULL_ERROR;
18951
- } else if (error.code === DOMException.INVALID_STATE_ERR && ((_this12$mediaSource = _this12.mediaSource) == null ? void 0 : _this12$mediaSource.readyState) === 'open' && !((_this12$media = _this12.media) != null && _this12$media.error)) {
18952
+ } else if (error.code === DOMException.INVALID_STATE_ERR && _this12.mediaSourceOpenOrEnded && !((_this12$media = _this12.media) != null && _this12$media.error)) {
18952
18953
  // Allow retry for "Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer is still processing" errors
18953
18954
  event.errorAction = createDoNothingErrorAction(true);
18954
18955
  } else if (error.name === TRACK_REMOVED_ERROR_NAME) {
@@ -19636,6 +19637,13 @@
19636
19637
  track.listeners.length = 0;
19637
19638
  };
19638
19639
  return _createClass(BufferController, [{
19640
+ key: "mediaSourceOpenOrEnded",
19641
+ get: function get() {
19642
+ var _this$mediaSource4;
19643
+ var readyState = (_this$mediaSource4 = this.mediaSource) == null ? void 0 : _this$mediaSource4.readyState;
19644
+ return readyState === 'open' || readyState === 'ended';
19645
+ }
19646
+ }, {
19639
19647
  key: "sourceBufferTracks",
19640
19648
  get: function get() {
19641
19649
  var _this25 = this;
@@ -23817,6 +23825,9 @@
23817
23825
  _this.onPlay = function () {
23818
23826
  _this.shouldPlay = true;
23819
23827
  };
23828
+ _this.onPause = function () {
23829
+ _this.shouldPlay = false;
23830
+ };
23820
23831
  _this.onSeeking = function () {
23821
23832
  var currentTime = _this.currentTime;
23822
23833
  if (currentTime === undefined || _this.playbackDisabled) {
@@ -24082,7 +24093,7 @@
24082
24093
  // @ts-ignore
24083
24094
  this.assetListLoader = null;
24084
24095
  // @ts-ignore
24085
- this.onPlay = this.onSeeking = this.onTimeupdate = null;
24096
+ this.onPlay = this.onPause = this.onSeeking = this.onTimeupdate = null;
24086
24097
  // @ts-ignore
24087
24098
  this.onScheduleUpdate = null;
24088
24099
  };
@@ -24094,6 +24105,7 @@
24094
24105
  };
24095
24106
  _proto.removeMediaListeners = function removeMediaListeners(media) {
24096
24107
  media.removeEventListener('play', this.onPlay);
24108
+ media.removeEventListener('pause', this.onPause);
24097
24109
  media.removeEventListener('seeking', this.onSeeking);
24098
24110
  media.removeEventListener('timeupdate', this.onTimeupdate);
24099
24111
  };
@@ -24103,6 +24115,7 @@
24103
24115
  media.addEventListener('seeking', this.onSeeking);
24104
24116
  media.addEventListener('timeupdate', this.onTimeupdate);
24105
24117
  media.addEventListener('play', this.onPlay);
24118
+ media.addEventListener('pause', this.onPause);
24106
24119
  };
24107
24120
  _proto.onMediaAttached = function onMediaAttached(event, data) {
24108
24121
  var playingItem = this.playingItem;
package/dist/hls.js.d.ts CHANGED
@@ -462,6 +462,7 @@ export declare class BufferController extends Logger implements ComponentAPI {
462
462
  protected onMediaAttaching(event: Events.MEDIA_ATTACHING, data: MediaAttachingData): void;
463
463
  private assignMediaSource;
464
464
  private attachTransferred;
465
+ private get mediaSourceOpenOrEnded();
465
466
  private _onEndStreaming;
466
467
  private _onStartStreaming;
467
468
  protected onMediaDetaching(event: Events.MEDIA_DETACHING, data: MediaDetachingData): void;
@@ -2300,6 +2301,7 @@ export declare class InterstitialsController extends Logger implements NetworkCo
2300
2301
  private transferMediaFromPlayer;
2301
2302
  private transferMediaTo;
2302
2303
  private onPlay;
2304
+ private onPause;
2303
2305
  private onSeeking;
2304
2306
  private onInterstitialCueEnter;
2305
2307
  private onTimeupdate;