rx-player 3.33.4-dev.2024080600 → 3.33.4-dev.2024081600

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/CHANGELOG.md CHANGED
@@ -1,5 +1,15 @@
1
1
  # Changelog
2
2
 
3
+ ## v3.33.4 (upcoming)
4
+
5
+ ### Bug fixes
6
+
7
+ - Compat: Fix autoPlay on Tizen when the content starts on a discontinuity [#1500]
8
+
9
+ ### Other improvements
10
+
11
+ - DASH: provide a more precize calculation for the timeshift buffer depth [#1492]
12
+
3
13
  ## v3.33.3
4
14
 
5
15
  ### Bug fixes
package/VERSION CHANGED
@@ -1 +1 @@
1
- 3.33.4-dev.2024080600
1
+ 3.33.4-dev.2024081600
@@ -88,7 +88,7 @@ var Player = /** @class */ (function (_super) {
88
88
  // Workaround to support Firefox autoplay on FF 42.
89
89
  // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1194624
90
90
  videoElement.preload = "auto";
91
- _this.version = /* PLAYER_VERSION */ "3.33.4-dev.2024080600";
91
+ _this.version = /* PLAYER_VERSION */ "3.33.4-dev.2024081600";
92
92
  _this.log = log;
93
93
  _this.state = "STOPPED";
94
94
  _this.videoElement = videoElement;
@@ -2511,5 +2511,5 @@ var Player = /** @class */ (function (_super) {
2511
2511
  Player._priv_currentlyUsedVideoElements = new WeakSet();
2512
2512
  return Player;
2513
2513
  }(EventEmitter));
2514
- Player.version = /* PLAYER_VERSION */ "3.33.4-dev.2024080600";
2514
+ Player.version = /* PLAYER_VERSION */ "3.33.4-dev.2024081600";
2515
2515
  export default Player;
@@ -355,6 +355,8 @@ var MediaSourceContentInitializer = /** @class */ (function (_super) {
355
355
  }, { clearSignal: cancelSignal, emitCurrentValue: true });
356
356
  var streamObserver = createStreamPlaybackObserver(playbackObserver, { autoPlay: autoPlay, manifest: manifest, initialPlayPerformed: initialPlayPerformed, initialSeekPerformed: initialSeekPerformed, speed: speed, startTime: initialTime }, cancelSignal);
357
357
  var rebufferingController = this._createRebufferingController(playbackObserver, manifest, speed, cancelSignal);
358
+ var contentTimeBoundariesObserver = this
359
+ ._createContentTimeBoundariesObserver(manifest, mediaSource, streamObserver, segmentBuffersStore, cancelSignal);
358
360
  if (mayMediaElementFailOnUndecipherableData) {
359
361
  // On some devices, just reload immediately when data become undecipherable
360
362
  manifest.addEventListener("decipherabilityUpdate", function (elts) {
@@ -363,8 +365,6 @@ var MediaSourceContentInitializer = /** @class */ (function (_super) {
363
365
  }
364
366
  }, cancelSignal);
365
367
  }
366
- var contentTimeBoundariesObserver = this
367
- ._createContentTimeBoundariesObserver(manifest, mediaSource, streamObserver, segmentBuffersStore, cancelSignal);
368
368
  /**
369
369
  * Emit a "loaded" events once the initial play has been performed and the
370
370
  * media can begin playback.
@@ -16,6 +16,7 @@
16
16
  import { shouldValidateMetadata } from "../../../compat";
17
17
  import { READY_STATES } from "../../../compat/browser_compatibility_types";
18
18
  import { isSafariMobile } from "../../../compat/browser_detection";
19
+ import isSeekingApproximate from "../../../compat/is_seeking_approximate";
19
20
  /* eslint-disable-next-line max-len */
20
21
  import shouldPreventSeekingAt0Initially from "../../../compat/should_prevent_seeking_at_0_initially";
21
22
  import { MediaError } from "../../../errors";
@@ -110,7 +111,8 @@ export default function performInitialSeekAndPlay(mediaElement, playbackObserver
110
111
  }
111
112
  if (!isAwaitingSeek &&
112
113
  !observation.seeking &&
113
- observation.rebuffering === null &&
114
+ ((isSeekingApproximate && observation.readyState >= 3) ||
115
+ observation.rebuffering === null) &&
114
116
  observation.readyState >= 1) {
115
117
  stopListening();
116
118
  onPlayable();
package/dist/rx-player.js CHANGED
@@ -726,6 +726,43 @@ var isNode = typeof window === "undefined";
726
726
 
727
727
  /***/ }),
728
728
 
729
+ /***/ 7913:
730
+ /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
731
+
732
+ "use strict";
733
+ /* harmony import */ var _browser_detection__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(443);
734
+ /**
735
+ * Copyright 2015 CANAL+ Group
736
+ *
737
+ * Licensed under the Apache License, Version 2.0 (the "License");
738
+ * you may not use this file except in compliance with the License.
739
+ * You may obtain a copy of the License at
740
+ *
741
+ * http://www.apache.org/licenses/LICENSE-2.0
742
+ *
743
+ * Unless required by applicable law or agreed to in writing, software
744
+ * distributed under the License is distributed on an "AS IS" BASIS,
745
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
746
+ * See the License for the specific language governing permissions and
747
+ * limitations under the License.
748
+ */
749
+
750
+ /**
751
+ * On some devices (right now only seen on Tizen), seeking through the
752
+ * `currentTime` property can lead to the browser re-seeking once the
753
+ * segments have been loaded to improve seeking performances (for
754
+ * example, by seeking right to an intra video frame).
755
+ *
756
+ * This can lead to conflicts with the RxPlayer code.
757
+ *
758
+ * This boolean is only `true` on the devices where this behavior has been
759
+ * observed.
760
+ */
761
+ var isSeekingApproximate = _browser_detection__WEBPACK_IMPORTED_MODULE_0__/* .isTizen */ .ZN;
762
+ /* harmony default export */ __webpack_exports__.A = (isSeekingApproximate);
763
+
764
+ /***/ }),
765
+
729
766
  /***/ 7402:
730
767
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
731
768
 
@@ -9609,7 +9646,7 @@ var currentMediaState = new WeakMap();
9609
9646
  /* harmony import */ var _utils_get_loaded_reference__WEBPACK_IMPORTED_MODULE_10__ = __webpack_require__(5097);
9610
9647
  /* harmony import */ var _utils_initial_seek_and_play__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(107);
9611
9648
  /* harmony import */ var _utils_initialize_content_decryption__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(6899);
9612
- /* harmony import */ var _utils_rebuffering_controller__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(3108);
9649
+ /* harmony import */ var _utils_rebuffering_controller__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(3137);
9613
9650
  /* harmony import */ var _utils_throw_on_media_error__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(8345);
9614
9651
 
9615
9652
  /**
@@ -20132,8 +20169,8 @@ function getMaximumLiveSeekablePosition(contentLastPosition) {
20132
20169
  // authorize exceptionally going over it.
20133
20170
  return Math.max(Math.pow(2, 32), contentLastPosition + YEAR_IN_SECONDS);
20134
20171
  }
20135
- // EXTERNAL MODULE: ./src/core/init/utils/rebuffering_controller.ts + 1 modules
20136
- var rebuffering_controller = __webpack_require__(3108);
20172
+ // EXTERNAL MODULE: ./src/core/init/utils/rebuffering_controller.ts
20173
+ var rebuffering_controller = __webpack_require__(3137);
20137
20174
  ;// CONCATENATED MODULE: ./src/core/init/utils/stream_events_emitter/are_same_stream_events.ts
20138
20175
  /**
20139
20176
  * Copyright 2015 CANAL+ Group
@@ -20846,6 +20883,7 @@ var MediaSourceContentInitializer = /*#__PURE__*/function (_ContentInitializer)
20846
20883
  startTime: initialTime
20847
20884
  }, cancelSignal);
