hls.js 1.4.6 → 1.4.8
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.js +58 -50
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +15 -9
- package/dist/hls.light.js.map +1 -1
- package/dist/hls.light.min.js +1 -1
- package/dist/hls.light.min.js.map +1 -1
- package/dist/hls.light.mjs +15 -9
- package/dist/hls.light.mjs.map +1 -1
- package/dist/hls.min.js +1 -1
- package/dist/hls.min.js.map +1 -1
- package/dist/hls.mjs +62 -56
- package/dist/hls.mjs.map +1 -1
- package/dist/hls.worker.js +1 -1
- package/package.json +1 -1
- package/src/controller/base-stream-controller.ts +10 -5
- package/src/controller/stream-controller.ts +6 -2
- package/src/controller/subtitle-stream-controller.ts +21 -20
- package/src/controller/timeline-controller.ts +23 -24
- package/src/utils/webvtt-parser.ts +8 -6
- package/src/utils/xhr-loader.ts +1 -0
package/dist/hls.light.mjs
CHANGED
|
@@ -402,7 +402,7 @@ function enableLogs(debugConfig, id) {
|
|
|
402
402
|
// Some browsers don't allow to use bind on console object anyway
|
|
403
403
|
// fallback to default if needed
|
|
404
404
|
try {
|
|
405
|
-
exportedLogger.log(`Debug logs enabled for "${id}" in hls.js version ${"1.4.
|
|
405
|
+
exportedLogger.log(`Debug logs enabled for "${id}" in hls.js version ${"1.4.8"}`);
|
|
406
406
|
} catch (e) {
|
|
407
407
|
exportedLogger = fakeLogger;
|
|
408
408
|
}
|
|
@@ -8815,10 +8815,8 @@ class BaseStreamController extends TaskLoop {
|
|
|
8815
8815
|
retryConfig
|
|
8816
8816
|
} = errorAction || {};
|
|
8817
8817
|
if (errorAction && action === NetworkErrorAction.RetryRequest && retryConfig) {
|
|
8818
|
-
|
|
8819
|
-
|
|
8820
|
-
this.nextLoadPosition = this.startPosition;
|
|
8821
|
-
}
|
|
8818
|
+
var _this$levelLastLoaded;
|
|
8819
|
+
this.resetStartWhenNotLoaded((_this$levelLastLoaded = this.levelLastLoaded) != null ? _this$levelLastLoaded : frag.level);
|
|
8822
8820
|
const delay = getRetryDelay(retryConfig, retryCount);
|
|
8823
8821
|
this.warn(`Fragment ${frag.sn} of ${filterType} ${frag.level} errored with ${data.details}, retrying loading ${retryCount + 1}/${retryConfig.maxNumRetry} in ${delay}ms`);
|
|
8824
8822
|
errorAction.resolved = true;
|
|
@@ -8834,6 +8832,8 @@ class BaseStreamController extends TaskLoop {
|
|
|
8834
8832
|
} else {
|
|
8835
8833
|
logger.warn(`${data.details} reached or exceeded max retry (${retryCount})`);
|
|
8836
8834
|
}
|
|
8835
|
+
} else if ((errorAction == null ? void 0 : errorAction.action) === NetworkErrorAction.SendAlternateToPenaltyBox) {
|
|
8836
|
+
this.state = State.WAITING_LEVEL;
|
|
8837
8837
|
} else {
|
|
8838
8838
|
this.state = State.ERROR;
|
|
8839
8839
|
}
|
|
@@ -8916,9 +8916,10 @@ class BaseStreamController extends TaskLoop {
|
|
|
8916
8916
|
}
|
|
8917
8917
|
}
|
|
8918
8918
|
resetWhenMissingContext(chunkMeta) {
|
|
8919
|
+
var _this$levelLastLoaded2;
|
|
8919
8920
|
this.warn(`The loading context changed while buffering fragment ${chunkMeta.sn} of level ${chunkMeta.level}. This chunk will not be buffered.`);
|
|
8920
8921
|
this.removeUnbufferedFrags();
|
|
8921
|
-
this.resetStartWhenNotLoaded(chunkMeta.level);
|
|
8922
|
+
this.resetStartWhenNotLoaded((_this$levelLastLoaded2 = this.levelLastLoaded) != null ? _this$levelLastLoaded2 : chunkMeta.level);
|
|
8922
8923
|
this.resetLoadingState();
|
|
8923
8924
|
}
|
|
8924
8925
|
removeUnbufferedFrags(start = 0) {
|
|
@@ -8990,7 +8991,10 @@ class BaseStreamController extends TaskLoop {
|
|
|
8990
8991
|
}
|
|
8991
8992
|
recoverWorkerError(data) {
|
|
8992
8993
|
if (data.event === 'demuxerWorker') {
|
|
8994
|
+
var _ref, _this$levelLastLoaded3, _this$fragCurrent3;
|
|
8995
|
+
this.fragmentTracker.removeAllFragments();
|
|
8993
8996
|
this.resetTransmuxer();
|
|
8997
|
+
this.resetStartWhenNotLoaded((_ref = (_this$levelLastLoaded3 = this.levelLastLoaded) != null ? _this$levelLastLoaded3 : (_this$fragCurrent3 = this.fragCurrent) == null ? void 0 : _this$fragCurrent3.level) != null ? _ref : 0);
|
|
8994
8998
|
this.resetLoadingState();
|
|
8995
8999
|
}
|
|
8996
9000
|
}
|
|
@@ -15184,6 +15188,7 @@ class StreamController extends BaseStreamController {
|
|
|
15184
15188
|
}
|
|
15185
15189
|
|
|
15186
15190
|
// Avoid buffering if backtracking this fragment
|
|
15191
|
+
const notFirstFragment = frag.sn !== (details == null ? void 0 : details.startSN);
|
|
15187
15192
|
if (video && remuxResult.independent !== false) {
|
|
15188
15193
|
if (details) {
|
|
15189
15194
|
const {
|
|
@@ -15209,7 +15214,7 @@ class StreamController extends BaseStreamController {
|
|
|
15209
15214
|
const bufferInfo = this.getMainFwdBufferInfo();
|
|
15210
15215
|
const targetBufferTime = (bufferInfo ? bufferInfo.end : this.getLoadPosition()) + this.config.maxBufferHole;
|
|
15211
15216
|
const startTime = video.firstKeyFramePTS ? video.firstKeyFramePTS : startPTS;
|
|
15212
|
-
if (targetBufferTime < startTime - this.config.maxBufferHole) {
|
|
15217
|
+
if (notFirstFragment && targetBufferTime < startTime - this.config.maxBufferHole) {
|
|
15213
15218
|
this.backtrack(frag);
|
|
15214
15219
|
return;
|
|
15215
15220
|
}
|
|
@@ -15223,7 +15228,7 @@ class StreamController extends BaseStreamController {
|
|
|
15223
15228
|
}
|
|
15224
15229
|
this.bufferFragmentData(video, frag, part, chunkMeta);
|
|
15225
15230
|
}
|
|
15226
|
-
} else if (remuxResult.independent === false) {
|
|
15231
|
+
} else if (notFirstFragment && remuxResult.independent === false) {
|
|
15227
15232
|
this.backtrack(frag);
|
|
15228
15233
|
return;
|
|
15229
15234
|
}
|
|
@@ -17252,6 +17257,7 @@ class XhrLoader {
|
|
|
17252
17257
|
const stats = this.stats;
|
|
17253
17258
|
stats.loading.first = 0;
|
|
17254
17259
|
stats.loaded = 0;
|
|
17260
|
+
stats.aborted = false;
|
|
17255
17261
|
const xhrSetup = this.xhrSetup;
|
|
17256
17262
|
if (xhrSetup) {
|
|
17257
17263
|
Promise.resolve().then(() => {
|
|
@@ -18079,7 +18085,7 @@ class Hls {
|
|
|
18079
18085
|
* Get the video-dev/hls.js package version.
|
|
18080
18086
|
*/
|
|
18081
18087
|
static get version() {
|
|
18082
|
-
return "1.4.
|
|
18088
|
+
return "1.4.8";
|
|
18083
18089
|
}
|
|
18084
18090
|
|
|
18085
18091
|
/**
|