hls.js 1.6.6-0.canary.11346 → 1.6.6-0.canary.11347

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.6-0.canary.11346"}`);
526
+ newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.6.6-0.canary.11347"}`);
527
527
  } catch (e) {
528
528
  /* log fn threw an exception. All logger methods are no-ops. */
529
529
  return createLogger();
@@ -8367,7 +8367,8 @@ class BaseStreamController extends TaskLoop {
8367
8367
  } = this;
8368
8368
  const currentTime = media ? media.currentTime : 0;
8369
8369
  const bufferInfo = BufferHelper.bufferInfo(mediaBuffer ? mediaBuffer : media, currentTime, config.maxBufferHole);
8370
- this.log(`media seeking to ${isFiniteNumber(currentTime) ? currentTime.toFixed(3) : currentTime}, state: ${state}`);
8370
+ const noFowardBuffer = !bufferInfo.len;
8371
+ this.log(`Media seeking to ${isFiniteNumber(currentTime) ? currentTime.toFixed(3) : currentTime}, state: ${state}, ${noFowardBuffer ? 'out of' : 'in'} buffer`);
8371
8372
  if (this.state === State.ENDED) {
8372
8373
  this.resetLoadingState();
8373
8374
  } else if (fragCurrent) {
@@ -8376,12 +8377,12 @@ class BaseStreamController extends TaskLoop {
8376
8377
  const fragStartOffset = fragCurrent.start - tolerance;
8377
8378
  const fragEndOffset = fragCurrent.start + fragCurrent.duration + tolerance;
8378
8379
  // if seeking out of buffered range or into new one
8379
- if (!bufferInfo.len || fragEndOffset < bufferInfo.start || fragStartOffset > bufferInfo.end) {
8380
+ if (noFowardBuffer || fragEndOffset < bufferInfo.start || fragStartOffset > bufferInfo.end) {
8380
8381
  const pastFragment = currentTime > fragEndOffset;
8381
8382
  // if the seek position is outside the current fragment range
8382
8383
  if (currentTime < fragStartOffset || pastFragment) {
8383
8384
  if (pastFragment && fragCurrent.loader) {
8384
- this.log('seeking outside of buffer while fragment load in progress, cancel fragment load');
8385
+ this.log(`Cancelling fragment load for seek (sn: ${fragCurrent.sn})`);
8385
8386
  fragCurrent.abortRequests();
8386
8387
  this.resetLoadingState();
8387
8388
  }
@@ -8409,9 +8410,12 @@ class BaseStreamController extends TaskLoop {
8409
8410
  }
8410
8411
 
8411
8412
  // in case seeking occurs although no media buffered, adjust startPosition and nextLoadPosition to seek target
8412
- if (!this.hls.hasEnoughToStart && !bufferInfo.len) {
8413
- this.log(`setting startPosition to ${currentTime} because of seek before start`);
8414
- this.nextLoadPosition = this.startPosition = currentTime;
8413
+ if (!this.hls.hasEnoughToStart) {
8414
+ this.log(`Setting ${noFowardBuffer ? 'startPosition' : 'nextLoadPosition'} to ${currentTime} for seek without enough to start`);
8415
+ this.nextLoadPosition = currentTime;
8416
+ if (noFowardBuffer) {
8417
+ this.startPosition = currentTime;
8418
+ }
8415
8419
  }
8416
8420
 
8417
8421
  // Async tick to speed up processing
@@ -9557,7 +9561,7 @@ class BaseStreamController extends TaskLoop {
9557
9561
  }
9558
9562
  handleFragLoadAborted(frag, part) {
9559
9563
  if (this.transmuxer && frag.type === this.playlistType && isMediaFragment(frag) && frag.stats.aborted) {
9560
- this.warn(`Fragment ${frag.sn}${part ? ' part ' + part.index : ''} of ${this.playlistLabel()} ${frag.level} was aborted`);
9564
+ this.log(`Fragment ${frag.sn}${part ? ' part ' + part.index : ''} of ${this.playlistLabel()} ${frag.level} was aborted`);
9561
9565
  this.resetFragmentLoading(frag);
9562
9566
  }
9563
9567
  }
@@ -10214,7 +10218,7 @@ function requireEventemitter3 () {
10214
10218
  var eventemitter3Exports = requireEventemitter3();
10215
10219
  var EventEmitter = /*@__PURE__*/getDefaultExportFromCjs(eventemitter3Exports);
10216
10220
 
10217
- const version = "1.6.6-0.canary.11346";
10221
+ const version = "1.6.6-0.canary.11347";
10218
10222
 
10219
10223
  // ensure the worker ends up in the bundle
10220
10224
  // If the worker should not be included this gets aliased to empty.js