20848
20885
  var rebufferingController = this._createRebufferingController(playbackObserver, manifest, speed, cancelSignal);
20886
+ var contentTimeBoundariesObserver = this._createContentTimeBoundariesObserver(manifest, mediaSource, streamObserver, segmentBuffersStore, cancelSignal);
20849
20887
  if (may_media_element_fail_on_undecipherable_data) {
20850
20888
  // On some devices, just reload immediately when data become undecipherable
20851
20889
  manifest.addEventListener("decipherabilityUpdate", function (elts) {
@@ -20856,7 +20894,6 @@ var MediaSourceContentInitializer = /*#__PURE__*/function (_ContentInitializer)
20856
20894
  }
20857
20895
  }, cancelSignal);
20858
20896
  }
20859
- var contentTimeBoundariesObserver = this._createContentTimeBoundariesObserver(manifest, mediaSource, streamObserver, segmentBuffersStore, cancelSignal);
20860
20897
  /**
20861
20898
  * Emit a "loaded" events once the initial play has been performed and the
20862
20899
  * media can begin playback.
@@ -21371,6 +21408,8 @@ var should_validate_metadata = __webpack_require__(2097);
21371
21408
  var browser_compatibility_types = __webpack_require__(9770);
21372
21409
  // EXTERNAL MODULE: ./src/compat/browser_detection.ts
21373
21410
  var browser_detection = __webpack_require__(443);
21411
+ // EXTERNAL MODULE: ./src/compat/is_seeking_approximate.ts
21412
+ var is_seeking_approximate = __webpack_require__(7913);
21374
21413
  ;// CONCATENATED MODULE: ./src/compat/should_prevent_seeking_at_0_initially.ts
21375
21414
 
21376
21415
  /**
@@ -21414,6 +21453,7 @@ var reference = __webpack_require__(8315);
21414
21453
 
21415
21454
 
21416
21455
 
21456
+
21417
21457
  /* eslint-disable-next-line max-len */
