rx-player 3.28.0-dev.2022062300 → 3.28.0-dev.2022071100
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 +2 -1
- package/VERSION +1 -1
- package/dist/_esm5.processed/compat/event_listeners.js +6 -1
- package/dist/_esm5.processed/core/adaptive/adaptive_representation_selector.js +1 -6
- package/dist/_esm5.processed/core/api/playback_observer.d.ts +47 -35
- package/dist/_esm5.processed/core/api/playback_observer.js +120 -117
- package/dist/_esm5.processed/core/api/public_api.d.ts +4 -1
- package/dist/_esm5.processed/core/api/public_api.js +10 -5
- package/dist/_esm5.processed/core/init/content_time_boundaries_observer.js +1 -1
- package/dist/_esm5.processed/core/init/create_stream_playback_observer.d.ts +1 -1
- package/dist/_esm5.processed/core/init/create_stream_playback_observer.js +23 -6
- package/dist/_esm5.processed/core/init/initial_seek_and_play.js +3 -3
- package/dist/_esm5.processed/core/init/initialize_directfile.js +1 -1
- package/dist/_esm5.processed/core/init/load_on_media_source.js +1 -1
- package/dist/_esm5.processed/core/init/stall_avoider.js +12 -8
- package/dist/_esm5.processed/core/stream/orchestrator/stream_orchestrator.js +5 -4
- package/dist/_esm5.processed/core/stream/period/create_empty_adaptation_stream.js +1 -1
- package/dist/_esm5.processed/core/stream/period/period_stream.js +21 -5
- package/dist/_esm5.processed/core/stream/reload_after_switch.js +1 -1
- package/dist/_esm5.processed/core/stream/representation/append_segment_to_buffer.js +1 -1
- package/dist/_esm5.processed/core/stream/representation/representation_stream.js +1 -1
- package/dist/_esm5.processed/utils/reference.d.ts +2 -2
- package/dist/_esm5.processed/utils/reference.js +5 -4
- package/dist/rx-player.js +249 -180
- package/dist/rx-player.min.js +1 -1
- package/package.json +2 -2
- package/sonar-project.properties +1 -1
- package/src/compat/event_listeners.ts +6 -1
- package/src/core/adaptive/adaptive_representation_selector.ts +1 -7
- package/src/core/api/playback_observer.ts +185 -173
- package/src/core/api/public_api.ts +15 -6
- package/src/core/init/content_time_boundaries_observer.ts +1 -1
- package/src/core/init/create_stream_playback_observer.ts +69 -47
- package/src/core/init/initial_seek_and_play.ts +3 -3
- package/src/core/init/initialize_directfile.ts +1 -1
- package/src/core/init/load_on_media_source.ts +1 -1
- package/src/core/init/stall_avoider.ts +12 -9
- package/src/core/stream/orchestrator/stream_orchestrator.ts +5 -4
- package/src/core/stream/period/create_empty_adaptation_stream.ts +1 -1
- package/src/core/stream/period/period_stream.ts +33 -14
- package/src/core/stream/reload_after_switch.ts +1 -1
- package/src/core/stream/representation/append_segment_to_buffer.ts +1 -1
- package/src/core/stream/representation/representation_stream.ts +1 -1
- package/src/utils/reference.ts +7 -5
package/dist/rx-player.js
CHANGED
|
@@ -1981,7 +1981,7 @@ function getDocumentVisibilityRef(stopListening) {
|
|
|
1981
1981
|
var hidden = (0,is_non_empty_string/* default */.Z)(prefix) ? prefix + "Hidden" : "hidden";
|
|
1982
1982
|
var visibilityChangeEvent = (0,is_non_empty_string/* default */.Z)(prefix) ? prefix + "visibilitychange" : "visibilitychange";
|
|
1983
1983
|
var isHidden = document[hidden];
|
|
1984
|
-
var ref = (0,reference/* default */.ZP)(isHidden);
|
|
1984
|
+
var ref = (0,reference/* default */.ZP)(!isHidden);
|
|
1985
1985
|
addEventListener(document, visibilityChangeEvent, function () {
|
|
1986
1986
|
var isVisible = !document[hidden];
|
|
1987
1987
|
ref.setValueIfChanged(isVisible);
|
|
@@ -2007,11 +2007,14 @@ function getPageActivityRef(stopListening) {
|
|
|
2007
2007
|
var ref = (0,reference/* default */.ZP)(true);
|
|
2008
2008
|
stopListening.register(function () {
|
|
2009
2009
|
clearTimeout(currentTimeout);
|
|
2010
|
+
currentTimeout = undefined;
|
|
2010
2011
|
ref.finish();
|
|
2011
2012
|
});
|
|
2012
2013
|
isDocVisibleRef.onUpdate(function onDocVisibilityChange(isVisible) {
|
|
2013
2014
|
clearTimeout(currentTimeout); // clear potential previous timeout
|
|
2014
2015
|
|
|
2016
|
+
currentTimeout = undefined;
|
|
2017
|
+
|
|
2015
2018
|
if (!isVisible) {
|
|
2016
2019
|
var _config$getCurrent = config/* default.getCurrent */.Z.getCurrent(),
|
|
2017
2020
|
INACTIVITY_DELAY = _config$getCurrent.INACTIVITY_DELAY;
|
|
@@ -2117,6 +2120,7 @@ function getVideoVisibilityRef(pipStatus, stopListening) {
|
|
|
2117
2120
|
var ref = (0,reference/* default */.ZP)(true);
|
|
2118
2121
|
stopListening.register(function () {
|
|
2119
2122
|
clearTimeout(currentTimeout);
|
|
2123
|
+
currentTimeout = undefined;
|
|
2120
2124
|
ref.finish();
|
|
2121
2125
|
});
|
|
2122
2126
|
isDocVisibleRef.onUpdate(checkCurrentVisibility, {
|
|
@@ -2129,6 +2133,9 @@ function getVideoVisibilityRef(pipStatus, stopListening) {
|
|
|
2129
2133
|
return ref;
|
|
2130
2134
|
|
|
2131
2135
|
function checkCurrentVisibility() {
|
|
2136
|
+
clearTimeout(currentTimeout);
|
|
2137
|
+
currentTimeout = undefined;
|
|
2138
|
+
|
|
2132
2139
|
if (pipStatus.getValue().isEnabled || isDocVisibleRef.getValue()) {
|
|
2133
2140
|
ref.setValueIfChanged(true);
|
|
2134
2141
|
} else {
|
|
@@ -11035,7 +11042,7 @@ function waitUntilPlayable(observation$) {
|
|
|
11035
11042
|
}
|
|
11036
11043
|
/**
|
|
11037
11044
|
* Try to play content then handle autoplay errors.
|
|
11038
|
-
* @param {HTMLMediaElement}
|
|
11045
|
+
* @param {HTMLMediaElement} mediaElement
|
|
11039
11046
|
* @returns {Observable}
|
|
11040
11047
|
*/
|
|
11041
11048
|
|
|
@@ -11078,10 +11085,10 @@ function initialSeekAndPlay(_ref2) {
|
|
|
11078
11085
|
}));
|
|
11079
11086
|
var seekAndPlay$ = seek$.pipe((0,mergeMap/* mergeMap */.z)(function () {
|
|
11080
11087
|
if (!(0,should_validate_metadata/* default */.Z)() || mediaElement.duration > 0) {
|
|
11081
|
-
return waitUntilPlayable(playbackObserver.
|
|
11088
|
+
return waitUntilPlayable(playbackObserver.getReference().asObservable());
|
|
11082
11089
|
} else {
|
|
11083
11090
|
var error = new media_error/* default */.Z("MEDIA_ERR_NOT_LOADED_METADATA", "Cannot load automatically: your browser " + "falsely announced having loaded the content.");
|
|
11084
|
-
return waitUntilPlayable(playbackObserver.
|
|
11091
|
+
return waitUntilPlayable(playbackObserver.getReference().asObservable()).pipe((0,startWith/* startWith */.O)(events_generators/* default.warning */.Z.warning(error)));
|
|
11085
11092
|
}
|
|
11086
11093
|
}), (0,mergeMap/* mergeMap */.z)(function (evt) {
|
|
11087
11094
|
if (evt !== undefined) {
|
|
@@ -11342,7 +11349,7 @@ function initializeDirectfileContent(_ref) {
|
|
|
11342
11349
|
// through a throwing Observable.
|
|
11343
11350
|
|
|
11344
11351
|
var mediaError$ = (0,throw_on_media_error/* default */.Z)(mediaElement);
|
|
11345
|
-
var observation$ = playbackObserver.
|
|
11352
|
+
var observation$ = playbackObserver.getReference().asObservable(); // Set the speed set by the user on the media element while pausing a
|
|
11346
11353
|
// little longer while the buffer is empty.
|
|
11347
11354
|
|
|
11348
11355
|
var playbackRate$ = (0,update_playback_rate/* default */.Z)(mediaElement, speed, observation$).pipe((0,ignoreElements/* ignoreElements */.l)());
|
|
@@ -11667,7 +11674,7 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11667
11674
|
* order (first ordered by Period's start, then by bufferType in any order.
|
|
11668
11675
|
*/
|
|
11669
11676
|
|
|
11670
|
-
var discontinuitiesStore$ = discontinuityUpdate$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.
|
|
11677
|
+
var discontinuitiesStore$ = discontinuityUpdate$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.getReference().asObservable()), (0,scan/* scan */.R)(function (discontinuitiesStore, _ref) {
|
|
11671
11678
|
var evt = _ref[0],
|
|
11672
11679
|
observation = _ref[1];
|
|
11673
11680
|
return updateDiscontinuitiesStore(discontinuitiesStore, evt, observation);
|
|
@@ -11705,7 +11712,7 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11705
11712
|
* Period handled by that stream to unlock the situation.
|
|
11706
11713
|
*/
|
|
11707
11714
|
|
|
11708
|
-
var unlock$ = lockedStream$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.
|
|
11715
|
+
var unlock$ = lockedStream$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.getReference().asObservable()), (0,tap/* tap */.b)(function (_ref2) {
|
|
11709
11716
|
var lockedStreamEvt = _ref2[0],
|
|
11710
11717
|
observation = _ref2[1];
|
|
11711
11718
|
|
|
@@ -11732,7 +11739,7 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11732
11739
|
|
|
11733
11740
|
/* eslint-disable-next-line @typescript-eslint/no-unsafe-argument */
|
|
11734
11741
|
(0,ignoreElements/* ignoreElements */.l)());
|
|
11735
|
-
var stall$ = playbackObserver.
|
|
11742
|
+
var stall$ = playbackObserver.getReference().asObservable().pipe((0,withLatestFrom/* withLatestFrom */.M)(discontinuitiesStore$), (0,map/* map */.U)(function (_ref3) {
|
|
11736
11743
|
var observation = _ref3[0],
|
|
11737
11744
|
discontinuitiesStore = _ref3[1];
|
|
11738
11745
|
var buffered = observation.buffered,
|
|
@@ -11807,11 +11814,17 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11807
11814
|
ignoredStallTimeStamp = _now;
|
|
11808
11815
|
}
|
|
11809
11816
|
|
|
11810
|
-
if (is_seeking_approximate && observation.position < lastSeekingPosition
|
|
11811
|
-
|
|
11812
|
-
|
|
11813
|
-
|
|
11814
|
-
|
|
11817
|
+
if (is_seeking_approximate && observation.position < lastSeekingPosition) {
|
|
11818
|
+
log/* default.debug */.Z.debug("Init: the device appeared to have seeked back by itself.");
|
|
11819
|
+
|
|
11820
|
+
if (_now - ignoredStallTimeStamp < FORCE_DISCONTINUITY_SEEK_DELAY) {
|
|
11821
|
+
return {
|
|
11822
|
+
type: "stalled",
|
|
11823
|
+
value: stalledReason
|
|
11824
|
+
};
|
|
11825
|
+
} else {
|
|
11826
|
+
log/* default.warn */.Z.warn("Init: ignored stall for too long, checking discontinuity", _now - ignoredStallTimeStamp);
|
|
11827
|
+
}
|
|
11815
11828
|
}
|
|
11816
11829
|
|
|
11817
11830
|
lastSeekingPosition = null;
|
|
@@ -41418,9 +41431,9 @@ function createSharedReference(initialValue) {
|
|
|
41418
41431
|
*/
|
|
41419
41432
|
setValue: function setValue(newVal) {
|
|
41420
41433
|
if (isFinished) {
|
|
41421
|
-
if (false) {}
|
|
41422
|
-
|
|
41423
|
-
|
|
41434
|
+
if (false) {}
|
|
41435
|
+
|
|
41436
|
+
return;
|
|
41424
41437
|
}
|
|
41425
41438
|
|
|
41426
41439
|
value = newVal;
|
|
@@ -41558,10 +41571,14 @@ function createSharedReference(initialValue) {
|
|
|
41558
41571
|
if (!cbObj.hasBeenCleared) {
|
|
41559
41572
|
cbObj.complete();
|
|
41560
41573
|
}
|
|
41574
|
+
|
|
41575
|
+
cbObj.hasBeenCleared = true;
|
|
41561
41576
|
} catch (_) {
|
|
41562
41577
|
/* nothing */
|
|
41563
41578
|
}
|
|
41564
41579
|
}
|
|
41580
|
+
|
|
41581
|
+
cbs.length = 0;
|
|
41565
41582
|
}
|
|
41566
41583
|
};
|
|
41567
41584
|
}
|
|
@@ -50806,17 +50823,9 @@ function getEstimateReference(_ref, stopAllEstimates) {
|
|
|
50806
50823
|
* Only used in very specific scenarios.
|
|
50807
50824
|
*/
|
|
50808
50825
|
|
|
50809
|
-
var guessBasedChooser = new GuessBasedChooser(scoreCalculator, prevEstimate);
|
|
50810
|
-
var lastPlaybackObservation; // get initial observation for initial estimate
|
|
50811
|
-
|
|
50812
|
-
var unregisterInitial = playbackObserver.listen(function (obs) {
|
|
50813
|
-
lastPlaybackObservation = obs;
|
|
50814
|
-
}, {
|
|
50815
|
-
includeLastObservation: true
|
|
50816
|
-
});
|
|
50817
|
-
unregisterInitial(); // The initial is emitted synchronously, we can now remove it
|
|
50818
|
-
// TODO cleaner playbackObserver.getLast() or something?
|
|
50826
|
+
var guessBasedChooser = new GuessBasedChooser(scoreCalculator, prevEstimate); // get initial observation for initial estimate
|
|
50819
50827
|
|
|
50828
|
+
var lastPlaybackObservation = playbackObserver.getReference().getValue();
|
|
50820
50829
|
/** Reference through which estimates are emitted. */
|
|
50821
50830
|
|
|
50822
50831
|
var innerEstimateRef = (0,reference/* default */.ZP)(getCurrentEstimate()); // subscribe to subsequent playback observations
|
|
@@ -51337,7 +51346,7 @@ var link_drm_and_content = __webpack_require__(9607);
|
|
|
51337
51346
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/observable/throwError.js
|
|
51338
51347
|
var throwError = __webpack_require__(3610);
|
|
51339
51348
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/observable/interval.js
|
|
51340
|
-
var
|
|
51349
|
+
var interval = __webpack_require__(6697);
|
|
51341
51350
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/operators/tap.js
|
|
51342
51351
|
var tap = __webpack_require__(2006);
|
|
51343
51352
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/observable/fromEvent.js
|
|
@@ -51462,7 +51471,7 @@ var AudioVideoSegmentBuffer = /*#__PURE__*/function (_SegmentBuffer) {
|
|
|
51462
51471
|
// SourceBuffer is currently updating.
|
|
51463
51472
|
|
|
51464
51473
|
|
|
51465
|
-
(0,
|
|
51474
|
+
(0,interval/* interval */.F)(SOURCE_BUFFER_FLUSHING_INTERVAL).pipe((0,tap/* tap */.b)(function () {
|
|
51466
51475
|
return _this._flush();
|
|
51467
51476
|
}), (0,takeUntil/* takeUntil */.R)(_this._destroy$)).subscribe();
|
|
51468
51477
|
(0,fromEvent/* fromEvent */.R)(_this._sourceBuffer, "error").pipe((0,tap/* tap */.b)(function (err) {
|
|
@@ -52932,7 +52941,7 @@ function reloadAfterSwitch(period, bufferType, playbackObserver, deltaPos) {
|
|
|
52932
52941
|
// It can happen when `reloadAfterSwitch` is called as a side-effect of the
|
|
52933
52942
|
// same event that triggers the playback observation to be emitted.
|
|
52934
52943
|
return nextTickObs().pipe((0,mergeMap/* mergeMap */.z)(function () {
|
|
52935
|
-
return playbackObserver.
|
|
52944
|
+
return playbackObserver.getReference().asObservable();
|
|
52936
52945
|
}), (0,map/* map */.U)(function (observation) {
|
|
52937
52946
|
var _a, _b;
|
|
52938
52947
|
|
|
@@ -54517,7 +54526,7 @@ function appendSegmentToBuffer(playbackObserver, segmentBuffer, dataInfos) {
|
|
|
54517
54526
|
throw new media_error/* default */.Z("BUFFER_APPEND_ERROR", reason);
|
|
54518
54527
|
}
|
|
54519
54528
|
|
|
54520
|
-
return playbackObserver.
|
|
54529
|
+
return playbackObserver.getReference().asObservable().pipe((0,take/* take */.q)(1), (0,mergeMap/* mergeMap */.z)(function (observation) {
|
|
54521
54530
|
var _a;
|
|
54522
54531
|
|
|
54523
54532
|
var currentPos = (_a = observation.position.pending) !== null && _a !== void 0 ? _a : observation.position.last;
|
|
@@ -54798,7 +54807,7 @@ function RepresentationStream(_ref) {
|
|
|
54798
54807
|
var queue$ = downloadingQueue.start().pipe((0,mergeMap/* mergeMap */.z)(onQueueEvent));
|
|
54799
54808
|
/** Observable emitting the stream "status" and filling `lastSegmentQueue`. */
|
|
54800
54809
|
|
|
54801
|
-
var status$ = combineLatest([playbackObserver.
|
|
54810
|
+
var status$ = combineLatest([playbackObserver.getReference().asObservable(), bufferGoal$, maxBufferSize$, terminate$.pipe((0,take/* take */.q)(1), (0,startWith/* startWith */.O)(null)), reCheckNeededSegments$.pipe((0,startWith/* startWith */.O)(undefined))]).pipe((0,withLatestFrom/* withLatestFrom */.M)(fastSwitchThreshold$), (0,mergeMap/* mergeMap */.z)(function (_ref2) {
|
|
54802
54811
|
var _ref2$ = _ref2[0],
|
|
54803
54812
|
observation = _ref2$[0],
|
|
54804
54813
|
bufferGoal = _ref2$[1],
|
|
@@ -55450,7 +55459,7 @@ function createEmptyAdaptationStream(playbackObserver, wantedBufferAhead, buffer
|
|
|
55450
55459
|
var period = content.period;
|
|
55451
55460
|
var hasFinishedLoading = false;
|
|
55452
55461
|
var wantedBufferAhead$ = wantedBufferAhead.asObservable();
|
|
55453
|
-
var observation$ = playbackObserver.
|
|
55462
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
55454
55463
|
return combineLatest([observation$, wantedBufferAhead$]).pipe((0,mergeMap/* mergeMap */.z)(function (_ref) {
|
|
55455
55464
|
var observation = _ref[0],
|
|
55456
55465
|
wba = _ref[1];
|
|
@@ -55840,6 +55849,7 @@ function getFirstSegmentAfterPeriod(inventory, period) {
|
|
|
55840
55849
|
|
|
55841
55850
|
|
|
55842
55851
|
|
|
55852
|
+
|
|
55843
55853
|
/**
|
|
55844
55854
|
* Create single PeriodStream Observable:
|
|
55845
55855
|
* - Lazily create (or reuse) a SegmentBuffer for the given type.
|
|
@@ -56036,16 +56046,30 @@ function getFirstDeclaredMimeType(adaptation) {
|
|
|
56036
56046
|
|
|
56037
56047
|
|
|
56038
56048
|
function createAdaptationStreamPlaybackObserver(initialPlaybackObserver, segmentBuffer) {
|
|
56039
|
-
return initialPlaybackObserver.deriveReadOnlyObserver(function (
|
|
56040
|
-
|
|
56041
|
-
|
|
56042
|
-
|
|
56043
|
-
|
|
56044
|
-
var buffered = segmentBuffer.getBufferedRanges();
|
|
56045
|
-
return (0,object_assign/* default */.Z)({}, baseObservation, {
|
|
56046
|
-
bufferGap: (0,ranges/* getLeftSizeOfRange */.L7)(buffered, baseObservation.position.last)
|
|
56049
|
+
return initialPlaybackObserver.deriveReadOnlyObserver(function transform(observationRef, cancellationSignal) {
|
|
56050
|
+
var newRef = (0,reference/* default */.ZP)(constructAdaptationStreamPlaybackObservation());
|
|
56051
|
+
observationRef.onUpdate(emitAdaptationStreamPlaybackObservation, {
|
|
56052
|
+
clearSignal: cancellationSignal,
|
|
56053
|
+
emitCurrentValue: false
|
|
56047
56054
|
});
|
|
56048
|
-
|
|
56055
|
+
cancellationSignal.register(function () {
|
|
56056
|
+
newRef.finish();
|
|
56057
|
+
});
|
|
56058
|
+
return newRef;
|
|
56059
|
+
|
|
56060
|
+
function constructAdaptationStreamPlaybackObservation() {
|
|
56061
|
+
var baseObservation = observationRef.getValue();
|
|
56062
|
+
var buffered = segmentBuffer.getBufferedRanges();
|
|
56063
|
+
var bufferGap = (0,ranges/* getLeftSizeOfRange */.L7)(buffered, baseObservation.position.last);
|
|
56064
|
+
return (0,object_assign/* default */.Z)({}, baseObservation, {
|
|
56065
|
+
bufferGap: bufferGap
|
|
56066
|
+
});
|
|
56067
|
+
}
|
|
56068
|
+
|
|
56069
|
+
function emitAdaptationStreamPlaybackObservation() {
|
|
56070
|
+
newRef.setValue(constructAdaptationStreamPlaybackObservation());
|
|
56071
|
+
}
|
|
56072
|
+
});
|
|
56049
56073
|
}
|
|
56050
56074
|
;// CONCATENATED MODULE: ./src/core/stream/period/index.ts
|
|
56051
56075
|
/**
|
|
@@ -56426,7 +56450,7 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56426
56450
|
var defaultMaxAhead = MAXIMUM_MAX_BUFFER_AHEAD[bufferType] != null ? MAXIMUM_MAX_BUFFER_AHEAD[bufferType] : Infinity;
|
|
56427
56451
|
return BufferGarbageCollector({
|
|
56428
56452
|
segmentBuffer: segmentBuffer,
|
|
56429
|
-
currentTime$: playbackObserver.
|
|
56453
|
+
currentTime$: playbackObserver.getReference().asObservable().pipe((0,map/* map */.U)(function (o) {
|
|
56430
56454
|
var _a;
|
|
56431
56455
|
|
|
56432
56456
|
return (_a = o.position.pending) !== null && _a !== void 0 ? _a : o.position.last;
|
|
@@ -56544,7 +56568,8 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56544
56568
|
// than the ones already considered
|
|
56545
56569
|
|
|
56546
56570
|
|
|
56547
|
-
var
|
|
56571
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
56572
|
+
var restartStreamsWhenOutOfBounds$ = observation$.pipe((0,filter_map/* default */.Z)(function (_ref2) {
|
|
56548
56573
|
var position = _ref2.position;
|
|
56549
56574
|
|
|
56550
56575
|
var _a, _b;
|
|
@@ -56605,7 +56630,7 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56605
56630
|
}).concat([// Schedule micro task before checking the last playback observation
|
|
56606
56631
|
// to reduce the risk of race conditions where the next observation
|
|
56607
56632
|
// was going to be emitted synchronously.
|
|
56608
|
-
nextTickObs().pipe((0,ignoreElements/* ignoreElements */.l)()), playbackObserver.
|
|
56633
|
+
nextTickObs().pipe((0,ignoreElements/* ignoreElements */.l)()), playbackObserver.getReference().asObservable().pipe((0,take/* take */.q)(1), (0,mergeMap/* mergeMap */.z)(function (observation) {
|
|
56609
56634
|
var _a;
|
|
56610
56635
|
|
|
56611
56636
|
var shouldAutoPlay = !((_a = observation.paused.pending) !== null && _a !== void 0 ? _a : playbackObserver.getIsPaused());
|
|
@@ -56662,7 +56687,7 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56662
56687
|
|
|
56663
56688
|
var destroyNextStreams$ = new Subject/* Subject */.x(); // Emits when the current position goes over the end of the current Stream.
|
|
56664
56689
|
|
|
56665
|
-
var endOfCurrentStream$ = playbackObserver.
|
|
56690
|
+
var endOfCurrentStream$ = playbackObserver.getReference().asObservable().pipe((0,filter/* filter */.h)(function (_ref4) {
|
|
56666
56691
|
var position = _ref4.position;
|
|
56667
56692
|
|
|
56668
56693
|
var _a;
|
|
@@ -56814,7 +56839,7 @@ function ContentTimeBoundariesObserver(manifest, streams, playbackObserver) {
|
|
|
56814
56839
|
var maximumPositionCalculator = new MaximumPositionCalculator(manifest); // trigger warnings when the wanted time is before or after the manifest's
|
|
56815
56840
|
// segments
|
|
56816
56841
|
|
|
56817
|
-
var outOfManifest$ = playbackObserver.
|
|
56842
|
+
var outOfManifest$ = playbackObserver.getReference().asObservable().pipe((0,filter_map/* default */.Z)(function (_ref) {
|
|
56818
56843
|
var position = _ref.position;
|
|
56819
56844
|
|
|
56820
56845
|
var _a;
|
|
@@ -57042,7 +57067,7 @@ function getLastPositionFromAdaptation(adaptation) {
|
|
|
57042
57067
|
* @param {Object} manifest
|
|
57043
57068
|
* @param {Object} playbackObserver
|
|
57044
57069
|
* @param {Object} args
|
|
57045
|
-
* @returns {
|
|
57070
|
+
* @returns {Object}
|
|
57046
57071
|
*/
|
|
57047
57072
|
|
|
57048
57073
|
function createStreamPlaybackObserver(manifest, playbackObserver, _ref) {
|
|
@@ -57051,10 +57076,24 @@ function createStreamPlaybackObserver(manifest, playbackObserver, _ref) {
|
|
|
57051
57076
|
initialSeekPerformed = _ref.initialSeekPerformed,
|
|
57052
57077
|
speed = _ref.speed,
|
|
57053
57078
|
startTime = _ref.startTime;
|
|
57054
|
-
return playbackObserver.deriveReadOnlyObserver(function
|
|
57055
|
-
|
|
57056
|
-
|
|
57057
|
-
|
|
57079
|
+
return playbackObserver.deriveReadOnlyObserver(function transform(observationRef, cancellationSignal) {
|
|
57080
|
+
var newRef = (0,reference/* default */.ZP)(constructStreamPlaybackObservation());
|
|
57081
|
+
speed.onUpdate(emitStreamPlaybackObservation, {
|
|
57082
|
+
clearSignal: cancellationSignal,
|
|
57083
|
+
emitCurrentValue: false
|
|
57084
|
+
});
|
|
57085
|
+
observationRef.onUpdate(emitStreamPlaybackObservation, {
|
|
57086
|
+
clearSignal: cancellationSignal,
|
|
57087
|
+
emitCurrentValue: false
|
|
57088
|
+
});
|
|
57089
|
+
cancellationSignal.register(function () {
|
|
57090
|
+
newRef.finish();
|
|
57091
|
+
});
|
|
57092
|
+
return newRef;
|
|
57093
|
+
|
|
57094
|
+
function constructStreamPlaybackObservation() {
|
|
57095
|
+
var observation = observationRef.getValue();
|
|
57096
|
+
var lastSpeed = speed.getValue();
|
|
57058
57097
|
var pendingPosition;
|
|
57059
57098
|
|
|
57060
57099
|
if (!initialSeekPerformed.getValue()) {
|
|
@@ -57088,7 +57127,11 @@ function createStreamPlaybackObserver(manifest, playbackObserver, _ref) {
|
|
|
57088
57127
|
readyState: observation.readyState,
|
|
57089
57128
|
speed: lastSpeed
|
|
57090
57129
|
};
|
|
57091
|
-
}
|
|
57130
|
+
}
|
|
57131
|
+
|
|
57132
|
+
function emitStreamPlaybackObservation() {
|
|
57133
|
+
newRef.setValue(constructStreamPlaybackObservation());
|
|
57134
|
+
}
|
|
57092
57135
|
});
|
|
57093
57136
|
}
|
|
57094
57137
|
// EXTERNAL MODULE: ./src/core/init/emit_loaded_event.ts + 1 modules
|
|
@@ -57478,7 +57521,7 @@ function areSourceBuffersUpdating$(sourceBuffers) {
|
|
|
57478
57521
|
return true;
|
|
57479
57522
|
})), (0,fromEvent/* fromEvent */.R)(sourceBuffer, "update").pipe((0,map/* map */.U)(function () {
|
|
57480
57523
|
return false;
|
|
57481
|
-
})), (0,
|
|
57524
|
+
})), (0,interval/* interval */.F)(500).pipe((0,map/* map */.U)(function () {
|
|
57482
57525
|
return sourceBuffer.updating;
|
|
57483
57526
|
}))).pipe((0,startWith/* startWith */.O)(sourceBuffer.updating), (0,distinctUntilChanged/* distinctUntilChanged */.x)()));
|
|
57484
57527
|
};
|
|
@@ -57773,7 +57816,7 @@ function streamEventsEmitter(manifest, mediaElement, observation$) {
|
|
|
57773
57816
|
var _config$getCurrent = config/* default.getCurrent */.Z.getCurrent(),
|
|
57774
57817
|
STREAM_EVENT_EMITTER_POLL_INTERVAL = _config$getCurrent.STREAM_EVENT_EMITTER_POLL_INTERVAL;
|
|
57775
57818
|
|
|
57776
|
-
return combineLatest([(0,
|
|
57819
|
+
return combineLatest([(0,interval/* interval */.F)(STREAM_EVENT_EMITTER_POLL_INTERVAL).pipe((0,startWith/* startWith */.O)(null)), observation$]).pipe((0,map/* map */.U)(function (_ref) {
|
|
57777
57820
|
var _ = _ref[0],
|
|
57778
57821
|
observation = _ref[1];
|
|
57779
57822
|
var seeking = observation.seeking;
|
|
@@ -57891,7 +57934,7 @@ function createMediaSourceLoader(_ref) {
|
|
|
57891
57934
|
initialPlayPerformed = _initialSeekAndPlay.initialPlayPerformed,
|
|
57892
57935
|
initialSeekPerformed = _initialSeekAndPlay.initialSeekPerformed;
|
|
57893
57936
|
|
|
57894
|
-
var observation$ = playbackObserver.
|
|
57937
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
57895
57938
|
var streamEvents$ = initialPlayPerformed.asObservable().pipe((0,filter/* filter */.h)(function (hasPlayed) {
|
|
57896
57939
|
return hasPlayed;
|
|
57897
57940
|
}), (0,mergeMap/* mergeMap */.z)(function () {
|
|
@@ -59218,12 +59261,6 @@ function parseLoadVideoOptions(options) {
|
|
|
59218
59261
|
}
|
|
59219
59262
|
|
|
59220
59263
|
|
|
59221
|
-
;// CONCATENATED MODULE: ./node_modules/rxjs/dist/esm5/internal/operators/skip.js
|
|
59222
|
-
|
|
59223
|
-
function skip(count) {
|
|
59224
|
-
return (0,filter/* filter */.h)(function (_, index) { return count <= index; });
|
|
59225
|
-
}
|
|
59226
|
-
//# sourceMappingURL=skip.js.map
|
|
59227
59264
|
;// CONCATENATED MODULE: ./src/core/api/playback_observer.ts
|
|
59228
59265
|
/**
|
|
59229
59266
|
* Copyright 2015 CANAL+ Group
|
|
@@ -59246,6 +59283,7 @@ function skip(count) {
|
|
|
59246
59283
|
|
|
59247
59284
|
|
|
59248
59285
|
|
|
59286
|
+
|
|
59249
59287
|
/**
|
|
59250
59288
|
* HTMLMediaElement Events for which playback observations are calculated and
|
|
59251
59289
|
* emitted.
|
|
@@ -59269,6 +59307,12 @@ var SCANNED_MEDIA_ELEMENTS_EVENTS = ["canplay", "ended", "play", "pause", "seeki
|
|
|
59269
59307
|
|
|
59270
59308
|
var PlaybackObserver = /*#__PURE__*/function () {
|
|
59271
59309
|
/**
|
|
59310
|
+
* Create a new `PlaybackObserver`, which allows to produce new "playback
|
|
59311
|
+
* observations" on various media events and intervals.
|
|
59312
|
+
*
|
|
59313
|
+
* Note that creating a `PlaybackObserver` lead to the usage of resources,
|
|
59314
|
+
* such as event listeners which will only be freed once the `stop` method is
|
|
59315
|
+
* called.
|
|
59272
59316
|
* @param {HTMLMediaElement} mediaElement
|
|
59273
59317
|
* @param {Object} options
|
|
59274
59318
|
*/
|
|
@@ -59277,18 +59321,33 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59277
59321
|
this._mediaElement = mediaElement;
|
|
59278
59322
|
this._withMediaSource = options.withMediaSource;
|
|
59279
59323
|
this._lowLatencyMode = options.lowLatencyMode;
|
|
59280
|
-
this.
|
|
59281
|
-
this.
|
|
59324
|
+
this._canceller = new task_canceller/* default */.ZP();
|
|
59325
|
+
this._observationRef = this._createSharedReference();
|
|
59282
59326
|
}
|
|
59283
59327
|
/**
|
|
59284
|
-
*
|
|
59285
|
-
*
|
|
59286
|
-
*
|
|
59328
|
+
* Stop the `PlaybackObserver` from emitting playback observations and free all
|
|
59329
|
+
* resources reserved to emitting them such as event listeners, intervals and
|
|
59330
|
+
* subscribing callbacks.
|
|
59331
|
+
*
|
|
59332
|
+
* Once `stop` is called, no new playback observation will ever be emitted.
|
|
59333
|
+
*
|
|
59334
|
+
* Note that it is important to call stop once the `PlaybackObserver` is no
|
|
59335
|
+
* more needed to avoid unnecessarily leaking resources.
|
|
59287
59336
|
*/
|
|
59288
59337
|
|
|
59289
59338
|
|
|
59290
59339
|
var _proto = PlaybackObserver.prototype;
|
|
59291
59340
|
|
|
59341
|
+
_proto.stop = function stop() {
|
|
59342
|
+
this._canceller.cancel();
|
|
59343
|
+
}
|
|
59344
|
+
/**
|
|
59345
|
+
* Returns the current position advertised by the `HTMLMediaElement`, in
|
|
59346
|
+
* seconds.
|
|
59347
|
+
* @returns {number}
|
|
59348
|
+
*/
|
|
59349
|
+
;
|
|
59350
|
+
|
|
59292
59351
|
_proto.getCurrentTime = function getCurrentTime() {
|
|
59293
59352
|
return this._mediaElement.currentTime;
|
|
59294
59353
|
}
|
|
@@ -59330,31 +59389,19 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59330
59389
|
return this._mediaElement.readyState;
|
|
59331
59390
|
}
|
|
59332
59391
|
/**
|
|
59333
|
-
* Returns an
|
|
59334
|
-
*
|
|
59392
|
+
* Returns an `IReadOnlySharedReference` storing the last playback observation
|
|
59393
|
+
* produced by the `PlaybackObserver` and updated each time a new one is
|
|
59394
|
+
* produced.
|
|
59335
59395
|
*
|
|
59336
|
-
*
|
|
59337
|
-
*
|
|
59338
|
-
* `subscribe` will receive the same events at the same time.
|
|
59339
|
-
* This was done for performance and simplicity reasons.
|
|
59396
|
+
* This value can then be for example subscribed to to be notified of future
|
|
59397
|
+
* playback observations.
|
|
59340
59398
|
*
|
|
59341
|
-
* @
|
|
59342
|
-
* @returns {Observable}
|
|
59399
|
+
* @returns {Object}
|
|
59343
59400
|
*/
|
|
59344
59401
|
;
|
|
59345
59402
|
|
|
59346
|
-
_proto.
|
|
59347
|
-
|
|
59348
|
-
|
|
59349
|
-
return (0,defer/* defer */.P)(function () {
|
|
59350
|
-
if (_this._observation$ === null || _this._lastObservation === null) {
|
|
59351
|
-
_this._lastObservation = _this._generateInitialObservation();
|
|
59352
|
-
_this._observation$ = _this._createInnerObservable().pipe((0,share/* share */.B)());
|
|
59353
|
-
return _this.observe(includeLastObservation);
|
|
59354
|
-
} else {
|
|
59355
|
-
return includeLastObservation ? _this._observation$.pipe((0,startWith/* startWith */.O)(_this._lastObservation)) : _this._observation$;
|
|
59356
|
-
}
|
|
59357
|
-
});
|
|
59403
|
+
_proto.getReference = function getReference() {
|
|
59404
|
+
return this._observationRef;
|
|
59358
59405
|
}
|
|
59359
59406
|
/**
|
|
59360
59407
|
* Register a callback so it regularly receives playback observations.
|
|
@@ -59364,25 +59411,20 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59364
59411
|
* be first emitted synchronously.
|
|
59365
59412
|
* - `clearSignal`: If set, the callback will be unregistered when this
|
|
59366
59413
|
* CancellationSignal emits.
|
|
59367
|
-
* @returns {Function} - Allows to easily unregister the callback
|
|
59368
59414
|
*/
|
|
59369
59415
|
;
|
|
59370
59416
|
|
|
59371
59417
|
_proto.listen = function listen(cb, options) {
|
|
59372
|
-
var _a
|
|
59418
|
+
var _a;
|
|
59373
59419
|
|
|
59374
|
-
if (((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59420
|
+
if (this._canceller.isUsed || ((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59375
59421
|
return noop/* default */.Z;
|
|
59376
59422
|
}
|
|
59377
59423
|
|
|
59378
|
-
|
|
59379
|
-
|
|
59380
|
-
|
|
59381
|
-
})
|
|
59382
|
-
return function () {
|
|
59383
|
-
unregister();
|
|
59384
|
-
sub.unsubscribe();
|
|
59385
|
-
};
|
|
59424
|
+
this._observationRef.onUpdate(cb, {
|
|
59425
|
+
clearSignal: options === null || options === void 0 ? void 0 : options.clearSignal,
|
|
59426
|
+
emitCurrentValue: options === null || options === void 0 ? void 0 : options.includeLastObservation
|
|
59427
|
+
});
|
|
59386
59428
|
}
|
|
59387
59429
|
/**
|
|
59388
59430
|
* Generate a new playback observer which can listen to other
|
|
@@ -59395,82 +59437,113 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59395
59437
|
*
|
|
59396
59438
|
* As argument, this method takes a function which will allow to produce
|
|
59397
59439
|
* the new set of properties to be present on each observation.
|
|
59398
|
-
* @param {Function}
|
|
59440
|
+
* @param {Function} transform
|
|
59399
59441
|
* @returns {Object}
|
|
59400
59442
|
*/
|
|
59401
59443
|
;
|
|
59402
59444
|
|
|
59403
|
-
_proto.deriveReadOnlyObserver = function deriveReadOnlyObserver(
|
|
59404
|
-
return generateReadOnlyObserver(this,
|
|
59445
|
+
_proto.deriveReadOnlyObserver = function deriveReadOnlyObserver(transform) {
|
|
59446
|
+
return generateReadOnlyObserver(this, transform, this._canceller.signal);
|
|
59405
59447
|
}
|
|
59406
59448
|
/**
|
|
59407
|
-
* Creates the
|
|
59449
|
+
* Creates the `IReadOnlySharedReference` that will generate playback
|
|
59450
|
+
* observations.
|
|
59408
59451
|
* @returns {Observable}
|
|
59409
59452
|
*/
|
|
59410
59453
|
;
|
|
59411
59454
|
|
|
59412
|
-
_proto.
|
|
59413
|
-
var
|
|
59455
|
+
_proto._createSharedReference = function _createSharedReference() {
|
|
59456
|
+
var _this = this;
|
|
59414
59457
|
|
|
59415
|
-
|
|
59416
|
-
|
|
59417
|
-
|
|
59418
|
-
SAMPLING_INTERVAL_LOW_LATENCY = _config$getCurrent.SAMPLING_INTERVAL_LOW_LATENCY,
|
|
59419
|
-
SAMPLING_INTERVAL_NO_MEDIASOURCE = _config$getCurrent.SAMPLING_INTERVAL_NO_MEDIASOURCE;
|
|
59458
|
+
if (this._observationRef !== undefined) {
|
|
59459
|
+
return this._observationRef;
|
|
59460
|
+
}
|
|
59420
59461
|
|
|
59421
|
-
|
|
59422
|
-
var _a;
|
|
59462
|
+
var lastObservation;
|
|
59423
59463
|
|
|
59424
|
-
|
|
59464
|
+
var _config$getCurrent = config/* default.getCurrent */.Z.getCurrent(),
|
|
59465
|
+
SAMPLING_INTERVAL_MEDIASOURCE = _config$getCurrent.SAMPLING_INTERVAL_MEDIASOURCE,
|
|
59466
|
+
SAMPLING_INTERVAL_LOW_LATENCY = _config$getCurrent.SAMPLING_INTERVAL_LOW_LATENCY,
|
|
59467
|
+
SAMPLING_INTERVAL_NO_MEDIASOURCE = _config$getCurrent.SAMPLING_INTERVAL_NO_MEDIASOURCE;
|
|
59425
59468
|
|
|
59426
|
-
|
|
59427
|
-
|
|
59428
|
-
_this2._internalSeekingEventsIncomingCounter -= 1;
|
|
59429
|
-
}
|
|
59469
|
+
var getCurrentObservation = function getCurrentObservation(event) {
|
|
59470
|
+
var tmpEvt = event;
|
|
59430
59471
|
|
|
59431
|
-
|
|
59432
|
-
|
|
59433
|
-
|
|
59434
|
-
|
|
59435
|
-
lastObservation.internalSeeking && tmpEvt !== "seeking");
|
|
59436
|
-
var rebufferingStatus = getRebufferingStatus(lastObservation, mediaTimings, {
|
|
59437
|
-
lowLatencyMode: _this2._lowLatencyMode,
|
|
59438
|
-
withMediaSource: _this2._withMediaSource
|
|
59439
|
-
});
|
|
59440
|
-
var freezingStatus = getFreezingStatus(lastObservation, mediaTimings);
|
|
59441
|
-
var timings = (0,object_assign/* default */.Z)({}, {
|
|
59442
|
-
rebuffering: rebufferingStatus,
|
|
59443
|
-
freezing: freezingStatus,
|
|
59444
|
-
internalSeeking: internalSeeking
|
|
59445
|
-
}, mediaTimings);
|
|
59472
|
+
if (tmpEvt === "seeking" && _this._internalSeekingEventsIncomingCounter > 0) {
|
|
59473
|
+
tmpEvt = "internal-seeking";
|
|
59474
|
+
_this._internalSeekingEventsIncomingCounter -= 1;
|
|
59475
|
+
}
|
|
59446
59476
|
|
|
59447
|
-
|
|
59448
|
-
|
|
59449
|
-
|
|
59477
|
+
var _lastObservation = lastObservation !== null && lastObservation !== void 0 ? lastObservation : _this._generateInitialObservation();
|
|
59478
|
+
|
|
59479
|
+
var mediaTimings = getMediaInfos(_this._mediaElement, tmpEvt);
|
|
59480
|
+
var internalSeeking = mediaTimings.seeking && ( // We've just received the event for internally seeking
|
|
59481
|
+
tmpEvt === "internal-seeking" || // or We're still waiting on the previous internal-seek
|
|
59482
|
+
_lastObservation.internalSeeking && tmpEvt !== "seeking");
|
|
59483
|
+
var rebufferingStatus = getRebufferingStatus(_lastObservation, mediaTimings, {
|
|
59484
|
+
lowLatencyMode: _this._lowLatencyMode,
|
|
59485
|
+
withMediaSource: _this._withMediaSource
|
|
59486
|
+
});
|
|
59487
|
+
var freezingStatus = getFreezingStatus(_lastObservation, mediaTimings);
|
|
59488
|
+
var timings = (0,object_assign/* default */.Z)({}, {
|
|
59489
|
+
rebuffering: rebufferingStatus,
|
|
59490
|
+
freezing: freezingStatus,
|
|
59491
|
+
internalSeeking: internalSeeking
|
|
59492
|
+
}, mediaTimings);
|
|
59493
|
+
|
|
59494
|
+
if (log/* default.hasLevel */.Z.hasLevel("DEBUG")) {
|
|
59495
|
+
log/* default.debug */.Z.debug("API: current media element state tick", "event", timings.event, "position", timings.position, "seeking", timings.seeking, "internalSeeking", timings.internalSeeking, "rebuffering", timings.rebuffering !== null, "freezing", timings.freezing !== null, "ended", timings.ended, "paused", timings.paused, "playbackRate", timings.playbackRate, "readyState", timings.readyState);
|
|
59496
|
+
}
|
|
59497
|
+
|
|
59498
|
+
return timings;
|
|
59499
|
+
};
|
|
59450
59500
|
|
|
59451
|
-
|
|
59501
|
+
var returnedSharedReference = (0,reference/* default */.ZP)(getCurrentObservation("init"));
|
|
59502
|
+
|
|
59503
|
+
var generateObservationForEvent = function generateObservationForEvent(event) {
|
|
59504
|
+
var newObservation = getCurrentObservation(event);
|
|
59505
|
+
|
|
59506
|
+
if (log/* default.hasLevel */.Z.hasLevel("DEBUG")) {
|
|
59507
|
+
log/* default.debug */.Z.debug("API: current playback timeline:\n" + prettyPrintBuffered(newObservation.buffered, newObservation.position), "\n" + event);
|
|
59508
|
+
}
|
|
59509
|
+
|
|
59510
|
+
lastObservation = newObservation;
|
|
59511
|
+
returnedSharedReference.setValue(newObservation);
|
|
59512
|
+
};
|
|
59513
|
+
|
|
59514
|
+
var interval = this._lowLatencyMode ? SAMPLING_INTERVAL_LOW_LATENCY : this._withMediaSource ? SAMPLING_INTERVAL_MEDIASOURCE : SAMPLING_INTERVAL_NO_MEDIASOURCE;
|
|
59515
|
+
var intervalId = setInterval(onInterval, interval);
|
|
59516
|
+
var removeEventListeners = SCANNED_MEDIA_ELEMENTS_EVENTS.map(function (eventName) {
|
|
59517
|
+
_this._mediaElement.addEventListener(eventName, onMediaEvent);
|
|
59518
|
+
|
|
59519
|
+
function onMediaEvent() {
|
|
59520
|
+
restartInterval();
|
|
59521
|
+
generateObservationForEvent(eventName);
|
|
59522
|
+
}
|
|
59523
|
+
|
|
59524
|
+
return function () {
|
|
59525
|
+
_this._mediaElement.removeEventListener(eventName, onMediaEvent);
|
|
59452
59526
|
};
|
|
59527
|
+
});
|
|
59453
59528
|
|
|
59454
|
-
|
|
59455
|
-
|
|
59456
|
-
|
|
59457
|
-
|
|
59529
|
+
this._canceller.signal.register(function () {
|
|
59530
|
+
clearInterval(intervalId);
|
|
59531
|
+
removeEventListeners.forEach(function (cb) {
|
|
59532
|
+
return cb();
|
|
59458
59533
|
});
|
|
59459
|
-
|
|
59460
|
-
|
|
59461
|
-
return "timeupdate";
|
|
59462
|
-
}));
|
|
59463
|
-
return merge/* merge.apply */.T.apply(void 0, [interval$].concat(eventObs)).pipe((0,map/* map */.U)(function (event) {
|
|
59464
|
-
var newObservation = getCurrentObservation(event);
|
|
59534
|
+
returnedSharedReference.finish();
|
|
59535
|
+
});
|
|
59465
59536
|
|
|
59466
|
-
|
|
59467
|
-
log/* default.debug */.Z.debug("API: current playback timeline:\n" + prettyPrintBuffered(newObservation.buffered, newObservation.position), "\n" + event);
|
|
59468
|
-
}
|
|
59537
|
+
return returnedSharedReference;
|
|
59469
59538
|
|
|
59470
|
-
|
|
59471
|
-
|
|
59472
|
-
|
|
59473
|
-
|
|
59539
|
+
function onInterval() {
|
|
59540
|
+
generateObservationForEvent("timeupdate");
|
|
59541
|
+
}
|
|
59542
|
+
|
|
59543
|
+
function restartInterval() {
|
|
59544
|
+
clearInterval(intervalId);
|
|
59545
|
+
intervalId = setInterval(onInterval, interval);
|
|
59546
|
+
}
|
|
59474
59547
|
};
|
|
59475
59548
|
|
|
59476
59549
|
_proto._generateInitialObservation = function _generateInitialObservation() {
|
|
@@ -59769,18 +59842,13 @@ function prettyPrintBuffered(buffered, currentTime) {
|
|
|
59769
59842
|
* Create `IReadOnlyPlaybackObserver` from a source `IReadOnlyPlaybackObserver`
|
|
59770
59843
|
* and a mapping function.
|
|
59771
59844
|
* @param {Object} src
|
|
59772
|
-
* @param {Function}
|
|
59845
|
+
* @param {Function} transform
|
|
59773
59846
|
* @returns {Object}
|
|
59774
59847
|
*/
|
|
59775
59848
|
|
|
59776
59849
|
|
|
59777
|
-
function generateReadOnlyObserver(src,
|
|
59778
|
-
var
|
|
59779
|
-
return mapObservable(src.observe(true));
|
|
59780
|
-
}).pipe((0,shareReplay/* shareReplay */.d)({
|
|
59781
|
-
bufferSize: 1,
|
|
59782
|
-
refCount: true
|
|
59783
|
-
}));
|
|
59850
|
+
function generateReadOnlyObserver(src, transform, cancellationSignal) {
|
|
59851
|
+
var mappedRef = transform(src.getReference(), cancellationSignal);
|
|
59784
59852
|
return {
|
|
59785
59853
|
getCurrentTime: function getCurrentTime() {
|
|
59786
59854
|
return src.getCurrentTime();
|
|
@@ -59791,28 +59859,23 @@ function generateReadOnlyObserver(src, mapObservable) {
|
|
|
59791
59859
|
getIsPaused: function getIsPaused() {
|
|
59792
59860
|
return src.getIsPaused();
|
|
59793
59861
|
},
|
|
59794
|
-
|
|
59795
|
-
return
|
|
59862
|
+
getReference: function getReference() {
|
|
59863
|
+
return mappedRef;
|
|
59796
59864
|
},
|
|
59797
59865
|
listen: function listen(cb, options) {
|
|
59798
|
-
var _a
|
|
59866
|
+
var _a;
|
|
59799
59867
|
|
|
59800
|
-
if (((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59801
|
-
return
|
|
59868
|
+
if (cancellationSignal.isCancelled || ((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59869
|
+
return;
|
|
59802
59870
|
}
|
|
59803
59871
|
|
|
59804
|
-
|
|
59805
|
-
|
|
59806
|
-
|
|
59807
|
-
|
|
59808
|
-
})) !== null && _c !== void 0 ? _c : noop/* default */.Z;
|
|
59809
|
-
return function () {
|
|
59810
|
-
unregister();
|
|
59811
|
-
sub.unsubscribe();
|
|
59812
|
-
};
|
|
59872
|
+
mappedRef.onUpdate(cb, {
|
|
59873
|
+
clearSignal: options === null || options === void 0 ? void 0 : options.clearSignal,
|
|
59874
|
+
emitCurrentValue: options === null || options === void 0 ? void 0 : options.includeLastObservation
|
|
59875
|
+
});
|
|
59813
59876
|
},
|
|
59814
|
-
deriveReadOnlyObserver: function deriveReadOnlyObserver(
|
|
59815
|
-
return generateReadOnlyObserver(this,
|
|
59877
|
+
deriveReadOnlyObserver: function deriveReadOnlyObserver(newTransformFn) {
|
|
59878
|
+
return generateReadOnlyObserver(this, newTransformFn, cancellationSignal);
|
|
59816
59879
|
}
|
|
59817
59880
|
};
|
|
59818
59881
|
}
|
|
@@ -61240,7 +61303,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
61240
61303
|
videoElement.preload = "auto";
|
|
61241
61304
|
_this.version =
|
|
61242
61305
|
/* PLAYER_VERSION */
|
|
61243
|
-
"3.28.0-dev.
|
|
61306
|
+
"3.28.0-dev.2022071100";
|
|
61244
61307
|
_this.log = log/* default */.Z;
|
|
61245
61308
|
_this.state = "STOPPED";
|
|
61246
61309
|
_this.videoElement = videoElement;
|
|
@@ -61559,6 +61622,9 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
61559
61622
|
withMediaSource: !isDirectFile,
|
|
61560
61623
|
lowLatencyMode: lowLatencyMode
|
|
61561
61624
|
});
|
|
61625
|
+
currentContentCanceller.signal.register(function () {
|
|
61626
|
+
playbackObserver.stop();
|
|
61627
|
+
});
|
|
61562
61628
|
/** Emit playback events. */
|
|
61563
61629
|
|
|
61564
61630
|
var playback$;
|
|
@@ -61804,7 +61870,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
61804
61870
|
}), (0,share/* share */.B)());
|
|
61805
61871
|
/** Emit when the media element emits a "seeking" event. */
|
|
61806
61872
|
|
|
61807
|
-
var observation$ = playbackObserver.
|
|
61873
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
61808
61874
|
var stateChangingEvent$ = observation$.pipe((0,filter/* filter */.h)(function (o) {
|
|
61809
61875
|
return o.event === "seeking" || o.event === "ended" || o.event === "play" || o.event === "pause";
|
|
61810
61876
|
}));
|
|
@@ -63350,9 +63416,12 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
63350
63416
|
this._priv_contentEventsMemory = {}; // DRM-related clean-up
|
|
63351
63417
|
|
|
63352
63418
|
var freeUpContentLock = function freeUpContentLock() {
|
|
63353
|
-
|
|
63419
|
+
if (_this4.videoElement !== null) {
|
|
63420
|
+
// If not disposed
|
|
63421
|
+
log/* default.debug */.Z.debug("Unlocking `contentLock`. Next content can begin.");
|
|
63354
63422
|
|
|
63355
|
-
|
|
63423
|
+
_this4._priv_contentLock.setValue(false);
|
|
63424
|
+
}
|
|
63356
63425
|
};
|
|
63357
63426
|
|
|
63358
63427
|
if (!(0,is_null_or_undefined/* default */.Z)(this.videoElement)) {
|
|
@@ -64055,7 +64124,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
64055
64124
|
|
|
64056
64125
|
Player.version =
|
|
64057
64126
|
/* PLAYER_VERSION */
|
|
64058
|
-
"3.28.0-dev.
|
|
64127
|
+
"3.28.0-dev.2022071100";
|
|
64059
64128
|
/* harmony default export */ var public_api = (Player);
|
|
64060
64129
|
;// CONCATENATED MODULE: ./src/core/api/index.ts
|
|
64061
64130
|
/**
|