hls.js 1.5.2-0.canary.9965 → 1.5.2-0.canary.9969
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-demo.js +4 -5
- package/dist/hls-demo.js.map +1 -1
- package/dist/hls.js +30 -14
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +28 -12
- 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 +31 -14
- 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 +33 -16
- 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 +1 -1
- package/src/controller/abr-controller.ts +3 -2
- package/src/controller/audio-stream-controller.ts +1 -1
- package/src/controller/stream-controller.ts +2 -1
- package/src/controller/subtitle-stream-controller.ts +1 -1
- package/src/utils/mp4-tools.ts +28 -9
package/dist/hls.light.js
CHANGED
@@ -525,7 +525,7 @@
|
|
525
525
|
// Some browsers don't allow to use bind on console object anyway
|
526
526
|
// fallback to default if needed
|
527
527
|
try {
|
528
|
-
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.5.2-0.canary.
|
528
|
+
newLogger.log("Debug logs enabled for \"" + context + "\" in hls.js version " + "1.5.2-0.canary.9969");
|
529
529
|
} catch (e) {
|
530
530
|
/* log fn threw an exception. All logger methods are no-ops. */
|
531
531
|
return createLogger();
|
@@ -1602,6 +1602,12 @@
|
|
1602
1602
|
var val = readSint32(buffer, offset);
|
1603
1603
|
return val < 0 ? 4294967296 + val : val;
|
1604
1604
|
}
|
1605
|
+
function readUint64(buffer, offset) {
|
1606
|
+
var result = readUint32(buffer, offset);
|
1607
|
+
result *= Math.pow(2, 32);
|
1608
|
+
result += readUint32(buffer, offset + 4);
|
1609
|
+
return result;
|
1610
|
+
}
|
1605
1611
|
function readSint32(buffer, offset) {
|
1606
1612
|
return buffer[offset] << 24 | buffer[offset + 1] << 16 | buffer[offset + 2] << 8 | buffer[offset + 3];
|
1607
1613
|
}
|
@@ -1664,15 +1670,14 @@
|
|
1664
1670
|
var index = 8;
|
1665
1671
|
var timescale = readUint32(sidx, index);
|
1666
1672
|
index += 4;
|
1667
|
-
|
1668
|
-
// TODO: parse earliestPresentationTime and firstOffset
|
1669
|
-
// usually zero in our case
|
1670
1673
|
var earliestPresentationTime = 0;
|
1671
1674
|
var firstOffset = 0;
|
1672
1675
|
if (version === 0) {
|
1673
|
-
index +=
|
1676
|
+
earliestPresentationTime = readUint32(sidx, index += 4);
|
1677
|
+
firstOffset = readUint32(sidx, index += 4);
|
1674
1678
|
} else {
|
1675
|
-
index +=
|
1679
|
+
earliestPresentationTime = readUint64(sidx, index += 8);
|
1680
|
+
firstOffset = readUint64(sidx, index += 8);
|
1676
1681
|
}
|
1677
1682
|
|
1678
1683
|
// skip reserved
|
@@ -2122,17 +2127,24 @@
|
|
2122
2127
|
}
|
2123
2128
|
if (videoDuration === 0 && audioDuration === 0) {
|
2124
2129
|
// If duration samples are not available in the traf use sidx subsegment_duration
|
2130
|
+
var sidxMinStart = Infinity;
|
2131
|
+
var sidxMaxEnd = 0;
|
2125
2132
|
var sidxDuration = 0;
|
2126
2133
|
var sidxs = findBox(data, ['sidx']);
|
2127
2134
|
for (var _i2 = 0; _i2 < sidxs.length; _i2++) {
|
2128
2135
|
var sidx = parseSegmentIndex(sidxs[_i2]);
|
2129
2136
|
if (sidx != null && sidx.references) {
|
2130
|
-
|
2137
|
+
sidxMinStart = Math.min(sidxMinStart, sidx.earliestPresentationTime / sidx.timescale);
|
2138
|
+
var subSegmentDuration = sidx.references.reduce(function (dur, ref) {
|
2131
2139
|
return dur + ref.info.duration || 0;
|
2132
2140
|
}, 0);
|
2141
|
+
sidxMaxEnd = Math.max(sidxMaxEnd, subSegmentDuration + sidx.earliestPresentationTime / sidx.timescale);
|
2142
|
+
sidxDuration = sidxMaxEnd - sidxMinStart;
|
2133
2143
|
}
|
2134
2144
|
}
|
2135
|
-
|
2145
|
+
if (sidxDuration && isFiniteNumber(sidxDuration)) {
|
2146
|
+
return sidxDuration;
|
2147
|
+
}
|
2136
2148
|
}
|
2137
2149
|
if (videoDuration) {
|
2138
2150
|
return videoDuration;
|
@@ -7021,8 +7033,11 @@
|
|
7021
7033
|
return nextABRAutoLevel;
|
7022
7034
|
},
|
7023
7035
|
set: function set(nextLevel) {
|
7024
|
-
var
|
7025
|
-
|
7036
|
+
var _this$hls3 = this.hls,
|
7037
|
+
maxAutoLevel = _this$hls3.maxAutoLevel,
|
7038
|
+
minAutoLevel = _this$hls3.minAutoLevel;
|
7039
|
+
var value = Math.min(Math.max(nextLevel, minAutoLevel), maxAutoLevel);
|
7040
|
+
if (this._nextAutoLevel !== value) {
|
7026
7041
|
this.nextAutoLevelKey = '';
|
7027
7042
|
this._nextAutoLevel = value;
|
7028
7043
|
}
|
@@ -19244,7 +19259,8 @@
|
|
19244
19259
|
}
|
19245
19260
|
// set new level to playlist loader : this will trigger start level load
|
19246
19261
|
// hls.nextLoadLevel remains until it is set to a new value or until a new frag is successfully loaded
|
19247
|
-
|
19262
|
+
hls.nextLoadLevel = startLevel;
|
19263
|
+
this.level = hls.loadLevel;
|
19248
19264
|
this.loadedmetadata = false;
|
19249
19265
|
}
|
19250
19266
|
// if startPosition undefined but lastCurrentTime set, set startPosition to last currentTime
|
@@ -21132,7 +21148,7 @@
|
|
21132
21148
|
* Get the video-dev/hls.js package version.
|
21133
21149
|
*/
|
21134
21150
|
function get() {
|
21135
|
-
return "1.5.2-0.canary.
|
21151
|
+
return "1.5.2-0.canary.9969";
|
21136
21152
|
}
|
21137
21153
|
}, {
|
21138
21154
|
key: "Events",
|