21418
21458
 
21419
21459
 
@@ -21503,7 +21543,7 @@ function performInitialSeekAndPlay(mediaElement, playbackObserver, startTime, mu
21503
21543
  isAwaitingSeek = false;
21504
21544
  return;
21505
21545
  }
21506
- if (!isAwaitingSeek && !observation.seeking && observation.rebuffering === null && observation.readyState >= 1) {
21546
+ if (!isAwaitingSeek && !observation.seeking && (is_seeking_approximate/* default */.A && observation.readyState >= 3 || observation.rebuffering === null) && observation.readyState >= 1) {
21507
21547
  stopListening();
21508
21548
  onPlayable();
21509
21549
  }
@@ -21720,63 +21760,21 @@ function initializeContentDecryption(mediaElement, keySystems, protectionRef, ca
21720
21760
 
21721
21761
  /***/ }),
21722
21762
 
21723
- /***/ 3108:
21763
+ /***/ 3137:
21724
21764
  /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
21725
21765
 
21726
21766
  "use strict";
21727
-
21728
- // EXPORTS
21729
- __webpack_require__.d(__webpack_exports__, {
21730
- A: function() { return /* binding */ RebufferingController; }
21731
- });
21732
-
21733
- // EXTERNAL MODULE: ./node_modules/@babel/runtime/helpers/esm/inheritsLoose.js
21734
- var inheritsLoose = __webpack_require__(7387);
21735
- // EXTERNAL MODULE: ./src/compat/browser_detection.ts
21736
- var browser_detection = __webpack_require__(443);
21737
- ;// CONCATENATED MODULE: ./src/compat/is_seeking_approximate.ts
21738
- /**
21739
- * Copyright 2015 CANAL+ Group
21740
- *
21741
- * Licensed under the Apache License, Version 2.0 (the "License");
21742
- * you may not use this file except in compliance with the License.
21743
- * You may obtain a copy of the License at
21744
- *
21745
- * http://www.apache.org/licenses/LICENSE-2.0
21746
- *
21747
- * Unless required by applicable law or agreed to in writing, software
21748
- * distributed under the License is distributed on an "AS IS" BASIS,
21749
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
21750
- * See the License for the specific language governing permissions and
21751
- * limitations under the License.
21752
- */
21753
-
21754
- /**
21755
- * On some devices (right now only seen on Tizen), seeking through the
21756
- * `currentTime` property can lead to the browser re-seeking once the
21757
- * segments have been loaded to improve seeking performances (for
21758
- * example, by seeking right to an intra video frame).
21759
- *
21760
- * This can lead to conflicts with the RxPlayer code.
21761
- *
21762
- * This boolean is only `true` on the devices where this behavior has been
21763
- * observed.
21764
- */
21765
- var isSeekingApproximate = browser_detection/* isTizen */.ZN;
21766
- /* harmony default export */ var is_seeking_approximate = (isSeekingApproximate);
21767
- // EXTERNAL MODULE: ./src/config.ts + 2 modules
21768
- var config = __webpack_require__(5151);
21769
- // EXTERNAL MODULE: ./src/errors/media_error.ts
21770
- var media_error = __webpack_require__(5575);
21771
- // EXTERNAL MODULE: ./src/log.ts + 1 modules
21772
- var log = __webpack_require__(9477);
21773
- // EXTERNAL MODULE: ./src/utils/event_emitter.ts
21774
- var event_emitter = __webpack_require__(79);
21775
- // EXTERNAL MODULE: ./src/utils/ranges.ts
21776
- var ranges = __webpack_require__(3650);
21777
- // EXTERNAL MODULE: ./src/utils/task_canceller.ts
21778
- var task_canceller = __webpack_require__(2507);
21779
- ;// CONCATENATED MODULE: ./src/core/init/utils/rebuffering_controller.ts
21767
+ /* harmony export */ __webpack_require__.d(__webpack_exports__, {
21768
+ /* harmony export */ A: function() { return /* binding */ RebufferingController; }
21769
+ /* harmony export */ });
21770
+ /* harmony import */ var _babel_runtime_helpers_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(7387);
21771
+ /* harmony import */ var _compat_is_seeking_approximate__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(7913);
21772
+ /* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(5151);
21773
+ /* harmony import */ var _errors__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(5575);
21774
+ /* harmony import */ var _log__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(9477);
21775
+ /* harmony import */ var _utils_event_emitter__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(79);
21776
+ /* harmony import */ var _utils_ranges__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(3650);
21777
+ /* harmony import */ var _utils_task_canceller__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(2507);
21780
21778
 
