rx-player 3.28.0-dev.2022062300 → 3.28.0-dev.2022062700
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/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 +241 -179
- package/dist/rx-player.min.js +1 -1
- package/package.json +2 -2
- package/sonar-project.properties +1 -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
|
@@ -11035,7 +11035,7 @@ function waitUntilPlayable(observation$) {
|
|
|
11035
11035
|
}
|
|
11036
11036
|
/**
|
|
11037
11037
|
* Try to play content then handle autoplay errors.
|
|
11038
|
-
* @param {HTMLMediaElement}
|
|
11038
|
+
* @param {HTMLMediaElement} mediaElement
|
|
11039
11039
|
* @returns {Observable}
|
|
11040
11040
|
*/
|
|
11041
11041
|
|
|
@@ -11078,10 +11078,10 @@ function initialSeekAndPlay(_ref2) {
|
|
|
11078
11078
|
}));
|
|
11079
11079
|
var seekAndPlay$ = seek$.pipe((0,mergeMap/* mergeMap */.z)(function () {
|
|
11080
11080
|
if (!(0,should_validate_metadata/* default */.Z)() || mediaElement.duration > 0) {
|
|
11081
|
-
return waitUntilPlayable(playbackObserver.
|
|
11081
|
+
return waitUntilPlayable(playbackObserver.getReference().asObservable());
|
|
11082
11082
|
} else {
|
|
11083
11083
|
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.
|
|
11084
|
+
return waitUntilPlayable(playbackObserver.getReference().asObservable()).pipe((0,startWith/* startWith */.O)(events_generators/* default.warning */.Z.warning(error)));
|
|
11085
11085
|
}
|
|
11086
11086
|
}), (0,mergeMap/* mergeMap */.z)(function (evt) {
|
|
11087
11087
|
if (evt !== undefined) {
|
|
@@ -11342,7 +11342,7 @@ function initializeDirectfileContent(_ref) {
|
|
|
11342
11342
|
// through a throwing Observable.
|
|
11343
11343
|
|
|
11344
11344
|
var mediaError$ = (0,throw_on_media_error/* default */.Z)(mediaElement);
|
|
11345
|
-
var observation$ = playbackObserver.
|
|
11345
|
+
var observation$ = playbackObserver.getReference().asObservable(); // Set the speed set by the user on the media element while pausing a
|
|
11346
11346
|
// little longer while the buffer is empty.
|
|
11347
11347
|
|
|
11348
11348
|
var playbackRate$ = (0,update_playback_rate/* default */.Z)(mediaElement, speed, observation$).pipe((0,ignoreElements/* ignoreElements */.l)());
|
|
@@ -11667,7 +11667,7 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11667
11667
|
* order (first ordered by Period's start, then by bufferType in any order.
|
|
11668
11668
|
*/
|
|
11669
11669
|
|
|
11670
|
-
var discontinuitiesStore$ = discontinuityUpdate$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.
|
|
11670
|
+
var discontinuitiesStore$ = discontinuityUpdate$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.getReference().asObservable()), (0,scan/* scan */.R)(function (discontinuitiesStore, _ref) {
|
|
11671
11671
|
var evt = _ref[0],
|
|
11672
11672
|
observation = _ref[1];
|
|
11673
11673
|
return updateDiscontinuitiesStore(discontinuitiesStore, evt, observation);
|
|
@@ -11705,7 +11705,7 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11705
11705
|
* Period handled by that stream to unlock the situation.
|
|
11706
11706
|
*/
|
|
11707
11707
|
|
|
11708
|
-
var unlock$ = lockedStream$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.
|
|
11708
|
+
var unlock$ = lockedStream$.pipe((0,withLatestFrom/* withLatestFrom */.M)(playbackObserver.getReference().asObservable()), (0,tap/* tap */.b)(function (_ref2) {
|
|
11709
11709
|
var lockedStreamEvt = _ref2[0],
|
|
11710
11710
|
observation = _ref2[1];
|
|
11711
11711
|
|
|
@@ -11732,7 +11732,7 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11732
11732
|
|
|
11733
11733
|
/* eslint-disable-next-line @typescript-eslint/no-unsafe-argument */
|
|
11734
11734
|
(0,ignoreElements/* ignoreElements */.l)());
|
|
11735
|
-
var stall$ = playbackObserver.
|
|
11735
|
+
var stall$ = playbackObserver.getReference().asObservable().pipe((0,withLatestFrom/* withLatestFrom */.M)(discontinuitiesStore$), (0,map/* map */.U)(function (_ref3) {
|
|
11736
11736
|
var observation = _ref3[0],
|
|
11737
11737
|
discontinuitiesStore = _ref3[1];
|
|
11738
11738
|
var buffered = observation.buffered,
|
|
@@ -11807,11 +11807,17 @@ function StallAvoider(playbackObserver, manifest, lockedStream$, discontinuityUp
|
|
|
11807
11807
|
ignoredStallTimeStamp = _now;
|
|
11808
11808
|
}
|
|
11809
11809
|
|
|
11810
|
-
if (is_seeking_approximate && observation.position < lastSeekingPosition
|
|
11811
|
-
|
|
11812
|
-
|
|
11813
|
-
|
|
11814
|
-
|
|
11810
|
+
if (is_seeking_approximate && observation.position < lastSeekingPosition) {
|
|
11811
|
+
log/* default.debug */.Z.debug("Init: the device appeared to have seeked back by itself.");
|
|
11812
|
+
|
|
11813
|
+
if (_now - ignoredStallTimeStamp < FORCE_DISCONTINUITY_SEEK_DELAY) {
|
|
11814
|
+
return {
|
|
11815
|
+
type: "stalled",
|
|
11816
|
+
value: stalledReason
|
|
11817
|
+
};
|
|
11818
|
+
} else {
|
|
11819
|
+
log/* default.warn */.Z.warn("Init: ignored stall for too long, checking discontinuity", _now - ignoredStallTimeStamp);
|
|
11820
|
+
}
|
|
11815
11821
|
}
|
|
11816
11822
|
|
|
11817
11823
|
lastSeekingPosition = null;
|
|
@@ -41418,9 +41424,9 @@ function createSharedReference(initialValue) {
|
|
|
41418
41424
|
*/
|
|
41419
41425
|
setValue: function setValue(newVal) {
|
|
41420
41426
|
if (isFinished) {
|
|
41421
|
-
if (false) {}
|
|
41422
|
-
|
|
41423
|
-
|
|
41427
|
+
if (false) {}
|
|
41428
|
+
|
|
41429
|
+
return;
|
|
41424
41430
|
}
|
|
41425
41431
|
|
|
41426
41432
|
value = newVal;
|
|
@@ -41558,10 +41564,14 @@ function createSharedReference(initialValue) {
|
|
|
41558
41564
|
if (!cbObj.hasBeenCleared) {
|
|
41559
41565
|
cbObj.complete();
|
|
41560
41566
|
}
|
|
41567
|
+
|
|
41568
|
+
cbObj.hasBeenCleared = true;
|
|
41561
41569
|
} catch (_) {
|
|
41562
41570
|
/* nothing */
|
|
41563
41571
|
}
|
|
41564
41572
|
}
|
|
41573
|
+
|
|
41574
|
+
cbs.length = 0;
|
|
41565
41575
|
}
|
|
41566
41576
|
};
|
|
41567
41577
|
}
|
|
@@ -50806,17 +50816,9 @@ function getEstimateReference(_ref, stopAllEstimates) {
|
|
|
50806
50816
|
* Only used in very specific scenarios.
|
|
50807
50817
|
*/
|
|
50808
50818
|
|
|
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?
|
|
50819
|
+
var guessBasedChooser = new GuessBasedChooser(scoreCalculator, prevEstimate); // get initial observation for initial estimate
|
|
50819
50820
|
|
|
50821
|
+
var lastPlaybackObservation = playbackObserver.getReference().getValue();
|
|
50820
50822
|
/** Reference through which estimates are emitted. */
|
|
50821
50823
|
|
|
50822
50824
|
var innerEstimateRef = (0,reference/* default */.ZP)(getCurrentEstimate()); // subscribe to subsequent playback observations
|
|
@@ -51337,7 +51339,7 @@ var link_drm_and_content = __webpack_require__(9607);
|
|
|
51337
51339
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/observable/throwError.js
|
|
51338
51340
|
var throwError = __webpack_require__(3610);
|
|
51339
51341
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/observable/interval.js
|
|
51340
|
-
var
|
|
51342
|
+
var interval = __webpack_require__(6697);
|
|
51341
51343
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/operators/tap.js
|
|
51342
51344
|
var tap = __webpack_require__(2006);
|
|
51343
51345
|
// EXTERNAL MODULE: ./node_modules/rxjs/dist/esm5/internal/observable/fromEvent.js
|
|
@@ -51462,7 +51464,7 @@ var AudioVideoSegmentBuffer = /*#__PURE__*/function (_SegmentBuffer) {
|
|
|
51462
51464
|
// SourceBuffer is currently updating.
|
|
51463
51465
|
|
|
51464
51466
|
|
|
51465
|
-
(0,
|
|
51467
|
+
(0,interval/* interval */.F)(SOURCE_BUFFER_FLUSHING_INTERVAL).pipe((0,tap/* tap */.b)(function () {
|
|
51466
51468
|
return _this._flush();
|
|
51467
51469
|
}), (0,takeUntil/* takeUntil */.R)(_this._destroy$)).subscribe();
|
|
51468
51470
|
(0,fromEvent/* fromEvent */.R)(_this._sourceBuffer, "error").pipe((0,tap/* tap */.b)(function (err) {
|
|
@@ -52932,7 +52934,7 @@ function reloadAfterSwitch(period, bufferType, playbackObserver, deltaPos) {
|
|
|
52932
52934
|
// It can happen when `reloadAfterSwitch` is called as a side-effect of the
|
|
52933
52935
|
// same event that triggers the playback observation to be emitted.
|
|
52934
52936
|
return nextTickObs().pipe((0,mergeMap/* mergeMap */.z)(function () {
|
|
52935
|
-
return playbackObserver.
|
|
52937
|
+
return playbackObserver.getReference().asObservable();
|
|
52936
52938
|
}), (0,map/* map */.U)(function (observation) {
|
|
52937
52939
|
var _a, _b;
|
|
52938
52940
|
|
|
@@ -54517,7 +54519,7 @@ function appendSegmentToBuffer(playbackObserver, segmentBuffer, dataInfos) {
|
|
|
54517
54519
|
throw new media_error/* default */.Z("BUFFER_APPEND_ERROR", reason);
|
|
54518
54520
|
}
|
|
54519
54521
|
|
|
54520
|
-
return playbackObserver.
|
|
54522
|
+
return playbackObserver.getReference().asObservable().pipe((0,take/* take */.q)(1), (0,mergeMap/* mergeMap */.z)(function (observation) {
|
|
54521
54523
|
var _a;
|
|
54522
54524
|
|
|
54523
54525
|
var currentPos = (_a = observation.position.pending) !== null && _a !== void 0 ? _a : observation.position.last;
|
|
@@ -54798,7 +54800,7 @@ function RepresentationStream(_ref) {
|
|
|
54798
54800
|
var queue$ = downloadingQueue.start().pipe((0,mergeMap/* mergeMap */.z)(onQueueEvent));
|
|
54799
54801
|
/** Observable emitting the stream "status" and filling `lastSegmentQueue`. */
|
|
54800
54802
|
|
|
54801
|
-
var status$ = combineLatest([playbackObserver.
|
|
54803
|
+
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
54804
|
var _ref2$ = _ref2[0],
|
|
54803
54805
|
observation = _ref2$[0],
|
|
54804
54806
|
bufferGoal = _ref2$[1],
|
|
@@ -55450,7 +55452,7 @@ function createEmptyAdaptationStream(playbackObserver, wantedBufferAhead, buffer
|
|
|
55450
55452
|
var period = content.period;
|
|
55451
55453
|
var hasFinishedLoading = false;
|
|
55452
55454
|
var wantedBufferAhead$ = wantedBufferAhead.asObservable();
|
|
55453
|
-
var observation$ = playbackObserver.
|
|
55455
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
55454
55456
|
return combineLatest([observation$, wantedBufferAhead$]).pipe((0,mergeMap/* mergeMap */.z)(function (_ref) {
|
|
55455
55457
|
var observation = _ref[0],
|
|
55456
55458
|
wba = _ref[1];
|
|
@@ -55840,6 +55842,7 @@ function getFirstSegmentAfterPeriod(inventory, period) {
|
|
|
55840
55842
|
|
|
55841
55843
|
|
|
55842
55844
|
|
|
55845
|
+
|
|
55843
55846
|
/**
|
|
55844
55847
|
* Create single PeriodStream Observable:
|
|
55845
55848
|
* - Lazily create (or reuse) a SegmentBuffer for the given type.
|
|
@@ -56036,16 +56039,30 @@ function getFirstDeclaredMimeType(adaptation) {
|
|
|
56036
56039
|
|
|
56037
56040
|
|
|
56038
56041
|
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)
|
|
56042
|
+
return initialPlaybackObserver.deriveReadOnlyObserver(function transform(observationRef, cancellationSignal) {
|
|
56043
|
+
var newRef = (0,reference/* default */.ZP)(constructAdaptationStreamPlaybackObservation());
|
|
56044
|
+
observationRef.onUpdate(emitAdaptationStreamPlaybackObservation, {
|
|
56045
|
+
clearSignal: cancellationSignal,
|
|
56046
|
+
emitCurrentValue: false
|
|
56047
56047
|
});
|
|
56048
|
-
|
|
56048
|
+
cancellationSignal.register(function () {
|
|
56049
|
+
newRef.finish();
|
|
56050
|
+
});
|
|
56051
|
+
return newRef;
|
|
56052
|
+
|
|
56053
|
+
function constructAdaptationStreamPlaybackObservation() {
|
|
56054
|
+
var baseObservation = observationRef.getValue();
|
|
56055
|
+
var buffered = segmentBuffer.getBufferedRanges();
|
|
56056
|
+
var bufferGap = (0,ranges/* getLeftSizeOfRange */.L7)(buffered, baseObservation.position.last);
|
|
56057
|
+
return (0,object_assign/* default */.Z)({}, baseObservation, {
|
|
56058
|
+
bufferGap: bufferGap
|
|
56059
|
+
});
|
|
56060
|
+
}
|
|
56061
|
+
|
|
56062
|
+
function emitAdaptationStreamPlaybackObservation() {
|
|
56063
|
+
newRef.setValue(constructAdaptationStreamPlaybackObservation());
|
|
56064
|
+
}
|
|
56065
|
+
});
|
|
56049
56066
|
}
|
|
56050
56067
|
;// CONCATENATED MODULE: ./src/core/stream/period/index.ts
|
|
56051
56068
|
/**
|
|
@@ -56426,7 +56443,7 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56426
56443
|
var defaultMaxAhead = MAXIMUM_MAX_BUFFER_AHEAD[bufferType] != null ? MAXIMUM_MAX_BUFFER_AHEAD[bufferType] : Infinity;
|
|
56427
56444
|
return BufferGarbageCollector({
|
|
56428
56445
|
segmentBuffer: segmentBuffer,
|
|
56429
|
-
currentTime$: playbackObserver.
|
|
56446
|
+
currentTime$: playbackObserver.getReference().asObservable().pipe((0,map/* map */.U)(function (o) {
|
|
56430
56447
|
var _a;
|
|
56431
56448
|
|
|
56432
56449
|
return (_a = o.position.pending) !== null && _a !== void 0 ? _a : o.position.last;
|
|
@@ -56544,7 +56561,8 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56544
56561
|
// than the ones already considered
|
|
56545
56562
|
|
|
56546
56563
|
|
|
56547
|
-
var
|
|
56564
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
56565
|
+
var restartStreamsWhenOutOfBounds$ = observation$.pipe((0,filter_map/* default */.Z)(function (_ref2) {
|
|
56548
56566
|
var position = _ref2.position;
|
|
56549
56567
|
|
|
56550
56568
|
var _a, _b;
|
|
@@ -56605,7 +56623,7 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56605
56623
|
}).concat([// Schedule micro task before checking the last playback observation
|
|
56606
56624
|
// to reduce the risk of race conditions where the next observation
|
|
56607
56625
|
// was going to be emitted synchronously.
|
|
56608
|
-
nextTickObs().pipe((0,ignoreElements/* ignoreElements */.l)()), playbackObserver.
|
|
56626
|
+
nextTickObs().pipe((0,ignoreElements/* ignoreElements */.l)()), playbackObserver.getReference().asObservable().pipe((0,take/* take */.q)(1), (0,mergeMap/* mergeMap */.z)(function (observation) {
|
|
56609
56627
|
var _a;
|
|
56610
56628
|
|
|
56611
56629
|
var shouldAutoPlay = !((_a = observation.paused.pending) !== null && _a !== void 0 ? _a : playbackObserver.getIsPaused());
|
|
@@ -56662,7 +56680,7 @@ function StreamOrchestrator(content, playbackObserver, representationEstimator,
|
|
|
56662
56680
|
|
|
56663
56681
|
var destroyNextStreams$ = new Subject/* Subject */.x(); // Emits when the current position goes over the end of the current Stream.
|
|
56664
56682
|
|
|
56665
|
-
var endOfCurrentStream$ = playbackObserver.
|
|
56683
|
+
var endOfCurrentStream$ = playbackObserver.getReference().asObservable().pipe((0,filter/* filter */.h)(function (_ref4) {
|
|
56666
56684
|
var position = _ref4.position;
|
|
56667
56685
|
|
|
56668
56686
|
var _a;
|
|
@@ -56814,7 +56832,7 @@ function ContentTimeBoundariesObserver(manifest, streams, playbackObserver) {
|
|
|
56814
56832
|
var maximumPositionCalculator = new MaximumPositionCalculator(manifest); // trigger warnings when the wanted time is before or after the manifest's
|
|
56815
56833
|
// segments
|
|
56816
56834
|
|
|
56817
|
-
var outOfManifest$ = playbackObserver.
|
|
56835
|
+
var outOfManifest$ = playbackObserver.getReference().asObservable().pipe((0,filter_map/* default */.Z)(function (_ref) {
|
|
56818
56836
|
var position = _ref.position;
|
|
56819
56837
|
|
|
56820
56838
|
var _a;
|
|
@@ -57042,7 +57060,7 @@ function getLastPositionFromAdaptation(adaptation) {
|
|
|
57042
57060
|
* @param {Object} manifest
|
|
57043
57061
|
* @param {Object} playbackObserver
|
|
57044
57062
|
* @param {Object} args
|
|
57045
|
-
* @returns {
|
|
57063
|
+
* @returns {Object}
|
|
57046
57064
|
*/
|
|
57047
57065
|
|
|
57048
57066
|
function createStreamPlaybackObserver(manifest, playbackObserver, _ref) {
|
|
@@ -57051,10 +57069,24 @@ function createStreamPlaybackObserver(manifest, playbackObserver, _ref) {
|
|
|
57051
57069
|
initialSeekPerformed = _ref.initialSeekPerformed,
|
|
57052
57070
|
speed = _ref.speed,
|
|
57053
57071
|
startTime = _ref.startTime;
|
|
57054
|
-
return playbackObserver.deriveReadOnlyObserver(function
|
|
57055
|
-
|
|
57056
|
-
|
|
57057
|
-
|
|
57072
|
+
return playbackObserver.deriveReadOnlyObserver(function transform(observationRef, cancellationSignal) {
|
|
57073
|
+
var newRef = (0,reference/* default */.ZP)(constructStreamPlaybackObservation());
|
|
57074
|
+
speed.onUpdate(emitStreamPlaybackObservation, {
|
|
57075
|
+
clearSignal: cancellationSignal,
|
|
57076
|
+
emitCurrentValue: false
|
|
57077
|
+
});
|
|
57078
|
+
observationRef.onUpdate(emitStreamPlaybackObservation, {
|
|
57079
|
+
clearSignal: cancellationSignal,
|
|
57080
|
+
emitCurrentValue: false
|
|
57081
|
+
});
|
|
57082
|
+
cancellationSignal.register(function () {
|
|
57083
|
+
newRef.finish();
|
|
57084
|
+
});
|
|
57085
|
+
return newRef;
|
|
57086
|
+
|
|
57087
|
+
function constructStreamPlaybackObservation() {
|
|
57088
|
+
var observation = observationRef.getValue();
|
|
57089
|
+
var lastSpeed = speed.getValue();
|
|
57058
57090
|
var pendingPosition;
|
|
57059
57091
|
|
|
57060
57092
|
if (!initialSeekPerformed.getValue()) {
|
|
@@ -57088,7 +57120,11 @@ function createStreamPlaybackObserver(manifest, playbackObserver, _ref) {
|
|
|
57088
57120
|
readyState: observation.readyState,
|
|
57089
57121
|
speed: lastSpeed
|
|
57090
57122
|
};
|
|
57091
|
-
}
|
|
57123
|
+
}
|
|
57124
|
+
|
|
57125
|
+
function emitStreamPlaybackObservation() {
|
|
57126
|
+
newRef.setValue(constructStreamPlaybackObservation());
|
|
57127
|
+
}
|
|
57092
57128
|
});
|
|
57093
57129
|
}
|
|
57094
57130
|
// EXTERNAL MODULE: ./src/core/init/emit_loaded_event.ts + 1 modules
|
|
@@ -57478,7 +57514,7 @@ function areSourceBuffersUpdating$(sourceBuffers) {
|
|
|
57478
57514
|
return true;
|
|
57479
57515
|
})), (0,fromEvent/* fromEvent */.R)(sourceBuffer, "update").pipe((0,map/* map */.U)(function () {
|
|
57480
57516
|
return false;
|
|
57481
|
-
})), (0,
|
|
57517
|
+
})), (0,interval/* interval */.F)(500).pipe((0,map/* map */.U)(function () {
|
|
57482
57518
|
return sourceBuffer.updating;
|
|
57483
57519
|
}))).pipe((0,startWith/* startWith */.O)(sourceBuffer.updating), (0,distinctUntilChanged/* distinctUntilChanged */.x)()));
|
|
57484
57520
|
};
|
|
@@ -57773,7 +57809,7 @@ function streamEventsEmitter(manifest, mediaElement, observation$) {
|
|
|
57773
57809
|
var _config$getCurrent = config/* default.getCurrent */.Z.getCurrent(),
|
|
57774
57810
|
STREAM_EVENT_EMITTER_POLL_INTERVAL = _config$getCurrent.STREAM_EVENT_EMITTER_POLL_INTERVAL;
|
|
57775
57811
|
|
|
57776
|
-
return combineLatest([(0,
|
|
57812
|
+
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
57813
|
var _ = _ref[0],
|
|
57778
57814
|
observation = _ref[1];
|
|
57779
57815
|
var seeking = observation.seeking;
|
|
@@ -57891,7 +57927,7 @@ function createMediaSourceLoader(_ref) {
|
|
|
57891
57927
|
initialPlayPerformed = _initialSeekAndPlay.initialPlayPerformed,
|
|
57892
57928
|
initialSeekPerformed = _initialSeekAndPlay.initialSeekPerformed;
|
|
57893
57929
|
|
|
57894
|
-
var observation$ = playbackObserver.
|
|
57930
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
57895
57931
|
var streamEvents$ = initialPlayPerformed.asObservable().pipe((0,filter/* filter */.h)(function (hasPlayed) {
|
|
57896
57932
|
return hasPlayed;
|
|
57897
57933
|
}), (0,mergeMap/* mergeMap */.z)(function () {
|
|
@@ -59218,12 +59254,6 @@ function parseLoadVideoOptions(options) {
|
|
|
59218
59254
|
}
|
|
59219
59255
|
|
|
59220
59256
|
|
|
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
59257
|
;// CONCATENATED MODULE: ./src/core/api/playback_observer.ts
|
|
59228
59258
|
/**
|
|
59229
59259
|
* Copyright 2015 CANAL+ Group
|
|
@@ -59246,6 +59276,7 @@ function skip(count) {
|
|
|
59246
59276
|
|
|
59247
59277
|
|
|
59248
59278
|
|
|
59279
|
+
|
|
59249
59280
|
/**
|
|
59250
59281
|
* HTMLMediaElement Events for which playback observations are calculated and
|
|
59251
59282
|
* emitted.
|
|
@@ -59269,6 +59300,12 @@ var SCANNED_MEDIA_ELEMENTS_EVENTS = ["canplay", "ended", "play", "pause", "seeki
|
|
|
59269
59300
|
|
|
59270
59301
|
var PlaybackObserver = /*#__PURE__*/function () {
|
|
59271
59302
|
/**
|
|
59303
|
+
* Create a new `PlaybackObserver`, which allows to produce new "playback
|
|
59304
|
+
* observations" on various media events and intervals.
|
|
59305
|
+
*
|
|
59306
|
+
* Note that creating a `PlaybackObserver` lead to the usage of resources,
|
|
59307
|
+
* such as event listeners which will only be freed once the `stop` method is
|
|
59308
|
+
* called.
|
|
59272
59309
|
* @param {HTMLMediaElement} mediaElement
|
|
59273
59310
|
* @param {Object} options
|
|
59274
59311
|
*/
|
|
@@ -59277,18 +59314,33 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59277
59314
|
this._mediaElement = mediaElement;
|
|
59278
59315
|
this._withMediaSource = options.withMediaSource;
|
|
59279
59316
|
this._lowLatencyMode = options.lowLatencyMode;
|
|
59280
|
-
this.
|
|
59281
|
-
this.
|
|
59317
|
+
this._canceller = new task_canceller/* default */.ZP();
|
|
59318
|
+
this._observationRef = this._createSharedReference();
|
|
59282
59319
|
}
|
|
59283
59320
|
/**
|
|
59284
|
-
*
|
|
59285
|
-
*
|
|
59286
|
-
*
|
|
59321
|
+
* Stop the `PlaybackObserver` from emitting playback observations and free all
|
|
59322
|
+
* resources reserved to emitting them such as event listeners, intervals and
|
|
59323
|
+
* subscribing callbacks.
|
|
59324
|
+
*
|
|
59325
|
+
* Once `stop` is called, no new playback observation will ever be emitted.
|
|
59326
|
+
*
|
|
59327
|
+
* Note that it is important to call stop once the `PlaybackObserver` is no
|
|
59328
|
+
* more needed to avoid unnecessarily leaking resources.
|
|
59287
59329
|
*/
|
|
59288
59330
|
|
|
59289
59331
|
|
|
59290
59332
|
var _proto = PlaybackObserver.prototype;
|
|
59291
59333
|
|
|
59334
|
+
_proto.stop = function stop() {
|
|
59335
|
+
this._canceller.cancel();
|
|
59336
|
+
}
|
|
59337
|
+
/**
|
|
59338
|
+
* Returns the current position advertised by the `HTMLMediaElement`, in
|
|
59339
|
+
* seconds.
|
|
59340
|
+
* @returns {number}
|
|
59341
|
+
*/
|
|
59342
|
+
;
|
|
59343
|
+
|
|
59292
59344
|
_proto.getCurrentTime = function getCurrentTime() {
|
|
59293
59345
|
return this._mediaElement.currentTime;
|
|
59294
59346
|
}
|
|
@@ -59330,31 +59382,19 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59330
59382
|
return this._mediaElement.readyState;
|
|
59331
59383
|
}
|
|
59332
59384
|
/**
|
|
59333
|
-
* Returns an
|
|
59334
|
-
*
|
|
59385
|
+
* Returns an `IReadOnlySharedReference` storing the last playback observation
|
|
59386
|
+
* produced by the `PlaybackObserver` and updated each time a new one is
|
|
59387
|
+
* produced.
|
|
59335
59388
|
*
|
|
59336
|
-
*
|
|
59337
|
-
*
|
|
59338
|
-
* `subscribe` will receive the same events at the same time.
|
|
59339
|
-
* This was done for performance and simplicity reasons.
|
|
59389
|
+
* This value can then be for example subscribed to to be notified of future
|
|
59390
|
+
* playback observations.
|
|
59340
59391
|
*
|
|
59341
|
-
* @
|
|
59342
|
-
* @returns {Observable}
|
|
59392
|
+
* @returns {Object}
|
|
59343
59393
|
*/
|
|
59344
59394
|
;
|
|
59345
59395
|
|
|
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
|
-
});
|
|
59396
|
+
_proto.getReference = function getReference() {
|
|
59397
|
+
return this._observationRef;
|
|
59358
59398
|
}
|
|
59359
59399
|
/**
|
|
59360
59400
|
* Register a callback so it regularly receives playback observations.
|
|
@@ -59364,25 +59404,20 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59364
59404
|
* be first emitted synchronously.
|
|
59365
59405
|
* - `clearSignal`: If set, the callback will be unregistered when this
|
|
59366
59406
|
* CancellationSignal emits.
|
|
59367
|
-
* @returns {Function} - Allows to easily unregister the callback
|
|
59368
59407
|
*/
|
|
59369
59408
|
;
|
|
59370
59409
|
|
|
59371
59410
|
_proto.listen = function listen(cb, options) {
|
|
59372
|
-
var _a
|
|
59411
|
+
var _a;
|
|
59373
59412
|
|
|
59374
|
-
if (((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59413
|
+
if (this._canceller.isUsed || ((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59375
59414
|
return noop/* default */.Z;
|
|
59376
59415
|
}
|
|
59377
59416
|
|
|
59378
|
-
|
|
59379
|
-
|
|
59380
|
-
|
|
59381
|
-
})
|
|
59382
|
-
return function () {
|
|
59383
|
-
unregister();
|
|
59384
|
-
sub.unsubscribe();
|
|
59385
|
-
};
|
|
59417
|
+
this._observationRef.onUpdate(cb, {
|
|
59418
|
+
clearSignal: options === null || options === void 0 ? void 0 : options.clearSignal,
|
|
59419
|
+
emitCurrentValue: options === null || options === void 0 ? void 0 : options.includeLastObservation
|
|
59420
|
+
});
|
|
59386
59421
|
}
|
|
59387
59422
|
/**
|
|
59388
59423
|
* Generate a new playback observer which can listen to other
|
|
@@ -59395,82 +59430,113 @@ var PlaybackObserver = /*#__PURE__*/function () {
|
|
|
59395
59430
|
*
|
|
59396
59431
|
* As argument, this method takes a function which will allow to produce
|
|
59397
59432
|
* the new set of properties to be present on each observation.
|
|
59398
|
-
* @param {Function}
|
|
59433
|
+
* @param {Function} transform
|
|
59399
59434
|
* @returns {Object}
|
|
59400
59435
|
*/
|
|
59401
59436
|
;
|
|
59402
59437
|
|
|
59403
|
-
_proto.deriveReadOnlyObserver = function deriveReadOnlyObserver(
|
|
59404
|
-
return generateReadOnlyObserver(this,
|
|
59438
|
+
_proto.deriveReadOnlyObserver = function deriveReadOnlyObserver(transform) {
|
|
59439
|
+
return generateReadOnlyObserver(this, transform, this._canceller.signal);
|
|
59405
59440
|
}
|
|
59406
59441
|
/**
|
|
59407
|
-
* Creates the
|
|
59442
|
+
* Creates the `IReadOnlySharedReference` that will generate playback
|
|
59443
|
+
* observations.
|
|
59408
59444
|
* @returns {Observable}
|
|
59409
59445
|
*/
|
|
59410
59446
|
;
|
|
59411
59447
|
|
|
59412
|
-
_proto.
|
|
59413
|
-
var
|
|
59448
|
+
_proto._createSharedReference = function _createSharedReference() {
|
|
59449
|
+
var _this = this;
|
|
59414
59450
|
|
|
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;
|
|
59451
|
+
if (this._observationRef !== undefined) {
|
|
59452
|
+
return this._observationRef;
|
|
59453
|
+
}
|
|
59420
59454
|
|
|
59421
|
-
|
|
59422
|
-
var _a;
|
|
59455
|
+
var lastObservation;
|
|
59423
59456
|
|
|
59424
|
-
|
|
59457
|
+
var _config$getCurrent = config/* default.getCurrent */.Z.getCurrent(),
|
|
59458
|
+
SAMPLING_INTERVAL_MEDIASOURCE = _config$getCurrent.SAMPLING_INTERVAL_MEDIASOURCE,
|
|
59459
|
+
SAMPLING_INTERVAL_LOW_LATENCY = _config$getCurrent.SAMPLING_INTERVAL_LOW_LATENCY,
|
|
59460
|
+
SAMPLING_INTERVAL_NO_MEDIASOURCE = _config$getCurrent.SAMPLING_INTERVAL_NO_MEDIASOURCE;
|
|
59425
59461
|
|
|
59426
|
-
|
|
59427
|
-
|
|
59428
|
-
_this2._internalSeekingEventsIncomingCounter -= 1;
|
|
59429
|
-
}
|
|
59462
|
+
var getCurrentObservation = function getCurrentObservation(event) {
|
|
59463
|
+
var tmpEvt = event;
|
|
59430
59464
|
|
|
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);
|
|
59465
|
+
if (tmpEvt === "seeking" && _this._internalSeekingEventsIncomingCounter > 0) {
|
|
59466
|
+
tmpEvt = "internal-seeking";
|
|
59467
|
+
_this._internalSeekingEventsIncomingCounter -= 1;
|
|
59468
|
+
}
|
|
59446
59469
|
|
|
59447
|
-
|
|
59448
|
-
|
|
59449
|
-
|
|
59470
|
+
var _lastObservation = lastObservation !== null && lastObservation !== void 0 ? lastObservation : _this._generateInitialObservation();
|
|
59471
|
+
|
|
59472
|
+
var mediaTimings = getMediaInfos(_this._mediaElement, tmpEvt);
|
|
59473
|
+
var internalSeeking = mediaTimings.seeking && ( // We've just received the event for internally seeking
|
|
59474
|
+
tmpEvt === "internal-seeking" || // or We're still waiting on the previous internal-seek
|
|
59475
|
+
_lastObservation.internalSeeking && tmpEvt !== "seeking");
|
|
59476
|
+
var rebufferingStatus = getRebufferingStatus(_lastObservation, mediaTimings, {
|
|
59477
|
+
lowLatencyMode: _this._lowLatencyMode,
|
|
59478
|
+
withMediaSource: _this._withMediaSource
|
|
59479
|
+
});
|
|
59480
|
+
var freezingStatus = getFreezingStatus(_lastObservation, mediaTimings);
|
|
59481
|
+
var timings = (0,object_assign/* default */.Z)({}, {
|
|
59482
|
+
rebuffering: rebufferingStatus,
|
|
59483
|
+
freezing: freezingStatus,
|
|
59484
|
+
internalSeeking: internalSeeking
|
|
59485
|
+
}, mediaTimings);
|
|
59486
|
+
|
|
59487
|
+
if (log/* default.hasLevel */.Z.hasLevel("DEBUG")) {
|
|
59488
|
+
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);
|
|
59489
|
+
}
|
|
59490
|
+
|
|
59491
|
+
return timings;
|
|
59492
|
+
};
|
|
59450
59493
|
|
|
59451
|
-
|
|
59494
|
+
var returnedSharedReference = (0,reference/* default */.ZP)(getCurrentObservation("init"));
|
|
59495
|
+
|
|
59496
|
+
var generateObservationForEvent = function generateObservationForEvent(event) {
|
|
59497
|
+
var newObservation = getCurrentObservation(event);
|
|
59498
|
+
|
|
59499
|
+
if (log/* default.hasLevel */.Z.hasLevel("DEBUG")) {
|
|
59500
|
+
log/* default.debug */.Z.debug("API: current playback timeline:\n" + prettyPrintBuffered(newObservation.buffered, newObservation.position), "\n" + event);
|
|
59501
|
+
}
|
|
59502
|
+
|
|
59503
|
+
lastObservation = newObservation;
|
|
59504
|
+
returnedSharedReference.setValue(newObservation);
|
|
59505
|
+
};
|
|
59506
|
+
|
|
59507
|
+
var interval = this._lowLatencyMode ? SAMPLING_INTERVAL_LOW_LATENCY : this._withMediaSource ? SAMPLING_INTERVAL_MEDIASOURCE : SAMPLING_INTERVAL_NO_MEDIASOURCE;
|
|
59508
|
+
var intervalId = setInterval(onInterval, interval);
|
|
59509
|
+
var removeEventListeners = SCANNED_MEDIA_ELEMENTS_EVENTS.map(function (eventName) {
|
|
59510
|
+
_this._mediaElement.addEventListener(eventName, onMediaEvent);
|
|
59511
|
+
|
|
59512
|
+
function onMediaEvent() {
|
|
59513
|
+
restartInterval();
|
|
59514
|
+
generateObservationForEvent(eventName);
|
|
59515
|
+
}
|
|
59516
|
+
|
|
59517
|
+
return function () {
|
|
59518
|
+
_this._mediaElement.removeEventListener(eventName, onMediaEvent);
|
|
59452
59519
|
};
|
|
59520
|
+
});
|
|
59453
59521
|
|
|
59454
|
-
|
|
59455
|
-
|
|
59456
|
-
|
|
59457
|
-
|
|
59522
|
+
this._canceller.signal.register(function () {
|
|
59523
|
+
clearInterval(intervalId);
|
|
59524
|
+
removeEventListeners.forEach(function (cb) {
|
|
59525
|
+
return cb();
|
|
59458
59526
|
});
|
|
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);
|
|
59527
|
+
returnedSharedReference.finish();
|
|
59528
|
+
});
|
|
59465
59529
|
|
|
59466
|
-
|
|
59467
|
-
log/* default.debug */.Z.debug("API: current playback timeline:\n" + prettyPrintBuffered(newObservation.buffered, newObservation.position), "\n" + event);
|
|
59468
|
-
}
|
|
59530
|
+
return returnedSharedReference;
|
|
59469
59531
|
|
|
59470
|
-
|
|
59471
|
-
|
|
59472
|
-
|
|
59473
|
-
|
|
59532
|
+
function onInterval() {
|
|
59533
|
+
generateObservationForEvent("timeupdate");
|
|
59534
|
+
}
|
|
59535
|
+
|
|
59536
|
+
function restartInterval() {
|
|
59537
|
+
clearInterval(intervalId);
|
|
59538
|
+
intervalId = setInterval(onInterval, interval);
|
|
59539
|
+
}
|
|
59474
59540
|
};
|
|
59475
59541
|
|
|
59476
59542
|
_proto._generateInitialObservation = function _generateInitialObservation() {
|
|
@@ -59769,18 +59835,13 @@ function prettyPrintBuffered(buffered, currentTime) {
|
|
|
59769
59835
|
* Create `IReadOnlyPlaybackObserver` from a source `IReadOnlyPlaybackObserver`
|
|
59770
59836
|
* and a mapping function.
|
|
59771
59837
|
* @param {Object} src
|
|
59772
|
-
* @param {Function}
|
|
59838
|
+
* @param {Function} transform
|
|
59773
59839
|
* @returns {Object}
|
|
59774
59840
|
*/
|
|
59775
59841
|
|
|
59776
59842
|
|
|
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
|
-
}));
|
|
59843
|
+
function generateReadOnlyObserver(src, transform, cancellationSignal) {
|
|
59844
|
+
var mappedRef = transform(src.getReference(), cancellationSignal);
|
|
59784
59845
|
return {
|
|
59785
59846
|
getCurrentTime: function getCurrentTime() {
|
|
59786
59847
|
return src.getCurrentTime();
|
|
@@ -59791,28 +59852,23 @@ function generateReadOnlyObserver(src, mapObservable) {
|
|
|
59791
59852
|
getIsPaused: function getIsPaused() {
|
|
59792
59853
|
return src.getIsPaused();
|
|
59793
59854
|
},
|
|
59794
|
-
|
|
59795
|
-
return
|
|
59855
|
+
getReference: function getReference() {
|
|
59856
|
+
return mappedRef;
|
|
59796
59857
|
},
|
|
59797
59858
|
listen: function listen(cb, options) {
|
|
59798
|
-
var _a
|
|
59859
|
+
var _a;
|
|
59799
59860
|
|
|
59800
|
-
if (((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59801
|
-
return
|
|
59861
|
+
if (cancellationSignal.isCancelled || ((_a = options === null || options === void 0 ? void 0 : options.clearSignal) === null || _a === void 0 ? void 0 : _a.isCancelled) === true) {
|
|
59862
|
+
return;
|
|
59802
59863
|
}
|
|
59803
59864
|
|
|
59804
|
-
|
|
59805
|
-
|
|
59806
|
-
|
|
59807
|
-
|
|
59808
|
-
})) !== null && _c !== void 0 ? _c : noop/* default */.Z;
|
|
59809
|
-
return function () {
|
|
59810
|
-
unregister();
|
|
59811
|
-
sub.unsubscribe();
|
|
59812
|
-
};
|
|
59865
|
+
mappedRef.onUpdate(cb, {
|
|
59866
|
+
clearSignal: options === null || options === void 0 ? void 0 : options.clearSignal,
|
|
59867
|
+
emitCurrentValue: options === null || options === void 0 ? void 0 : options.includeLastObservation
|
|
59868
|
+
});
|
|
59813
59869
|
},
|
|
59814
|
-
deriveReadOnlyObserver: function deriveReadOnlyObserver(
|
|
59815
|
-
return generateReadOnlyObserver(this,
|
|
59870
|
+
deriveReadOnlyObserver: function deriveReadOnlyObserver(newTransformFn) {
|
|
59871
|
+
return generateReadOnlyObserver(this, newTransformFn, cancellationSignal);
|
|
59816
59872
|
}
|
|
59817
59873
|
};
|
|
59818
59874
|
}
|
|
@@ -61240,7 +61296,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
61240
61296
|
videoElement.preload = "auto";
|
|
61241
61297
|
_this.version =
|
|
61242
61298
|
/* PLAYER_VERSION */
|
|
61243
|
-
"3.28.0-dev.
|
|
61299
|
+
"3.28.0-dev.2022062700";
|
|
61244
61300
|
_this.log = log/* default */.Z;
|
|
61245
61301
|
_this.state = "STOPPED";
|
|
61246
61302
|
_this.videoElement = videoElement;
|
|
@@ -61559,6 +61615,9 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
61559
61615
|
withMediaSource: !isDirectFile,
|
|
61560
61616
|
lowLatencyMode: lowLatencyMode
|
|
61561
61617
|
});
|
|
61618
|
+
currentContentCanceller.signal.register(function () {
|
|
61619
|
+
playbackObserver.stop();
|
|
61620
|
+
});
|
|
61562
61621
|
/** Emit playback events. */
|
|
61563
61622
|
|
|
61564
61623
|
var playback$;
|
|
@@ -61804,7 +61863,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
61804
61863
|
}), (0,share/* share */.B)());
|
|
61805
61864
|
/** Emit when the media element emits a "seeking" event. */
|
|
61806
61865
|
|
|
61807
|
-
var observation$ = playbackObserver.
|
|
61866
|
+
var observation$ = playbackObserver.getReference().asObservable();
|
|
61808
61867
|
var stateChangingEvent$ = observation$.pipe((0,filter/* filter */.h)(function (o) {
|
|
61809
61868
|
return o.event === "seeking" || o.event === "ended" || o.event === "play" || o.event === "pause";
|
|
61810
61869
|
}));
|
|
@@ -63350,9 +63409,12 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
63350
63409
|
this._priv_contentEventsMemory = {}; // DRM-related clean-up
|
|
63351
63410
|
|
|
63352
63411
|
var freeUpContentLock = function freeUpContentLock() {
|
|
63353
|
-
|
|
63412
|
+
if (_this4.videoElement !== null) {
|
|
63413
|
+
// If not disposed
|
|
63414
|
+
log/* default.debug */.Z.debug("Unlocking `contentLock`. Next content can begin.");
|
|
63354
63415
|
|
|
63355
|
-
|
|
63416
|
+
_this4._priv_contentLock.setValue(false);
|
|
63417
|
+
}
|
|
63356
63418
|
};
|
|
63357
63419
|
|
|
63358
63420
|
if (!(0,is_null_or_undefined/* default */.Z)(this.videoElement)) {
|
|
@@ -64055,7 +64117,7 @@ var Player = /*#__PURE__*/function (_EventEmitter) {
|
|
|
64055
64117
|
|
|
64056
64118
|
Player.version =
|
|
64057
64119
|
/* PLAYER_VERSION */
|
|
64058
|
-
"3.28.0-dev.
|
|
64120
|
+
"3.28.0-dev.2022062700";
|
|
64059
64121
|
/* harmony default export */ var public_api = (Player);
|
|
64060
64122
|
;// CONCATENATED MODULE: ./src/core/api/index.ts
|
|
64061
64123
|
/**
|