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 +2 -0
- package/dist/hls.d.ts +2 -0
- package/dist/hls.js +32 -19
- package/dist/hls.js.d.ts +2 -0
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +26 -18
- 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 +28 -22
- 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 +34 -23
- package/dist/hls.mjs.map +1 -1
- package/dist/hls.worker.js +1 -1
- package/dist/hls.worker.js.map +1 -1
- package/package.json +2 -2
- package/src/controller/buffer-controller.ts +21 -14
- package/src/controller/interstitials-controller.ts +7 -1
package/dist/hls.light.js
CHANGED
@@ -1029,7 +1029,7 @@
|
|
1029
1029
|
// Some browsers don't allow to use bind on console object anyway
|
1030
1030
|
// fallback to default if needed
|
1031
1031
|
try {
|
1032
|
-
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.6.0-beta.
|
1032
|
+
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.6.0-beta.2");
|
1033
1033
|
} catch (e) {
|
1034
1034
|
/* log fn threw an exception. All logger methods are no-ops. */
|
1035
1035
|
return createLogger();
|
@@ -4003,12 +4003,8 @@
|
|
4003
4003
|
var trackNames = transferredTracks ? Object.keys(transferredTracks) : null;
|
4004
4004
|
var trackCount = trackNames ? trackNames.length : 0;
|
4005
4005
|
var mediaSourceOpenCallback = function mediaSourceOpenCallback() {
|
4006
|
-
if (_this6.media) {
|
4007
|
-
|
4008
|
-
var readyState = (_this6$mediaSource = _this6.mediaSource) == null ? void 0 : _this6$mediaSource.readyState;
|
4009
|
-
if (readyState === 'open' || readyState === 'ended') {
|
4010
|
-
_this6._onMediaSourceOpen();
|
4011
|
-
}
|
4006
|
+
if (_this6.media && _this6.mediaSourceOpenOrEnded) {
|
4007
|
+
_this6._onMediaSourceOpen();
|
4012
4008
|
}
|
4013
4009
|
};
|
4014
4010
|
if (transferredTracks && trackNames && trackCount) {
|
@@ -4092,18 +4088,23 @@
|
|
4092
4088
|
});
|
4093
4089
|
this.resetQueue();
|
4094
4090
|
} else {
|
4095
|
-
if (
|
4091
|
+
if (this.mediaSourceOpenOrEnded) {
|
4092
|
+
var open = mediaSource.readyState === 'open';
|
4096
4093
|
try {
|
4097
4094
|
var sourceBuffers = mediaSource.sourceBuffers;
|
4098
4095
|
for (var i = sourceBuffers.length; i--;) {
|
4099
|
-
|
4096
|
+
if (open) {
|
4097
|
+
sourceBuffers[i].abort();
|
4098
|
+
}
|
4100
4099
|
mediaSource.removeSourceBuffer(sourceBuffers[i]);
|
4101
4100
|
}
|
4102
|
-
|
4103
|
-
|
4104
|
-
|
4105
|
-
|
4106
|
-
|
4101
|
+
if (open) {
|
4102
|
+
// endOfStream could trigger exception if any sourcebuffer is in updating state
|
4103
|
+
// we don't really care about checking sourcebuffer state here,
|
4104
|
+
// as we are anyway detaching the MediaSource
|
4105
|
+
// let's just avoid this exception to propagate
|
4106
|
+
mediaSource.endOfStream();
|
4107
|
+
}
|
4107
4108
|
} catch (err) {
|
4108
4109
|
this.warn("onMediaDetaching: " + err.message + " while calling endOfStream");
|
4109
4110
|
}
|
@@ -4255,7 +4256,7 @@
|
|
4255
4256
|
if (this.sourceBufferCount) {
|
4256
4257
|
return;
|
4257
4258
|
}
|
4258
|
-
if (this.
|
4259
|
+
if (this.mediaSourceOpenOrEnded) {
|
4259
4260
|
this.checkPendingTracks();
|
4260
4261
|
}
|
4261
4262
|
};
|
@@ -4445,7 +4446,7 @@
|
|
4445
4446
|
});
|
4446
4447
|
},
|
4447
4448
|
onError: function onError(error) {
|
4448
|
-
var _this12$
|
4449
|
+
var _this12$media;
|
4449
4450
|
// in case any error occured while appending, put back segment in segments table
|
4450
4451
|
var event = {
|
4451
4452
|
type: ErrorTypes.MEDIA_ERROR,
|
@@ -4463,7 +4464,7 @@
|
|
4463
4464
|
// QuotaExceededError: http://www.w3.org/TR/html5/infrastructure.html#quotaexceedederror
|
4464
4465
|
// let's stop appending any segments, and report BUFFER_FULL_ERROR error
|
4465
4466
|
event.details = ErrorDetails.BUFFER_FULL_ERROR;
|
4466
|
-
} else if (error.code === DOMException.INVALID_STATE_ERR &&
|
4467
|
+
} else if (error.code === DOMException.INVALID_STATE_ERR && _this12.mediaSourceOpenOrEnded && !((_this12$media = _this12.media) != null && _this12$media.error)) {
|
4467
4468
|
// Allow retry for "Failed to execute 'appendBuffer' on 'SourceBuffer': This SourceBuffer is still processing" errors
|
4468
4469
|
event.errorAction = createDoNothingErrorAction(true);
|
4469
4470
|
} else if (error.name === TRACK_REMOVED_ERROR_NAME) {
|
@@ -5151,6 +5152,13 @@
|
|
5151
5152
|
track.listeners.length = 0;
|
5152
5153
|
};
|
5153
5154
|
return _createClass(BufferController, [{
|
5155
|
+
key: "mediaSourceOpenOrEnded",
|
5156
|
+
get: function get() {
|
5157
|
+
var _this$mediaSource4;
|
5158
|
+
var readyState = (_this$mediaSource4 = this.mediaSource) == null ? void 0 : _this$mediaSource4.readyState;
|
5159
|
+
return readyState === 'open' || readyState === 'ended';
|
5160
|
+
}
|
5161
|
+
}, {
|
5154
5162
|
key: "sourceBufferTracks",
|
5155
5163
|
get: function get() {
|
5156
5164
|
var _this25 = this;
|
@@ -19786,7 +19794,7 @@
|
|
19786
19794
|
return !remuxResult.audio && !remuxResult.video && !remuxResult.text && !remuxResult.id3 && !remuxResult.initSegment;
|
19787
19795
|
}
|
19788
19796
|
|
19789
|
-
var version = "1.6.0-beta.
|
19797
|
+
var version = "1.6.0-beta.2";
|
19790
19798
|
|
19791
19799
|
// ensure the worker ends up in the bundle
|
19792
19800
|
// If the worker should not be included this gets aliased to empty.js
|