21781
21779
  /**
21782
21780
  * Copyright 2015 CANAL+ Group
@@ -21827,10 +21825,10 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
21827
21825
  _this._speed = speed;
21828
21826
  _this._discontinuitiesStore = [];
21829
21827
  _this._isStarted = false;
21830
- _this._canceller = new task_canceller/* default */.Ay();
21828
+ _this._canceller = new _utils_task_canceller__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Ay();
21831
21829
  return _this;
21832
21830
  }
21833
- (0,inheritsLoose/* default */.A)(RebufferingController, _EventEmitter);
21831
+ (0,_babel_runtime_helpers_inheritsLoose__WEBPACK_IMPORTED_MODULE_1__/* ["default"] */ .A)(RebufferingController, _EventEmitter);
21834
21832
  var _proto = RebufferingController.prototype;
21835
21833
  _proto.start = function start() {
21836
21834
  var _this2 = this;
@@ -21876,14 +21874,14 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
21876
21874
  readyState = observation.readyState,
21877
21875
  rebuffering = observation.rebuffering,
21878
21876
  freezing = observation.freezing;
21879
- var _config$getCurrent = config/* default */.A.getCurrent(),
21877
+ var _config$getCurrent = _config__WEBPACK_IMPORTED_MODULE_2__/* ["default"] */ .A.getCurrent(),
21880
21878
  BUFFER_DISCONTINUITY_THRESHOLD = _config$getCurrent.BUFFER_DISCONTINUITY_THRESHOLD,
21881
21879
  FORCE_DISCONTINUITY_SEEK_DELAY = _config$getCurrent.FORCE_DISCONTINUITY_SEEK_DELAY,
21882
21880
  FREEZING_STALLED_DELAY = _config$getCurrent.FREEZING_STALLED_DELAY,
21883
21881
  UNFREEZING_SEEK_DELAY = _config$getCurrent.UNFREEZING_SEEK_DELAY,
21884
21882
  UNFREEZING_DELTA_POSITION = _config$getCurrent.UNFREEZING_DELTA_POSITION;
21885
- if (!observation.seeking && is_seeking_approximate && ignoredStallTimeStamp === null && lastSeekingPosition !== null && observation.position < lastSeekingPosition) {
21886
- log/* default */.A.debug("Init: the device appeared to have seeked back by itself.");
21883
+ if (!observation.seeking && _compat_is_seeking_approximate__WEBPACK_IMPORTED_MODULE_3__/* ["default"] */ .A && ignoredStallTimeStamp === null && lastSeekingPosition !== null && observation.position < lastSeekingPosition) {
21884
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.debug("Init: the device appeared to have seeked back by itself.");
21887
21885
  var now = performance.now();
21888
21886
  ignoredStallTimeStamp = now;
21889
21887
  }
@@ -21892,7 +21890,7 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
21892
21890
  var _now = performance.now();
21893
21891
  var referenceTimestamp = prevFreezingState === null ? freezing.timestamp : prevFreezingState.attemptTimestamp;
21894
21892
  if (_now - referenceTimestamp > UNFREEZING_SEEK_DELAY) {
21895
- log/* default */.A.warn("Init: trying to seek to un-freeze player");
21893
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.warn("Init: trying to seek to un-freeze player");
21896
21894
  _this2._playbackObserver.setCurrentTime(_this2._playbackObserver.getCurrentTime() + UNFREEZING_DELTA_POSITION);
21897
21895
  prevFreezingState = {
21898
21896
  attemptTimestamp: _now
@@ -21934,11 +21932,11 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
21934
21932
  var _now2 = performance.now();
21935
21933
  if (_now2 - ignoredStallTimeStamp < FORCE_DISCONTINUITY_SEEK_DELAY) {
21936
21934
  playbackRateUpdater.stopRebuffering();
21937
- log/* default */.A.debug("Init: letting the device get out of a stall by itself");
21935
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.debug("Init: letting the device get out of a stall by itself");
21938
21936
  _this2.trigger("stalled", stalledReason);
21939
21937
  return;
21940
21938
  } else {
21941
- log/* default */.A.warn("Init: ignored stall for too long, checking discontinuity", _now2 - ignoredStallTimeStamp);
21939
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.warn("Init: ignored stall for too long, checking discontinuity", _now2 - ignoredStallTimeStamp);
21942
21940
  }
21943
21941
  }
21944
21942
  ignoredStallTimeStamp = null;
@@ -21954,9 +21952,9 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
21954
21952
  if (skippableDiscontinuity !== null) {
21955
21953
  var realSeekTime = skippableDiscontinuity + 0.001;
21956
21954
  if (realSeekTime <= _this2._playbackObserver.getCurrentTime()) {
21957
- log/* default */.A.info("Init: position to seek already reached, no seeking", _this2._playbackObserver.getCurrentTime(), realSeekTime);
21955
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.info("Init: position to seek already reached, no seeking", _this2._playbackObserver.getCurrentTime(), realSeekTime);
21958
21956
  } else {
21959
- log/* default */.A.warn("SA: skippable discontinuity found in the stream", position, realSeekTime);
21957
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.warn("SA: skippable discontinuity found in the stream", position, realSeekTime);
21960
21958
  _this2._playbackObserver.setCurrentTime(realSeekTime);
21961
21959
  _this2.trigger("warning", generateDiscontinuityError(stalledPosition, realSeekTime));
21962
21960
  return;
@@ -21971,11 +21969,11 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
21971
21969
  // calculate a stalled state. This is useful for some
21972
21970
  // implementation that might drop an injected segment, or in
21973
21971
  // case of small discontinuity in the content.
21974
- var nextBufferRangeGap = (0,ranges/* getNextRangeGap */.Td)(buffered, freezePosition);
21972
+ var nextBufferRangeGap = (0,_utils_ranges__WEBPACK_IMPORTED_MODULE_5__/* .getNextRangeGap */ .Td)(buffered, freezePosition);
21975
21973
  if (_this2._speed.getValue() > 0 && nextBufferRangeGap < BUFFER_DISCONTINUITY_THRESHOLD) {
21976
21974
  var seekTo = freezePosition + nextBufferRangeGap + EPSILON;
21977
21975
  if (_this2._playbackObserver.getCurrentTime() < seekTo) {
21978
- log/* default */.A.warn("Init: discontinuity encountered inferior to the threshold", freezePosition, seekTo, BUFFER_DISCONTINUITY_THRESHOLD);
21976
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.warn("Init: discontinuity encountered inferior to the threshold", freezePosition, seekTo, BUFFER_DISCONTINUITY_THRESHOLD);
21979
21977
  _this2._playbackObserver.setCurrentTime(seekTo);
21980
21978
  _this2.trigger("warning", generateDiscontinuityError(freezePosition, seekTo));
21981
21979
  return;
@@ -22035,7 +22033,7 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
22035
22033
  var rebufferingPos = (_a = observation.rebuffering.position) !== null && _a !== void 0 ? _a : currPos;
22036
22034
  var lockedPeriodStart = period.start;
22037
22035
  if (currPos < lockedPeriodStart && Math.abs(rebufferingPos - lockedPeriodStart) < 1) {
22038
- log/* default */.A.warn("Init: rebuffering because of a future locked stream.\n" + "Trying to unlock by seeking to the next Period");
22036
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.warn("Init: rebuffering because of a future locked stream.\n" + "Trying to unlock by seeking to the next Period");
22039
22037
  this._playbackObserver.setCurrentTime(lockedPeriodStart + 0.001);
22040
22038
  }
22041
22039
  }
@@ -22047,7 +22045,7 @@ var RebufferingController = /*#__PURE__*/function (_EventEmitter) {
22047
22045
  this._canceller.cancel();
22048
22046
  };
22049
22047
  return RebufferingController;
22050
- }(event_emitter/* default */.A);
22048
+ }(_utils_event_emitter__WEBPACK_IMPORTED_MODULE_6__/* ["default"] */ .A);
22051
22049
  /**
22052
22050
  * @param {Array.<Object>} discontinuitiesStore
22053
22051
  * @param {Object} manifest
@@ -22079,14 +22077,14 @@ function findSeekableDiscontinuity(discontinuitiesStore, manifest, stalledPositi
22079
22077
  if (nextPeriod !== null) {
22080
22078
  discontinuityEnd = nextPeriod.start + EPSILON;
22081
22079
  } else {
22082
- log/* default */.A.warn("Init: discontinuity at Period's end but no next Period");
22080
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.warn("Init: discontinuity at Period's end but no next Period");
22083
22081
  }
22084
22082
  } else if (stalledPosition < end + EPSILON) {
22085
22083
  discontinuityEnd = end + EPSILON;
22086
22084
  }
22087
22085
  }
22088
22086
  if (discontinuityEnd !== undefined) {
22089
- log/* default */.A.info("Init: discontinuity found", stalledPosition, discontinuityEnd);
22087
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.info("Init: discontinuity found", stalledPosition, discontinuityEnd);
22090
22088
  maxDiscontinuityEnd = maxDiscontinuityEnd !== null && maxDiscontinuityEnd > discontinuityEnd ? maxDiscontinuityEnd : discontinuityEnd;
22091
22089
  }
22092
22090
  }
