hls.js 1.5.13-0.canary.10410 → 1.5.13-0.canary.10411

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
@@ -420,7 +420,7 @@ function enableLogs(debugConfig, context, id) {
420
420
  // Some browsers don't allow to use bind on console object anyway
421
421
  // fallback to default if needed
422
422
  try {
423
- newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.5.13-0.canary.10410"}`);
423
+ newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.5.13-0.canary.10411"}`);
424
424
  } catch (e) {
425
425
  /* log fn threw an exception. All logger methods are no-ops. */
426
426
  return createLogger();
@@ -17307,6 +17307,7 @@ class AudioStreamController extends BaseStreamController {
17307
17307
  this.lastCurrentTime = media.currentTime;
17308
17308
  }
17309
17309
  doTickIdle() {
17310
+ var _this$mainFragLoading;
17310
17311
  const {
17311
17312
  hls,
17312
17313
  levels,
@@ -17385,12 +17386,24 @@ class AudioStreamController extends BaseStreamController {
17385
17386
  this.bufferFlushed = true;
17386
17387
  return;
17387
17388
  }
17388
- if (this.startFragRequested && (!trackDetails.live || targetBufferTime < this.hls.liveSyncPosition)) {
17389
- // Request audio segments up to one fragment ahead of main buffer
17390
- const mainFragLoading = this.mainFragLoading;
17391
- const mainTargetBufferEnd = mainFragLoading ? (mainFragLoading.part || mainFragLoading.frag).end : null;
17392
- const atBufferSyncLimit = mainTargetBufferEnd !== null && frag.start > mainTargetBufferEnd;
17393
- if (atBufferSyncLimit && !frag.endList) {
17389
+
17390
+ // Request audio segments up to one fragment ahead of main stream-controller
17391
+ const mainFragLoading = (_this$mainFragLoading = this.mainFragLoading) == null ? void 0 : _this$mainFragLoading.frag;
17392
+ if (this.startFragRequested && mainFragLoading && mainFragLoading.sn !== 'initSegment' && frag.sn !== 'initSegment' && !frag.endList && (!trackDetails.live || !this.loadingParts && targetBufferTime < this.hls.liveSyncPosition)) {
17393
+ let mainFrag = mainFragLoading;
17394
+ if (frag.start > mainFrag.end) {
17395
+ // Get buffered frag at target position from tracker (loaded out of sequence)
17396
+ const mainFragAtPos = this.fragmentTracker.getFragAtPos(targetBufferTime, PlaylistLevelType.MAIN);
17397
+ if (mainFragAtPos && mainFragAtPos.end > mainFragLoading.end) {
17398
+ mainFrag = mainFragAtPos;
17399
+ this.mainFragLoading = {
17400
+ frag: mainFragAtPos,
17401
+ targetBufferTime: null
17402
+ };
17403
+ }
17404
+ }
17405
+ const atBufferSyncLimit = frag.start > mainFrag.end;
17406
+ if (atBufferSyncLimit) {
17394
17407
  return;
17395
17408
  }
17396
17409
  }
@@ -29255,7 +29268,7 @@ class Hls {
29255
29268
  * Get the video-dev/hls.js package version.
29256
29269
  */
29257
29270
  static get version() {
29258
- return "1.5.13-0.canary.10410";
29271
+ return "1.5.13-0.canary.10411";
29259
29272
  }
29260
29273
 
29261
29274
  /**