hls.js 1.5.7-0.canary.10022 → 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.
@@ -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.10022"}`);
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
- try {
6812
- if (media) {
6813
- const buffered = BufferHelper.getBuffered(media);
6814
- for (let i = 0; i < buffered.length; i++) {
6815
- if (position >= buffered.start(i) && position <= buffered.end(i)) {
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
- try {
6829
- if (media) {
6830
- const vbuffered = BufferHelper.getBuffered(media);
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 this.bufferedInfo(buffered, pos, maxHoleDuration);
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(function (a, b) {
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;
@@ -20125,7 +20107,7 @@ class Hls {
20125
20107
  * Get the video-dev/hls.js package version.
20126
20108
  */
20127
20109
  static get version() {
20128
- return "1.5.7-0.canary.10022";
20110
+ return "1.5.7-0.canary.10023";
20129
20111
  }
20130
20112
 
20131
20113
  /**