@@ -22155,7 +22153,7 @@ function updateDiscontinuitiesStore(discontinuitiesStore, evt, observation) {
22155
22153
  * @returns {Error}
22156
22154
  */
22157
22155
  function generateDiscontinuityError(stalledPosition, seekTo) {
22158
- return new media_error/* default */.A("DISCONTINUITY_ENCOUNTERED", "A discontinuity has been encountered at position " + String(stalledPosition) + ", seeked at position " + String(seekTo));
22156
+ return new _errors__WEBPACK_IMPORTED_MODULE_7__/* ["default"] */ .A("DISCONTINUITY_ENCOUNTERED", "A discontinuity has been encountered at position " + String(stalledPosition) + ", seeked at position " + String(seekTo));
22159
22157
  }
22160
22158
  /**
22161
22159
  * Manage playback speed, allowing to force a playback rate of `0` when
@@ -22174,7 +22172,7 @@ var PlaybackRateUpdater = /*#__PURE__*/function () {
22174
22172
  * @param {Object} speed
22175
22173
  */
22176
22174
  function PlaybackRateUpdater(playbackObserver, speed) {
22177
- this._speedUpdateCanceller = new task_canceller/* default */.Ay();
22175
+ this._speedUpdateCanceller = new _utils_task_canceller__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Ay();
22178
22176
  this._isRebuffering = false;
22179
22177
  this._playbackObserver = playbackObserver;
22180
22178
  this._isDisposed = false;
@@ -22193,7 +22191,7 @@ var PlaybackRateUpdater = /*#__PURE__*/function () {
22193
22191
  }
22194
22192
  this._isRebuffering = true;
22195
22193
  this._speedUpdateCanceller.cancel();
22196
- log/* default */.A.info("Init: Pause playback to build buffer");
22194
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.info("Init: Pause playback to build buffer");
22197
22195
  this._playbackObserver.setPlaybackRate(0);
22198
22196
  }
22199
22197
  /**
@@ -22207,7 +22205,7 @@ var PlaybackRateUpdater = /*#__PURE__*/function () {
22207
22205
  return;
22208
22206
  }
22209
22207
  this._isRebuffering = false;
22210
- this._speedUpdateCanceller = new task_canceller/* default */.Ay();
22208
+ this._speedUpdateCanceller = new _utils_task_canceller__WEBPACK_IMPORTED_MODULE_0__/* ["default"] */ .Ay();
22211
22209
  this._updateSpeed();
22212
22210
  }
22213
22211
  /**
@@ -22224,7 +22222,7 @@ var PlaybackRateUpdater = /*#__PURE__*/function () {
22224
22222
  _proto2._updateSpeed = function _updateSpeed() {
22225
22223
  var _this3 = this;
22226
22224
  this._speed.onUpdate(function (lastSpeed) {
22227
- log/* default */.A.info("Init: Resume playback speed", lastSpeed);
22225
+ _log__WEBPACK_IMPORTED_MODULE_4__/* ["default"] */ .A.info("Init: Resume playback speed", lastSpeed);
22228
22226
  _this3._playbackObserver.setPlaybackRate(lastSpeed);
22229
22227
  }, {
22230
22228
  clearSignal: this._speedUpdateCanceller.signal,
@@ -53677,7 +53675,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
53677
53675
  // Workaround to support Firefox autoplay on FF 42.
53678
53676
  // See: https://bugzilla.mozilla.org/show_bug.cgi?id=1194624
53679
53677
  videoElement.preload = "auto";
53680
- _this.version = /* PLAYER_VERSION */"3.33.4-dev.2024080600";
53678
+ _this.version = /* PLAYER_VERSION */"3.33.4-dev.2024081600";
53681
53679
  _this.log = src_log/* default */.A;
53682
53680
  _this.state = "STOPPED";
53683
53681
  _this.videoElement = videoElement;
@@ -56165,7 +56163,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
56165
56163
  * Use of a WeakSet ensure the object is garbage collected if it's not used anymore.
56166
56164
  */
56167
56165
  Player._priv_currentlyUsedVideoElements = new WeakSet();
56168
- Player.version = /* PLAYER_VERSION */"3.33.4-dev.2024080600";
56166
+ Player.version = /* PLAYER_VERSION */"3.33.4-dev.2024081600";
56169
56167
  /* harmony default export */ var public_api = (Player);
56170
56168
  ;// CONCATENATED MODULE: ./src/core/api/index.ts
56171
56169
  /**