hls.js 1.6.1-0.canary.11101 → 1.6.1-0.canary.11104
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 +8 -11
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +8 -11
- 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 +8 -11
- 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 +8 -11
- package/dist/hls.mjs.map +1 -1
- package/dist/hls.worker.js +1 -1
- package/package.json +2 -2
- package/src/controller/buffer-controller.ts +12 -10
package/dist/hls.light.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.1-0.canary.
|
526
|
+
newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.6.1-0.canary.11104"}`);
|
527
527
|
} catch (e) {
|
528
528
|
/* log fn threw an exception. All logger methods are no-ops. */
|
529
529
|
return createLogger();
|
@@ -10220,27 +10220,24 @@ transfer tracks: ${stringify(transferredTracks, (key, value) => key === 'initSeg
|
|
10220
10220
|
err: error,
|
10221
10221
|
fatal: false
|
10222
10222
|
};
|
10223
|
+
const mediaError = (_this$media = this.media) == null ? void 0 : _this$media.error;
|
10223
10224
|
if (error.code === DOMException.QUOTA_EXCEEDED_ERR) {
|
10224
10225
|
// QuotaExceededError: http://www.w3.org/TR/html5/infrastructure.html#quotaexceedederror
|
10225
10226
|
// let's stop appending any segments, and report BUFFER_FULL_ERROR error
|
10226
10227
|
event.details = ErrorDetails.BUFFER_FULL_ERROR;
|
10227
|
-
} else if (error.code === DOMException.INVALID_STATE_ERR && this.mediaSourceOpenOrEnded && !
|
10228
|
+
} else if (error.code === DOMException.INVALID_STATE_ERR && this.mediaSourceOpenOrEnded && !mediaError) {
|
10228
10229
|
// Allow retry for "Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer is still processing" errors
|
10229
10230
|
event.errorAction = createDoNothingErrorAction(true);
|
10230
|
-
} else if (error.name === TRACK_REMOVED_ERROR_NAME) {
|
10231
|
+
} else if (error.name === TRACK_REMOVED_ERROR_NAME && this.sourceBufferCount === 0) {
|
10231
10232
|
// Do nothing if sourceBuffers were removed (media is detached and append was not aborted)
|
10232
|
-
|
10233
|
-
event.errorAction = createDoNothingErrorAction(true);
|
10234
|
-
} else {
|
10235
|
-
++this.appendErrors[type];
|
10236
|
-
}
|
10233
|
+
event.errorAction = createDoNothingErrorAction(true);
|
10237
10234
|
} else {
|
10238
10235
|
const appendErrorCount = ++this.appendErrors[type];
|
10239
10236
|
/* with UHD content, we could get loop of quota exceeded error until
|
10240
10237
|
browser is able to evict some data from sourcebuffer. Retrying can help recover.
|
10241
10238
|
*/
|
10242
|
-
this.warn(`Failed ${appendErrorCount}/${this.hls.config.appendErrorMaxRetry} times to append segment in "${type}" sourceBuffer`);
|
10243
|
-
if (appendErrorCount >= this.hls.config.appendErrorMaxRetry) {
|
10239
|
+
this.warn(`Failed ${appendErrorCount}/${this.hls.config.appendErrorMaxRetry} times to append segment in "${type}" sourceBuffer (${mediaError ? mediaError : 'no media error'})`);
|
10240
|
+
if (appendErrorCount >= this.hls.config.appendErrorMaxRetry || !!mediaError) {
|
10244
10241
|
event.fatal = true;
|
10245
10242
|
}
|
10246
10243
|
}
|
@@ -19796,7 +19793,7 @@ function assignTrackIdsByGroup(tracks) {
|
|
19796
19793
|
});
|
19797
19794
|
}
|
19798
19795
|
|
19799
|
-
const version = "1.6.1-0.canary.
|
19796
|
+
const version = "1.6.1-0.canary.11104";
|
19800
19797
|
|
19801
19798
|
// ensure the worker ends up in the bundle
|
19802
19799
|
// If the worker should not be included this gets aliased to empty.js
|