hls.js 1.5.13-0.canary.10401 → 1.5.13-0.canary.10404
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 +17 -8
- package/dist/hls.js.d.ts +1 -1
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +17 -8
- 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 +17 -12
- 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 +17 -12
- package/dist/hls.mjs.map +1 -1
- package/dist/hls.worker.js +1 -1
- package/package.json +3 -3
- package/src/controller/base-stream-controller.ts +19 -7
package/dist/hls.light.js
CHANGED
@@ -493,7 +493,7 @@
|
|
493
493
|
// Some browsers don't allow to use bind on console object anyway
|
494
494
|
// fallback to default if needed
|
495
495
|
try {
|
496
|
-
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.5.13-0.canary.
|
496
|
+
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.5.13-0.canary.10404");
|
497
497
|
} catch (e) {
|
498
498
|
/* log fn threw an exception. All logger methods are no-ops. */
|
499
499
|
return createLogger();
|
@@ -12856,7 +12856,12 @@
|
|
12856
12856
|
if (media) {
|
12857
12857
|
// Remove gap fragments
|
12858
12858
|
_this.fragmentTracker.removeFragmentsInRange(currentTime, Infinity, _this.playlistType, true);
|
12859
|
-
|
12859
|
+
|
12860
|
+
// Don't set lastCurrentTime with backward seeks (allows for frag selection with strict tolerances)
|
12861
|
+
var lastCurrentTime = _this.lastCurrentTime;
|
12862
|
+
if (currentTime > lastCurrentTime) {
|
12863
|
+
_this.lastCurrentTime = currentTime;
|
12864
|
+
}
|
12860
12865
|
if (!_this.loadingParts) {
|
12861
12866
|
var bufferEnd = Math.max(bufferInfo.end, currentTime);
|
12862
12867
|
var shouldLoadParts = _this.shouldLoadParts(_this.getLevelDetails(), bufferEnd);
|
@@ -13556,14 +13561,16 @@
|
|
13556
13561
|
}
|
13557
13562
|
};
|
13558
13563
|
_proto.getFwdBufferInfo = function getFwdBufferInfo(bufferable, type) {
|
13564
|
+
var _this$media;
|
13559
13565
|
var pos = this.getLoadPosition();
|
13560
13566
|
if (!isFiniteNumber(pos)) {
|
13561
13567
|
return null;
|
13562
13568
|
}
|
13563
|
-
|
13569
|
+
var backwardSeek = this.lastCurrentTime > pos;
|
13570
|
+
var maxBufferHole = backwardSeek || (_this$media = this.media) != null && _this$media.paused ? 0 : this.config.maxBufferHole;
|
13571
|
+
return this.getFwdBufferInfoAtPos(bufferable, pos, type, maxBufferHole);
|
13564
13572
|
};
|
13565
|
-
_proto.getFwdBufferInfoAtPos = function getFwdBufferInfoAtPos(bufferable, pos, type) {
|
13566
|
-
var maxBufferHole = this.config.maxBufferHole;
|
13573
|
+
_proto.getFwdBufferInfoAtPos = function getFwdBufferInfoAtPos(bufferable, pos, type, maxBufferHole) {
|
13567
13574
|
var bufferInfo = BufferHelper.bufferInfo(bufferable, pos, maxBufferHole);
|
13568
13575
|
// Workaround flaw in getting forward buffer when maxBufferHole is smaller than gap at current pos
|
13569
13576
|
if (bufferInfo.len === 0 && bufferInfo.nextStart !== undefined) {
|
@@ -13659,7 +13666,7 @@
|
|
13659
13666
|
nextFragment = this.getNextFragment(this.nextLoadPosition, levelDetails);
|
13660
13667
|
if (nextFragment && !nextFragment.gap && bufferInfo.nextStart) {
|
13661
13668
|
// Media buffered after GAP tags should not make the next buffer timerange exceed forward buffer length
|
13662
|
-
var nextbufferInfo = this.getFwdBufferInfoAtPos(this.mediaBuffer ? this.mediaBuffer : this.media, bufferInfo.nextStart, playlistType);
|
13669
|
+
var nextbufferInfo = this.getFwdBufferInfoAtPos(this.mediaBuffer ? this.mediaBuffer : this.media, bufferInfo.nextStart, playlistType, 0);
|
13663
13670
|
if (nextbufferInfo !== null && bufferInfo.len + nextbufferInfo.len >= maxBufLen) {
|
13664
13671
|
// Returning here might result in not finding an audio and video candiate to skip to
|
13665
13672
|
var sn = nextFragment.sn;
|
@@ -13769,7 +13776,9 @@
|
|
13769
13776
|
}
|
13770
13777
|
var frag;
|
13771
13778
|
if (bufferEnd < end) {
|
13772
|
-
var
|
13779
|
+
var _this$media2;
|
13780
|
+
var backwardSeek = bufferEnd < this.lastCurrentTime;
|
13781
|
+
var lookupTolerance = backwardSeek || bufferEnd > end - maxFragLookUpTolerance || (_this$media2 = this.media) != null && _this$media2.paused ? 0 : maxFragLookUpTolerance;
|
13773
13782
|
// Remove the tolerance if it would put the bufferEnd past the actual end of stream
|
13774
13783
|
// Uses buffer and sequence number to calculate switch segment (required if using EXT-X-DISCONTINUITY-SEQUENCE)
|
13775
13784
|
frag = findFragmentByPTS(fragPrevious, fragments, bufferEnd, lookupTolerance);
|
@@ -22000,7 +22009,7 @@
|
|
22000
22009
|
* Get the video-dev/hls.js package version.
|
22001
22010
|
*/
|
22002
22011
|
function get() {
|
22003
|
-
return "1.5.13-0.canary.
|
22012
|
+
return "1.5.13-0.canary.10404";
|
22004
22013
|
}
|
22005
22014
|
}, {
|
22006
22015
|
key: "Events",
|