hls.js 1.5.7-0.canary.10021 → 1.5.7-0.canary.10023
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 +30 -43
- package/dist/hls.js.d.ts +19 -28
- package/dist/hls.js.map +1 -1
- package/dist/hls.light.js +17 -31
- 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 -33
- 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 +30 -45
- package/dist/hls.mjs.map +1 -1
- package/dist/hls.worker.js +1 -1
- package/package.json +1 -1
- package/src/controller/audio-stream-controller.ts +27 -20
- package/src/controller/base-stream-controller.ts +3 -1
- package/src/controller/subtitle-stream-controller.ts +14 -11
- package/src/utils/buffer-helper.ts +12 -31
package/dist/hls.light.mjs
CHANGED
@@ -512,7 +512,7 @@ function enableLogs(debugConfig, context, id) {
|
|
512
512
|
// Some browsers don't allow to use bind on console object anyway
|
513
513
|
// fallback to default if needed
|
514
514
|
try {
|
515
|
-
newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.5.7-0.canary.
|
515
|
+
newLogger.log(`Debug logs enabled for "${context}" in hls.js version ${"1.5.7-0.canary.10023"}`);
|
516
516
|
} catch (e) {
|
517
517
|
/* log fn threw an exception. All logger methods are no-ops. */
|
518
518
|
return createLogger();
|
@@ -6808,40 +6808,29 @@ class BufferHelper {
|
|
6808
6808
|
* Return true if `media`'s buffered include `position`
|
6809
6809
|
*/
|
6810
6810
|
static isBuffered(media, position) {
|
6811
|
-
|
6812
|
-
|
6813
|
-
|
6814
|
-
|
6815
|
-
|
6816
|
-
return true;
|
6817
|
-
}
|
6811
|
+
if (media) {
|
6812
|
+
const buffered = BufferHelper.getBuffered(media);
|
6813
|
+
for (let i = buffered.length; i--;) {
|
6814
|
+
if (position >= buffered.start(i) && position <= buffered.end(i)) {
|
6815
|
+
return true;
|
6818
6816
|
}
|
6819
6817
|
}
|
6820
|
-
} catch (error) {
|
6821
|
-
// this is to catch
|
6822
|
-
// InvalidStateError: Failed to read the 'buffered' property from 'SourceBuffer':
|
6823
|
-
// This SourceBuffer has been removed from the parent media source
|
6824
6818
|
}
|
6825
6819
|
return false;
|
6826
6820
|
}
|
6827
6821
|
static bufferInfo(media, pos, maxHoleDuration) {
|
6828
|
-
|
6829
|
-
|
6830
|
-
|
6822
|
+
if (media) {
|
6823
|
+
const vbuffered = BufferHelper.getBuffered(media);
|
6824
|
+
if (vbuffered.length) {
|
6831
6825
|
const buffered = [];
|
6832
|
-
let i;
|
6833
|
-
for (i = 0; i < vbuffered.length; i++) {
|
6826
|
+
for (let i = 0; i < vbuffered.length; i++) {
|
6834
6827
|
buffered.push({
|
6835
6828
|
start: vbuffered.start(i),
|
6836
6829
|
end: vbuffered.end(i)
|
6837
6830
|
});
|
6838
6831
|
}
|
6839
|
-
return
|
6832
|
+
return BufferHelper.bufferedInfo(buffered, pos, maxHoleDuration);
|
6840
6833
|
}
|
6841
|
-
} catch (error) {
|
6842
|
-
// this is to catch
|
6843
|
-
// InvalidStateError: Failed to read the 'buffered' property from 'SourceBuffer':
|
6844
|
-
// This SourceBuffer has been removed from the parent media source
|
6845
6834
|
}
|
6846
6835
|
return {
|
6847
6836
|
len: 0,
|
@@ -6853,14 +6842,7 @@ class BufferHelper {
|
|
6853
6842
|
static bufferedInfo(buffered, pos, maxHoleDuration) {
|
6854
6843
|
pos = Math.max(0, pos);
|
6855
6844
|
// sort on buffer.start/smaller end (IE does not always return sorted buffered range)
|
6856
|
-
buffered.sort(
|
6857
|
-
const diff = a.start - b.start;
|
6858
|
-
if (diff) {
|
6859
|
-
return diff;
|
6860
|
-
} else {
|
6861
|
-
return b.end - a.end;
|
6862
|
-
}
|
6863
|
-
});
|
6845
|
+
buffered.sort((a, b) => a.start - b.start || b.end - a.end);
|
6864
6846
|
let buffered2 = [];
|
6865
6847
|
if (maxHoleDuration) {
|
6866
6848
|
// there might be some small holes between buffer time range
|
@@ -6927,7 +6909,7 @@ class BufferHelper {
|
|
6927
6909
|
*/
|
6928
6910
|
static getBuffered(media) {
|
6929
6911
|
try {
|
6930
|
-
return media.buffered;
|
6912
|
+
return media.buffered || noopBuffered;
|
6931
6913
|
} catch (e) {
|
6932
6914
|
logger.log('failed to get media.buffered', e);
|
6933
6915
|
return noopBuffered;
|
@@ -13285,7 +13267,9 @@ class BaseStreamController extends TaskLoop {
|
|
13285
13267
|
this.log('Reset loading state');
|
13286
13268
|
this.fragCurrent = null;
|
13287
13269
|
this.fragPrevious = null;
|
13288
|
-
this.state
|
13270
|
+
if (this.state !== State.STOPPED) {
|
13271
|
+
this.state = State.IDLE;
|
13272
|
+
}
|
13289
13273
|
}
|
13290
13274
|
resetStartWhenNotLoaded(level) {
|
13291
13275
|
// if loadedmetadata is not set, it means that first frag request failed
|
@@ -20123,7 +20107,7 @@ class Hls {
|
|
20123
20107
|
* Get the video-dev/hls.js package version.
|
20124
20108
|
*/
|
20125
20109
|
static get version() {
|
20126
|
-
return "1.5.7-0.canary.
|
20110
|
+
return "1.5.7-0.canary.10023";
|
20127
20111
|
}
|
20128
20112
|
|
20129
20113
|
/**
|