rx-player 4.1.0-dev.2024061700 → 4.1.0
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 +5 -1
- package/VERSION +1 -1
- package/dist/commonjs/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
- package/dist/commonjs/__GENERATED_CODE/embedded_worker.js +1 -1
- package/dist/commonjs/core/main/common/content_time_boundaries_observer.js +41 -19
- package/dist/commonjs/core/segment_sinks/garbage_collector.js +44 -24
- package/dist/commonjs/core/segment_sinks/inventory/utils.js +25 -3
- package/dist/commonjs/errors/custom_loader_error.d.ts +0 -1
- package/dist/commonjs/errors/custom_loader_error.d.ts.map +1 -1
- package/dist/commonjs/errors/custom_loader_error.js +1 -2
- package/dist/commonjs/errors/encrypted_media_error.d.ts +0 -1
- package/dist/commonjs/errors/encrypted_media_error.d.ts.map +1 -1
- package/dist/commonjs/errors/encrypted_media_error.js +1 -2
- package/dist/commonjs/errors/media_error.d.ts +0 -1
- package/dist/commonjs/errors/media_error.d.ts.map +1 -1
- package/dist/commonjs/errors/media_error.js +1 -2
- package/dist/commonjs/errors/network_error.d.ts +0 -1
- package/dist/commonjs/errors/network_error.d.ts.map +1 -1
- package/dist/commonjs/errors/network_error.js +1 -2
- package/dist/commonjs/errors/other_error.d.ts +0 -1
- package/dist/commonjs/errors/other_error.d.ts.map +1 -1
- package/dist/commonjs/errors/other_error.js +1 -2
- package/dist/commonjs/errors/source_buffer_error.d.ts +0 -1
- package/dist/commonjs/errors/source_buffer_error.d.ts.map +1 -1
- package/dist/commonjs/errors/source_buffer_error.js +1 -2
- package/dist/commonjs/errors/worker_initialization_error.d.ts +0 -1
- package/dist/commonjs/errors/worker_initialization_error.d.ts.map +1 -1
- package/dist/commonjs/errors/worker_initialization_error.js +1 -2
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +0 -1
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts.map +1 -1
- package/dist/commonjs/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +2 -2
- package/dist/commonjs/main_thread/api/debug/buffer_graph.js +48 -15
- package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -1
- package/dist/commonjs/main_thread/api/debug/modules/segment_buffer_content.js +38 -17
- package/dist/commonjs/main_thread/api/public_api.js +2 -2
- package/dist/commonjs/main_thread/decrypt/session_events_listener.js +2 -2
- package/dist/commonjs/main_thread/decrypt/utils/check_key_statuses.js +1 -1
- package/dist/commonjs/main_thread/init/multi_thread_content_initializer.js +19 -9
- package/dist/commonjs/main_thread/init/utils/rebuffering_controller.js +48 -26
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -1
- package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +85 -54
- package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -1
- package/dist/commonjs/main_thread/text_displayer/html/html_text_displayer.js +65 -12
- package/dist/commonjs/main_thread/text_displayer/html/text_track_cues_store.js +39 -7
- package/dist/commonjs/main_thread/text_displayer/native/native_text_displayer.js +27 -5
- package/dist/commonjs/parsers/containers/isobmff/utils.d.ts.map +1 -1
- package/dist/commonjs/parsers/containers/isobmff/utils.js +3 -1
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +0 -1
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +1 -2
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +0 -1
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts.map +1 -1
- package/dist/commonjs/parsers/manifest/dash/native-parser/node_parsers/utils.js +1 -2
- package/dist/commonjs/playback_observer/utils/observation_position.d.ts +11 -0
- package/dist/commonjs/playback_observer/utils/observation_position.d.ts.map +1 -1
- package/dist/commonjs/playback_observer/utils/observation_position.js +11 -0
- package/dist/commonjs/transports/dash/low_latency_segment_loader.d.ts.map +1 -1
- package/dist/commonjs/transports/dash/low_latency_segment_loader.js +1 -0
- package/dist/commonjs/utils/assert.d.ts +0 -1
- package/dist/commonjs/utils/assert.d.ts.map +1 -1
- package/dist/commonjs/utils/assert.js +1 -2
- package/dist/commonjs/utils/request/fetch.d.ts.map +1 -1
- package/dist/commonjs/utils/request/fetch.js +14 -0
- package/dist/commonjs/utils/request/request_error.d.ts +0 -1
- package/dist/commonjs/utils/request/request_error.d.ts.map +1 -1
- package/dist/commonjs/utils/request/request_error.js +14 -12
- package/dist/commonjs/utils/request/xhr.d.ts.map +1 -1
- package/dist/commonjs/utils/request/xhr.js +17 -0
- package/dist/commonjs/utils/task_canceller.d.ts +0 -1
- package/dist/commonjs/utils/task_canceller.d.ts.map +1 -1
- package/dist/commonjs/utils/task_canceller.js +3 -2
- package/dist/es2017/__GENERATED_CODE/embedded_worker.d.ts.map +1 -1
- package/dist/es2017/__GENERATED_CODE/embedded_worker.js +1 -1
- package/dist/es2017/core/main/common/content_time_boundaries_observer.js +6 -6
- package/dist/es2017/core/segment_sinks/garbage_collector.js +2 -4
- package/dist/es2017/core/segment_sinks/inventory/utils.js +3 -3
- package/dist/es2017/errors/custom_loader_error.d.ts +0 -1
- package/dist/es2017/errors/custom_loader_error.d.ts.map +1 -1
- package/dist/es2017/errors/custom_loader_error.js +1 -2
- package/dist/es2017/errors/encrypted_media_error.d.ts +0 -1
- package/dist/es2017/errors/encrypted_media_error.d.ts.map +1 -1
- package/dist/es2017/errors/encrypted_media_error.js +1 -2
- package/dist/es2017/errors/media_error.d.ts +0 -1
- package/dist/es2017/errors/media_error.d.ts.map +1 -1
- package/dist/es2017/errors/media_error.js +1 -2
- package/dist/es2017/errors/network_error.d.ts +0 -1
- package/dist/es2017/errors/network_error.d.ts.map +1 -1
- package/dist/es2017/errors/network_error.js +1 -2
- package/dist/es2017/errors/other_error.d.ts +0 -1
- package/dist/es2017/errors/other_error.d.ts.map +1 -1
- package/dist/es2017/errors/other_error.js +1 -2
- package/dist/es2017/errors/source_buffer_error.d.ts +0 -1
- package/dist/es2017/errors/source_buffer_error.d.ts.map +1 -1
- package/dist/es2017/errors/source_buffer_error.js +1 -2
- package/dist/es2017/errors/worker_initialization_error.d.ts +0 -1
- package/dist/es2017/errors/worker_initialization_error.d.ts.map +1 -1
- package/dist/es2017/errors/worker_initialization_error.js +1 -2
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts +0 -1
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.d.ts.map +1 -1
- package/dist/es2017/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.js +2 -2
- package/dist/es2017/main_thread/api/debug/buffer_graph.js +6 -6
- package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.d.ts.map +1 -1
- package/dist/es2017/main_thread/api/debug/modules/segment_buffer_content.js +1 -2
- package/dist/es2017/main_thread/api/public_api.js +2 -2
- package/dist/es2017/main_thread/decrypt/session_events_listener.js +2 -2
- package/dist/es2017/main_thread/decrypt/utils/check_key_statuses.js +1 -1
- package/dist/es2017/main_thread/init/multi_thread_content_initializer.js +1 -2
- package/dist/es2017/main_thread/init/utils/rebuffering_controller.js +3 -3
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.d.ts.map +1 -1
- package/dist/es2017/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js +2 -4
- package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.d.ts.map +1 -1
- package/dist/es2017/main_thread/text_displayer/html/html_text_displayer.js +7 -8
- package/dist/es2017/main_thread/text_displayer/html/text_track_cues_store.js +7 -7
- package/dist/es2017/main_thread/text_displayer/native/native_text_displayer.js +2 -2
- package/dist/es2017/parsers/containers/isobmff/utils.d.ts.map +1 -1
- package/dist/es2017/parsers/containers/isobmff/utils.js +3 -1
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts +0 -1
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/dash/fast-js-parser/node_parsers/utils.js +1 -2
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts +0 -1
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.d.ts.map +1 -1
- package/dist/es2017/parsers/manifest/dash/native-parser/node_parsers/utils.js +1 -2
- package/dist/es2017/playback_observer/utils/observation_position.d.ts +11 -0
- package/dist/es2017/playback_observer/utils/observation_position.d.ts.map +1 -1
- package/dist/es2017/playback_observer/utils/observation_position.js +11 -0
- package/dist/es2017/transports/dash/low_latency_segment_loader.d.ts.map +1 -1
- package/dist/es2017/transports/dash/low_latency_segment_loader.js +1 -0
- package/dist/es2017/utils/assert.d.ts +0 -1
- package/dist/es2017/utils/assert.d.ts.map +1 -1
- package/dist/es2017/utils/assert.js +1 -2
- package/dist/es2017/utils/request/fetch.d.ts.map +1 -1
- package/dist/es2017/utils/request/fetch.js +14 -0
- package/dist/es2017/utils/request/request_error.d.ts +0 -1
- package/dist/es2017/utils/request/request_error.d.ts.map +1 -1
- package/dist/es2017/utils/request/request_error.js +13 -12
- package/dist/es2017/utils/request/xhr.d.ts.map +1 -1
- package/dist/es2017/utils/request/xhr.js +17 -0
- package/dist/es2017/utils/task_canceller.d.ts +0 -1
- package/dist/es2017/utils/task_canceller.d.ts.map +1 -1
- package/dist/es2017/utils/task_canceller.js +2 -2
- package/dist/rx-player.js +16 -16
- package/dist/worker.js +6 -6
- package/package.json +2 -12
- package/src/__GENERATED_CODE/embedded_worker.ts +1 -1
- package/src/core/main/common/content_time_boundaries_observer.ts +6 -6
- package/src/core/segment_sinks/garbage_collector.ts +2 -4
- package/src/core/segment_sinks/inventory/utils.ts +3 -3
- package/src/errors/custom_loader_error.ts +1 -4
- package/src/errors/encrypted_media_error.ts +1 -3
- package/src/errors/media_error.ts +1 -3
- package/src/errors/network_error.ts +1 -3
- package/src/errors/other_error.ts +1 -3
- package/src/errors/source_buffer_error.ts +1 -3
- package/src/errors/worker_initialization_error.ts +1 -3
- package/src/experimental/tools/VideoThumbnailLoader/video_thumbnail_loader_error.ts +3 -3
- package/src/main_thread/api/debug/buffer_graph.ts +5 -6
- package/src/main_thread/api/debug/modules/segment_buffer_content.ts +1 -2
- package/src/main_thread/api/public_api.ts +2 -2
- package/src/main_thread/decrypt/session_events_listener.ts +2 -2
- package/src/main_thread/decrypt/utils/check_key_statuses.ts +1 -1
- package/src/main_thread/init/multi_thread_content_initializer.ts +1 -2
- package/src/main_thread/init/utils/rebuffering_controller.ts +3 -3
- package/src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts +2 -4
- package/src/main_thread/text_displayer/html/html_text_displayer.ts +7 -8
- package/src/main_thread/text_displayer/html/text_track_cues_store.ts +7 -7
- package/src/main_thread/text_displayer/native/native_text_displayer.ts +2 -2
- package/src/parsers/containers/isobmff/utils.ts +3 -1
- package/src/parsers/manifest/dash/fast-js-parser/node_parsers/utils.ts +1 -3
- package/src/parsers/manifest/dash/native-parser/node_parsers/utils.ts +1 -4
- package/src/playback_observer/utils/observation_position.ts +11 -0
- package/src/transports/dash/low_latency_segment_loader.ts +1 -0
- package/src/utils/assert.ts +1 -3
- package/src/utils/request/fetch.ts +14 -0
- package/src/utils/request/request_error.ts +16 -15
- package/src/utils/request/xhr.ts +17 -0
- package/src/utils/task_canceller.ts +2 -3
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __values = (this && this.__values) || function(o) {
|
|
3
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
+
if (m) return m.call(o);
|
|
5
|
+
if (o && typeof o.length === "number") return {
|
|
6
|
+
next: function () {
|
|
7
|
+
if (o && i >= o.length) o = void 0;
|
|
8
|
+
return { value: o && o[i++], done: !o };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
+
};
|
|
2
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
14
|
var manifest_1 = require("../../../../manifest");
|
|
4
15
|
var is_null_or_undefined_1 = require("../../../../utils/is_null_or_undefined");
|
|
@@ -51,7 +62,8 @@ function createSegmentSinkGraph(instance, bufferType, title, parentElt, cancelSi
|
|
|
51
62
|
});
|
|
52
63
|
}
|
|
53
64
|
function updateBufferMetrics() {
|
|
54
|
-
var
|
|
65
|
+
var e_1, _a;
|
|
66
|
+
var _b, _c, _d, _e;
|
|
55
67
|
var showAllInfo = (0, utils_1.isExtendedMode)(parentElt);
|
|
56
68
|
var inventory = bufferMetrics === null || bufferMetrics === void 0 ? void 0 : bufferMetrics.segmentSinks[bufferType].segmentInventory;
|
|
57
69
|
if (bufferMetrics === null || inventory === undefined) {
|
|
@@ -65,8 +77,8 @@ function createSegmentSinkGraph(instance, bufferType, title, parentElt, cancelSi
|
|
|
65
77
|
var width = Math.min(parentElt.clientWidth - 150, 600);
|
|
66
78
|
bufferGraph.update({
|
|
67
79
|
currentTime: currentTime,
|
|
68
|
-
minimumPosition: (
|
|
69
|
-
maximumPosition: (
|
|
80
|
+
minimumPosition: (_b = instance.getMinimumPosition()) !== null && _b !== void 0 ? _b : undefined,
|
|
81
|
+
maximumPosition: (_c = instance.getMaximumPosition()) !== null && _c !== void 0 ? _c : undefined,
|
|
70
82
|
inventory: inventory,
|
|
71
83
|
width: width,
|
|
72
84
|
height: 10,
|
|
@@ -77,23 +89,32 @@ function createSegmentSinkGraph(instance, bufferType, title, parentElt, cancelSi
|
|
|
77
89
|
return;
|
|
78
90
|
}
|
|
79
91
|
currentRangeRepInfoElt.innerHTML = "";
|
|
80
|
-
|
|
81
|
-
var
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
+
try {
|
|
93
|
+
for (var inventory_1 = __values(inventory), inventory_1_1 = inventory_1.next(); !inventory_1_1.done; inventory_1_1 = inventory_1.next()) {
|
|
94
|
+
var rangeInfo = inventory_1_1.value;
|
|
95
|
+
var bufferedStart = rangeInfo.bufferedStart, bufferedEnd = rangeInfo.bufferedEnd, infos = rangeInfo.infos;
|
|
96
|
+
if (bufferedStart !== undefined &&
|
|
97
|
+
bufferedEnd !== undefined &&
|
|
98
|
+
currentTime >= bufferedStart &&
|
|
99
|
+
currentTime < bufferedEnd) {
|
|
100
|
+
currentRangeRepInfoElt.appendChild((0, utils_1.createMetricTitle)("play"));
|
|
101
|
+
currentRangeRepInfoElt.appendChild((0, utils_1.createElement)("span", {
|
|
102
|
+
textContent: constructRepresentationInfo(infos),
|
|
103
|
+
}));
|
|
104
|
+
break;
|
|
105
|
+
}
|
|
106
|
+
}
|
|
107
|
+
}
|
|
108
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
109
|
+
finally {
|
|
110
|
+
try {
|
|
111
|
+
if (inventory_1_1 && !inventory_1_1.done && (_a = inventory_1.return)) _a.call(inventory_1);
|
|
92
112
|
}
|
|
113
|
+
finally { if (e_1) throw e_1.error; }
|
|
93
114
|
}
|
|
94
115
|
loadingRangeRepInfoElt.innerHTML = "";
|
|
95
|
-
var rep = (
|
|
96
|
-
var adap = (
|
|
116
|
+
var rep = (_d = instance.__priv_getCurrentRepresentations()) === null || _d === void 0 ? void 0 : _d[bufferType];
|
|
117
|
+
var adap = (_e = instance.__priv_getCurrentAdaptation()) === null || _e === void 0 ? void 0 : _e[bufferType];
|
|
97
118
|
var manifest = instance.__priv_getManifest();
|
|
98
119
|
if (manifest !== null && !(0, is_null_or_undefined_1.default)(rep) && !(0, is_null_or_undefined_1.default)(adap)) {
|
|
99
120
|
var period = (0, manifest_1.getPeriodForTime)(manifest, currentTime);
|
|
@@ -164,7 +164,7 @@ var Player = /** @class */ (function (_super) {
|
|
|
164
164
|
// Workaround to support Firefox autoplay on FF 42.
|
|
165
165
|
// See: https://bugzilla.mozilla.org/show_bug.cgi?id=1194624
|
|
166
166
|
videoElement.preload = "auto";
|
|
167
|
-
_this.version = /* PLAYER_VERSION */ "4.1.0
|
|
167
|
+
_this.version = /* PLAYER_VERSION */ "4.1.0";
|
|
168
168
|
_this.log = log_1.default;
|
|
169
169
|
_this.state = "STOPPED";
|
|
170
170
|
_this.videoElement = videoElement;
|
|
@@ -2590,5 +2590,5 @@ var Player = /** @class */ (function (_super) {
|
|
|
2590
2590
|
Player._priv_currentlyUsedVideoElements = new WeakSet();
|
|
2591
2591
|
return Player;
|
|
2592
2592
|
}(event_emitter_1.default));
|
|
2593
|
-
Player.version = /* PLAYER_VERSION */ "4.1.0
|
|
2593
|
+
Player.version = /* PLAYER_VERSION */ "4.1.0";
|
|
2594
2594
|
exports.default = Player;
|
|
@@ -298,7 +298,7 @@ function updateSessionWithMessage(session, message) {
|
|
|
298
298
|
var BlacklistedSessionError = /** @class */ (function (_super) {
|
|
299
299
|
__extends(BlacklistedSessionError, _super);
|
|
300
300
|
function BlacklistedSessionError(sessionError) {
|
|
301
|
-
var _this = _super.call(this) || this;
|
|
301
|
+
var _this = _super.call(this, sessionError.message) || this;
|
|
302
302
|
// @see https://stackoverflow.com/questions/41102060/typescript-extending-error-class
|
|
303
303
|
Object.setPrototypeOf(_this, BlacklistedSessionError.prototype);
|
|
304
304
|
_this.sessionError = sessionError;
|
|
@@ -315,7 +315,7 @@ exports.BlacklistedSessionError = BlacklistedSessionError;
|
|
|
315
315
|
var GetLicenseTimeoutError = /** @class */ (function (_super) {
|
|
316
316
|
__extends(GetLicenseTimeoutError, _super);
|
|
317
317
|
function GetLicenseTimeoutError(message) {
|
|
318
|
-
var _this = _super.call(this) || this;
|
|
318
|
+
var _this = _super.call(this, message) || this;
|
|
319
319
|
// @see https://stackoverflow.com/questions/41102060/typescript-extending-error-class
|
|
320
320
|
Object.setPrototypeOf(_this, BlacklistedSessionError.prototype);
|
|
321
321
|
_this.message = message;
|
|
@@ -77,7 +77,7 @@ var DecommissionedSessionError = /** @class */ (function (_super) {
|
|
|
77
77
|
* current MediaKeySession. Should be used for reporting purposes.
|
|
78
78
|
*/
|
|
79
79
|
function DecommissionedSessionError(reason) {
|
|
80
|
-
var _this = _super.call(this) || this;
|
|
80
|
+
var _this = _super.call(this, reason.message) || this;
|
|
81
81
|
// @see https://stackoverflow.com/questions/41102060/typescript-extending-error-class
|
|
82
82
|
Object.setPrototypeOf(_this, DecommissionedSessionError.prototype);
|
|
83
83
|
_this.reason = reason;
|
|
@@ -1469,7 +1469,8 @@ function updateManifestCodecSupport(manifest) {
|
|
|
1469
1469
|
__spreadArray(__spreadArray(__spreadArray([], __read(((_a = p.adaptations.audio) !== null && _a !== void 0 ? _a : [])), false), __read(((_b = p.adaptations.video) !== null && _b !== void 0 ? _b : [])), false), __read(((_c = p.adaptations.text) !== null && _c !== void 0 ? _c : [])), false).forEach(function (a) {
|
|
1470
1470
|
var hasSupportedCodecs = false;
|
|
1471
1471
|
a.representations.forEach(function (r) {
|
|
1472
|
-
var
|
|
1472
|
+
var e_2, _a;
|
|
1473
|
+
var _b, _c;
|
|
1473
1474
|
if (r.isSupported !== undefined) {
|
|
1474
1475
|
if (!hasSupportedCodecs && r.isSupported) {
|
|
1475
1476
|
hasSupportedCodecs = true;
|
|
@@ -1477,18 +1478,27 @@ function updateManifestCodecSupport(manifest) {
|
|
|
1477
1478
|
return;
|
|
1478
1479
|
}
|
|
1479
1480
|
var isSupported = false;
|
|
1480
|
-
var mimeType = (
|
|
1481
|
-
var codecs = (
|
|
1481
|
+
var mimeType = (_b = r.mimeType) !== null && _b !== void 0 ? _b : "";
|
|
1482
|
+
var codecs = (_c = r.codecs) !== null && _c !== void 0 ? _c : [];
|
|
1482
1483
|
if (codecs.length === 0) {
|
|
1483
1484
|
codecs = [""];
|
|
1484
1485
|
}
|
|
1485
|
-
|
|
1486
|
-
var
|
|
1487
|
-
|
|
1488
|
-
|
|
1489
|
-
|
|
1490
|
-
|
|
1486
|
+
try {
|
|
1487
|
+
for (var codecs_1 = __values(codecs), codecs_1_1 = codecs_1.next(); !codecs_1_1.done; codecs_1_1 = codecs_1.next()) {
|
|
1488
|
+
var codec = codecs_1_1.value;
|
|
1489
|
+
isSupported = checkCodecSupport(mimeType, codec);
|
|
1490
|
+
if (isSupported) {
|
|
1491
|
+
r.codecs = [codec];
|
|
1492
|
+
break;
|
|
1493
|
+
}
|
|
1494
|
+
}
|
|
1495
|
+
}
|
|
1496
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
1497
|
+
finally {
|
|
1498
|
+
try {
|
|
1499
|
+
if (codecs_1_1 && !codecs_1_1.done && (_a = codecs_1.return)) _a.call(codecs_1);
|
|
1491
1500
|
}
|
|
1501
|
+
finally { if (e_2) throw e_2.error; }
|
|
1492
1502
|
}
|
|
1493
1503
|
r.isSupported = isSupported;
|
|
1494
1504
|
if (r.isSupported) {
|
|
@@ -29,6 +29,17 @@ var __extends = (this && this.__extends) || (function () {
|
|
|
29
29
|
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
30
30
|
};
|
|
31
31
|
})();
|
|
32
|
+
var __values = (this && this.__values) || function(o) {
|
|
33
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
34
|
+
if (m) return m.call(o);
|
|
35
|
+
if (o && typeof o.length === "number") return {
|
|
36
|
+
next: function () {
|
|
37
|
+
if (o && i >= o.length) o = void 0;
|
|
38
|
+
return { value: o && o[i++], done: !o };
|
|
39
|
+
}
|
|
40
|
+
};
|
|
41
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
42
|
+
};
|
|
32
43
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
33
44
|
var config_1 = require("../../../config");
|
|
34
45
|
var errors_1 = require("../../../errors");
|
|
@@ -263,43 +274,54 @@ exports.default = RebufferingController;
|
|
|
263
274
|
* @returns {number|null}
|
|
264
275
|
*/
|
|
265
276
|
function findSeekableDiscontinuity(discontinuitiesStore, manifest, stalledPosition) {
|
|
277
|
+
var e_1, _a;
|
|
266
278
|
if (discontinuitiesStore.length === 0) {
|
|
267
279
|
return null;
|
|
268
280
|
}
|
|
269
281
|
var maxDiscontinuityEnd = null;
|
|
270
|
-
|
|
271
|
-
var
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
|
|
275
|
-
|
|
276
|
-
|
|
277
|
-
var
|
|
278
|
-
|
|
279
|
-
|
|
280
|
-
|
|
281
|
-
|
|
282
|
-
|
|
283
|
-
if (
|
|
284
|
-
|
|
282
|
+
try {
|
|
283
|
+
for (var discontinuitiesStore_1 = __values(discontinuitiesStore), discontinuitiesStore_1_1 = discontinuitiesStore_1.next(); !discontinuitiesStore_1_1.done; discontinuitiesStore_1_1 = discontinuitiesStore_1.next()) {
|
|
284
|
+
var discontinuityInfo = discontinuitiesStore_1_1.value;
|
|
285
|
+
var period = discontinuityInfo.period;
|
|
286
|
+
if (period.start > stalledPosition) {
|
|
287
|
+
return maxDiscontinuityEnd;
|
|
288
|
+
}
|
|
289
|
+
var discontinuityEnd = void 0;
|
|
290
|
+
if (period.end === undefined || period.end > stalledPosition) {
|
|
291
|
+
var discontinuity = discontinuityInfo.discontinuity, position = discontinuityInfo.position;
|
|
292
|
+
var start = discontinuity.start, end = discontinuity.end;
|
|
293
|
+
var discontinuityLowerLimit = start !== null && start !== void 0 ? start : position;
|
|
294
|
+
if (stalledPosition >= discontinuityLowerLimit - EPSILON) {
|
|
295
|
+
if (end === null) {
|
|
296
|
+
var nextPeriod = (0, manifest_1.getPeriodAfter)(manifest, period);
|
|
297
|
+
if (nextPeriod !== null) {
|
|
298
|
+
discontinuityEnd = nextPeriod.start + EPSILON;
|
|
299
|
+
}
|
|
300
|
+
else {
|
|
301
|
+
log_1.default.warn("Init: discontinuity at Period's end but no next Period");
|
|
302
|
+
}
|
|
285
303
|
}
|
|
286
|
-
else {
|
|
287
|
-
|
|
304
|
+
else if (stalledPosition < end + EPSILON) {
|
|
305
|
+
discontinuityEnd = end + EPSILON;
|
|
288
306
|
}
|
|
289
307
|
}
|
|
290
|
-
|
|
291
|
-
|
|
308
|
+
if (discontinuityEnd !== undefined) {
|
|
309
|
+
log_1.default.info("Init: discontinuity found", stalledPosition, discontinuityEnd);
|
|
310
|
+
maxDiscontinuityEnd =
|
|
311
|
+
maxDiscontinuityEnd !== null && maxDiscontinuityEnd > discontinuityEnd
|
|
312
|
+
? maxDiscontinuityEnd
|
|
313
|
+
: discontinuityEnd;
|
|
292
314
|
}
|
|
293
315
|
}
|
|
294
|
-
if (discontinuityEnd !== undefined) {
|
|
295
|
-
log_1.default.info("Init: discontinuity found", stalledPosition, discontinuityEnd);
|
|
296
|
-
maxDiscontinuityEnd =
|
|
297
|
-
maxDiscontinuityEnd !== null && maxDiscontinuityEnd > discontinuityEnd
|
|
298
|
-
? maxDiscontinuityEnd
|
|
299
|
-
: discontinuityEnd;
|
|
300
|
-
}
|
|
301
316
|
}
|
|
302
317
|
}
|
|
318
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
319
|
+
finally {
|
|
320
|
+
try {
|
|
321
|
+
if (discontinuitiesStore_1_1 && !discontinuitiesStore_1_1.done && (_a = discontinuitiesStore_1.return)) _a.call(discontinuitiesStore_1);
|
|
322
|
+
}
|
|
323
|
+
finally { if (e_1) throw e_1.error; }
|
|
324
|
+
}
|
|
303
325
|
return maxDiscontinuityEnd;
|
|
304
326
|
}
|
|
305
327
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"refresh_scheduled_events_list.d.ts","sourceRoot":"","sources":["../../../../../../src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;GAKG;AACH,iBAAS,0BAA0B,CACjC,kBAAkB,EAAE,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,EAC7E,QAAQ,EAAE,iBAAiB,GAC1B,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,
|
|
1
|
+
{"version":3,"file":"refresh_scheduled_events_list.d.ts","sourceRoot":"","sources":["../../../../../../src/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,sBAAsB,CAAC;AAE9D,OAAO,KAAK,EAAE,4BAA4B,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAEjF;;;;;GAKG;AACH,iBAAS,0BAA0B,CACjC,kBAAkB,EAAE,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,EAC7E,QAAQ,EAAE,iBAAiB,GAC1B,KAAK,CAAC,mBAAmB,GAAG,4BAA4B,CAAC,CA6D3D;AAED,eAAe,0BAA0B,CAAC"}
|
package/dist/commonjs/main_thread/init/utils/stream_events_emitter/refresh_scheduled_events_list.js
CHANGED
|
@@ -25,6 +25,17 @@ var __assign = (this && this.__assign) || function () {
|
|
|
25
25
|
};
|
|
26
26
|
return __assign.apply(this, arguments);
|
|
27
27
|
};
|
|
28
|
+
var __values = (this && this.__values) || function(o) {
|
|
29
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
30
|
+
if (m) return m.call(o);
|
|
31
|
+
if (o && typeof o.length === "number") return {
|
|
32
|
+
next: function () {
|
|
33
|
+
if (o && i >= o.length) o = void 0;
|
|
34
|
+
return { value: o && o[i++], done: !o };
|
|
35
|
+
}
|
|
36
|
+
};
|
|
37
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
38
|
+
};
|
|
28
39
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
29
40
|
var are_same_stream_events_1 = require("./are_same_stream_events");
|
|
30
41
|
/**
|
|
@@ -34,64 +45,84 @@ var are_same_stream_events_1 = require("./are_same_stream_events");
|
|
|
34
45
|
* @returns {Array.<Object>}
|
|
35
46
|
*/
|
|
36
47
|
function refreshScheduledEventsList(oldScheduledEvents, manifest) {
|
|
48
|
+
var e_1, _a;
|
|
37
49
|
var scheduledEvents = [];
|
|
38
50
|
var periods = manifest.periods;
|
|
39
|
-
|
|
40
|
-
var
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
var
|
|
46
|
-
|
|
47
|
-
|
|
51
|
+
try {
|
|
52
|
+
for (var periods_1 = __values(periods), periods_1_1 = periods_1.next(); !periods_1_1.done; periods_1_1 = periods_1.next()) {
|
|
53
|
+
var period = periods_1_1.value;
|
|
54
|
+
var streamEvents = period.streamEvents;
|
|
55
|
+
streamEvents.forEach(function (_a) {
|
|
56
|
+
var e_2, _b;
|
|
57
|
+
var start = _a.start, end = _a.end, id = _a.id, data = _a.data;
|
|
58
|
+
try {
|
|
59
|
+
for (var oldScheduledEvents_1 = (e_2 = void 0, __values(oldScheduledEvents)), oldScheduledEvents_1_1 = oldScheduledEvents_1.next(); !oldScheduledEvents_1_1.done; oldScheduledEvents_1_1 = oldScheduledEvents_1.next()) {
|
|
60
|
+
var currentScheduledEvent = oldScheduledEvents_1_1.value;
|
|
61
|
+
if ((0, are_same_stream_events_1.default)(currentScheduledEvent, { id: id, start: start, end: end })) {
|
|
62
|
+
scheduledEvents.push(currentScheduledEvent);
|
|
63
|
+
return;
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
68
|
+
finally {
|
|
69
|
+
try {
|
|
70
|
+
if (oldScheduledEvents_1_1 && !oldScheduledEvents_1_1.done && (_b = oldScheduledEvents_1.return)) _b.call(oldScheduledEvents_1);
|
|
71
|
+
}
|
|
72
|
+
finally { if (e_2) throw e_2.error; }
|
|
73
|
+
}
|
|
74
|
+
var element;
|
|
75
|
+
if (data.value.element !== undefined) {
|
|
76
|
+
element = data.value.element;
|
|
77
|
+
}
|
|
78
|
+
else if (data.value.xmlData !== undefined) {
|
|
79
|
+
// First, we will create a parent Element defining all namespaces that
|
|
80
|
+
// should have been encountered until know.
|
|
81
|
+
// This is needed because the DOMParser API might throw when
|
|
82
|
+
// encountering unknown namespaced attributes or elements in the given
|
|
83
|
+
// `<Event>` xml subset.
|
|
84
|
+
var parentNode = data.value.xmlData.namespaces.reduce(function (acc, ns) {
|
|
85
|
+
return acc + "xmlns:" + ns.key + '="' + ns.value + '" ';
|
|
86
|
+
}, "<toremove ");
|
|
87
|
+
parentNode += ">";
|
|
88
|
+
var parsedDom = new DOMParser().parseFromString(parentNode + data.value.xmlData.data + "</toremove>", "application/xml").documentElement;
|
|
89
|
+
element =
|
|
90
|
+
parsedDom.children.length > 0
|
|
91
|
+
? parsedDom.children[0]
|
|
92
|
+
: parsedDom.childNodes[0];
|
|
93
|
+
}
|
|
94
|
+
else {
|
|
48
95
|
return;
|
|
49
96
|
}
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
}
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
data: actualData,
|
|
80
|
-
publicEvent: { start: start, data: actualData },
|
|
81
|
-
};
|
|
82
|
-
scheduledEvents.push(newScheduledEvent);
|
|
83
|
-
}
|
|
84
|
-
else {
|
|
85
|
-
var newScheduledEvent = {
|
|
86
|
-
start: start,
|
|
87
|
-
end: end,
|
|
88
|
-
id: id,
|
|
89
|
-
data: actualData,
|
|
90
|
-
publicEvent: { start: start, end: end, data: actualData },
|
|
91
|
-
};
|
|
92
|
-
scheduledEvents.push(newScheduledEvent);
|
|
93
|
-
}
|
|
94
|
-
});
|
|
97
|
+
var actualData = { type: data.type, value: __assign(__assign({}, data.value), { element: element }) };
|
|
98
|
+
if (end === undefined) {
|
|
99
|
+
var newScheduledEvent = {
|
|
100
|
+
start: start,
|
|
101
|
+
id: id,
|
|
102
|
+
data: actualData,
|
|
103
|
+
publicEvent: { start: start, data: actualData },
|
|
104
|
+
};
|
|
105
|
+
scheduledEvents.push(newScheduledEvent);
|
|
106
|
+
}
|
|
107
|
+
else {
|
|
108
|
+
var newScheduledEvent = {
|
|
109
|
+
start: start,
|
|
110
|
+
end: end,
|
|
111
|
+
id: id,
|
|
112
|
+
data: actualData,
|
|
113
|
+
publicEvent: { start: start, end: end, data: actualData },
|
|
114
|
+
};
|
|
115
|
+
scheduledEvents.push(newScheduledEvent);
|
|
116
|
+
}
|
|
117
|
+
});
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
121
|
+
finally {
|
|
122
|
+
try {
|
|
123
|
+
if (periods_1_1 && !periods_1_1.done && (_a = periods_1.return)) _a.call(periods_1);
|
|
124
|
+
}
|
|
125
|
+
finally { if (e_1) throw e_1.error; }
|
|
95
126
|
}
|
|
96
127
|
return scheduledEvents;
|
|
97
128
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"html_text_displayer.d.ts","sourceRoot":"","sources":["../../../../../src/main_thread/text_displayer/html/html_text_displayer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAqCnE;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,cAAc;IAC9D;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IAEjD,oEAAoE;IACpE,OAAO,CAAC,2BAA2B,CAAgB;IAEnD,8CAA8C;IAC9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAc;IAEhD,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAAgB;IAE5C,+CAA+C;IAC/C,OAAO,CAAC,YAAY,CAQjB;IAEH,iDAAiD;IACjD,OAAO,CAAC,SAAS,CAAmB;IAEpC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB,CAAU;IAEnC;;;OAGG;gBACS,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,WAAW;IAazE;;;;OAIG;IACI,YAAY,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,EAAE;IAkFxD;;;;;OAKG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAazD;;;OAGG;IACI,iBAAiB,IAAI,MAAM,EAAE;IAI7B,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;IACH,OAAO,CAAC,YAAY;
|
|
1
|
+
{"version":3,"file":"html_text_displayer.d.ts","sourceRoot":"","sources":["../../../../../src/main_thread/text_displayer/html/html_text_displayer.ts"],"names":[],"mappings":"AAKA,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,uBAAuB,CAAC;AAKpD,OAAO,KAAK,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,UAAU,CAAC;AAqCnE;;;;GAIG;AACH,MAAM,CAAC,OAAO,OAAO,iBAAkB,YAAW,cAAc;IAC9D;;;OAGG;IACH,OAAO,CAAC,QAAQ,CAAC,aAAa,CAAmB;IAEjD,oEAAoE;IACpE,OAAO,CAAC,2BAA2B,CAAgB;IAEnD,8CAA8C;IAC9C,OAAO,CAAC,QAAQ,CAAC,iBAAiB,CAAc;IAEhD,iCAAiC;IACjC,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAqB;IAE7C;;;;OAIG;IACH,OAAO,CAAC,oBAAoB,CAAgB;IAE5C,+CAA+C;IAC/C,OAAO,CAAC,YAAY,CAQjB;IAEH,iDAAiD;IACjD,OAAO,CAAC,SAAS,CAAmB;IAEpC;;;;;;OAMG;IACH,OAAO,CAAC,iBAAiB,CAAU;IAEnC;;;OAGG;gBACS,YAAY,EAAE,gBAAgB,EAAE,gBAAgB,EAAE,WAAW;IAazE;;;;OAIG;IACI,YAAY,CAAC,KAAK,EAAE,kBAAkB,GAAG,MAAM,EAAE;IAkFxD;;;;;OAKG;IACI,YAAY,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,MAAM,EAAE;IAazD;;;OAGG;IACI,iBAAiB,IAAI,MAAM,EAAE;IAI7B,KAAK,IAAI,IAAI;IAMb,IAAI,IAAI,IAAI;IAYnB;;OAEG;IACH,OAAO,CAAC,mBAAmB;IAU3B;;;OAGG;IACH,OAAO,CAAC,YAAY;IA0DpB;;;;OAIG;IACH,OAAO,CAAC,oBAAoB;IA2C5B;;;OAGG;IACH,OAAO,CAAC,gBAAgB;CAoBzB;AAED,uEAAuE;AACvE,MAAM,WAAW,4BAA4B;IAC3C,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb,8DAA8D;IAC9D,IAAI,EAAE,MAAM,CAAC;IACb;;;;OAIG;IACH,QAAQ,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC9B,2DAA2D;IAC3D,KAAK,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;IAC3B,0DAA0D;IAC1D,GAAG,CAAC,EAAE,MAAM,GAAG,SAAS,CAAC;CAC1B"}
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __values = (this && this.__values) || function(o) {
|
|
3
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
+
if (m) return m.call(o);
|
|
5
|
+
if (o && typeof o.length === "number") return {
|
|
6
|
+
next: function () {
|
|
7
|
+
if (o && i >= o.length) o = void 0;
|
|
8
|
+
return { value: o && o[i++], done: !o };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
+
};
|
|
2
13
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
14
|
var event_listeners_1 = require("../../../compat/event_listeners");
|
|
4
15
|
var on_height_width_change_1 = require("../../../compat/on_height_width_change");
|
|
@@ -180,10 +191,21 @@ var HTMLTextDisplayer = /** @class */ (function () {
|
|
|
180
191
|
* Remove the current cue from being displayed.
|
|
181
192
|
*/
|
|
182
193
|
HTMLTextDisplayer.prototype._disableCurrentCues = function () {
|
|
194
|
+
var e_1, _a;
|
|
183
195
|
this._sizeUpdateCanceller.cancel();
|
|
184
196
|
if (this._currentCues.length > 0) {
|
|
185
|
-
|
|
186
|
-
|
|
197
|
+
try {
|
|
198
|
+
for (var _b = __values(this._currentCues), _c = _b.next(); !_c.done; _c = _b.next()) {
|
|
199
|
+
var cue = _c.value;
|
|
200
|
+
safelyRemoveChild(this._textTrackElement, cue.element);
|
|
201
|
+
}
|
|
202
|
+
}
|
|
203
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
204
|
+
finally {
|
|
205
|
+
try {
|
|
206
|
+
if (_c && !_c.done && (_a = _b.return)) _a.call(_b);
|
|
207
|
+
}
|
|
208
|
+
finally { if (e_1) throw e_1.error; }
|
|
187
209
|
}
|
|
188
210
|
this._currentCues = [];
|
|
189
211
|
}
|
|
@@ -193,6 +215,7 @@ var HTMLTextDisplayer = /** @class */ (function () {
|
|
|
193
215
|
* @param {HTMLElement} elements
|
|
194
216
|
*/
|
|
195
217
|
HTMLTextDisplayer.prototype._displayCues = function (elements) {
|
|
218
|
+
var e_2, _a, e_3, _b;
|
|
196
219
|
var nothingChanged = this._currentCues.length === elements.length &&
|
|
197
220
|
this._currentCues.every(function (current, index) { return current.element === elements[index]; });
|
|
198
221
|
if (nothingChanged) {
|
|
@@ -201,15 +224,34 @@ var HTMLTextDisplayer = /** @class */ (function () {
|
|
|
201
224
|
// Remove and re-display everything
|
|
202
225
|
// TODO More intelligent handling
|
|
203
226
|
this._sizeUpdateCanceller.cancel();
|
|
204
|
-
|
|
205
|
-
|
|
227
|
+
try {
|
|
228
|
+
for (var _c = __values(this._currentCues), _d = _c.next(); !_d.done; _d = _c.next()) {
|
|
229
|
+
var cue = _d.value;
|
|
230
|
+
safelyRemoveChild(this._textTrackElement, cue.element);
|
|
231
|
+
}
|
|
232
|
+
}
|
|
233
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
234
|
+
finally {
|
|
235
|
+
try {
|
|
236
|
+
if (_d && !_d.done && (_a = _c.return)) _a.call(_c);
|
|
237
|
+
}
|
|
238
|
+
finally { if (e_2) throw e_2.error; }
|
|
206
239
|
}
|
|
207
240
|
this._currentCues = [];
|
|
208
|
-
|
|
209
|
-
var
|
|
210
|
-
|
|
211
|
-
|
|
212
|
-
|
|
241
|
+
try {
|
|
242
|
+
for (var elements_1 = __values(elements), elements_1_1 = elements_1.next(); !elements_1_1.done; elements_1_1 = elements_1.next()) {
|
|
243
|
+
var element = elements_1_1.value;
|
|
244
|
+
var resolution = getElementResolution(element);
|
|
245
|
+
this._currentCues.push({ element: element, resolution: resolution });
|
|
246
|
+
this._textTrackElement.appendChild(element);
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
catch (e_3_1) { e_3 = { error: e_3_1 }; }
|
|
250
|
+
finally {
|
|
251
|
+
try {
|
|
252
|
+
if (elements_1_1 && !elements_1_1.done && (_b = elements_1.return)) _b.call(elements_1);
|
|
253
|
+
}
|
|
254
|
+
finally { if (e_3) throw e_3.error; }
|
|
213
255
|
}
|
|
214
256
|
var proportionalCues = this._currentCues.filter(function (cue) { return cue.resolution !== null; });
|
|
215
257
|
if (proportionalCues.length > 0) {
|
|
@@ -219,10 +261,21 @@ var HTMLTextDisplayer = /** @class */ (function () {
|
|
|
219
261
|
// update propertionally-sized elements periodically
|
|
220
262
|
var heightWidthRef = (0, on_height_width_change_1.default)(this._textTrackElement, TEXT_TRACK_SIZE_CHECKS_INTERVAL, this._sizeUpdateCanceller.signal);
|
|
221
263
|
heightWidthRef.onUpdate(function (_a) {
|
|
264
|
+
var e_4, _b;
|
|
222
265
|
var height = _a.height, width = _a.width;
|
|
223
|
-
|
|
224
|
-
var
|
|
225
|
-
|
|
266
|
+
try {
|
|
267
|
+
for (var proportionalCues_1 = __values(proportionalCues), proportionalCues_1_1 = proportionalCues_1.next(); !proportionalCues_1_1.done; proportionalCues_1_1 = proportionalCues_1.next()) {
|
|
268
|
+
var cue = proportionalCues_1_1.value;
|
|
269
|
+
var resolution = cue.resolution, element = cue.element;
|
|
270
|
+
(0, update_proportional_elements_1.default)(height, width, resolution, element);
|
|
271
|
+
}
|
|
272
|
+
}
|
|
273
|
+
catch (e_4_1) { e_4 = { error: e_4_1 }; }
|
|
274
|
+
finally {
|
|
275
|
+
try {
|
|
276
|
+
if (proportionalCues_1_1 && !proportionalCues_1_1.done && (_b = proportionalCues_1.return)) _b.call(proportionalCues_1);
|
|
277
|
+
}
|
|
278
|
+
finally { if (e_4) throw e_4.error; }
|
|
226
279
|
}
|
|
227
280
|
}, {
|
|
228
281
|
clearSignal: this._sizeUpdateCanceller.signal,
|
|
@@ -1,4 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __values = (this && this.__values) || function(o) {
|
|
3
|
+
var s = typeof Symbol === "function" && Symbol.iterator, m = s && o[s], i = 0;
|
|
4
|
+
if (m) return m.call(o);
|
|
5
|
+
if (o && typeof o.length === "number") return {
|
|
6
|
+
next: function () {
|
|
7
|
+
if (o && i >= o.length) o = void 0;
|
|
8
|
+
return { value: o && o[i++], done: !o };
|
|
9
|
+
}
|
|
10
|
+
};
|
|
11
|
+
throw new TypeError(s ? "Object is not iterable." : "Symbol.iterator is not defined.");
|
|
12
|
+
};
|
|
2
13
|
var __read = (this && this.__read) || function (o, n) {
|
|
3
14
|
var m = typeof Symbol === "function" && o[Symbol.iterator];
|
|
4
15
|
if (!m) return o;
|
|
@@ -66,6 +77,7 @@ var TextTrackCuesStore = /** @class */ (function () {
|
|
|
66
77
|
* time.
|
|
67
78
|
*/
|
|
68
79
|
TextTrackCuesStore.prototype.get = function (time) {
|
|
80
|
+
var e_1, _a, e_2, _b;
|
|
69
81
|
var cuesBuffer = this._cuesBuffer;
|
|
70
82
|
var ret = [];
|
|
71
83
|
// begins at the end as most of the time the player will ask for the last
|
|
@@ -74,21 +86,41 @@ var TextTrackCuesStore = /** @class */ (function () {
|
|
|
74
86
|
var segment = cuesBuffer[cueIdx];
|
|
75
87
|
if (time < segment.end && time >= segment.start) {
|
|
76
88
|
var cues = segment.cues;
|
|
77
|
-
|
|
78
|
-
|
|
79
|
-
|
|
89
|
+
try {
|
|
90
|
+
for (var cues_1 = (e_1 = void 0, __values(cues)), cues_1_1 = cues_1.next(); !cues_1_1.done; cues_1_1 = cues_1.next()) {
|
|
91
|
+
var cue = cues_1_1.value;
|
|
92
|
+
if (time >= cue.start && time < cue.end) {
|
|
93
|
+
ret.push(cue.element);
|
|
94
|
+
}
|
|
80
95
|
}
|
|
81
96
|
}
|
|
97
|
+
catch (e_1_1) { e_1 = { error: e_1_1 }; }
|
|
98
|
+
finally {
|
|
99
|
+
try {
|
|
100
|
+
if (cues_1_1 && !cues_1_1.done && (_a = cues_1.return)) _a.call(cues_1);
|
|
101
|
+
}
|
|
102
|
+
finally { if (e_1) throw e_1.error; }
|
|
103
|
+
}
|
|
82
104
|
// first or last IHTMLCue in a group can have a slighlty different start
|
|
83
105
|
// or end time than the start or end time of the ICuesGroup due to parsing
|
|
84
106
|
// approximation.
|
|
85
107
|
// Add a tolerance of 1ms to fix this issue
|
|
86
108
|
if (ret.length === 0 && cues.length > 0) {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
109
|
+
try {
|
|
110
|
+
for (var cues_2 = (e_2 = void 0, __values(cues)), cues_2_1 = cues_2.next(); !cues_2_1.done; cues_2_1 = cues_2.next()) {
|
|
111
|
+
var cue = cues_2_1.value;
|
|
112
|
+
if ((0, utils_1.areNearlyEqual)(time, cue.start, DELTA_CUES_GROUP) ||
|
|
113
|
+
(0, utils_1.areNearlyEqual)(time, cue.end, DELTA_CUES_GROUP)) {
|
|
114
|
+
ret.push(cue.element);
|
|
115
|
+
}
|
|
116
|
+
}
|
|
117
|
+
}
|
|
118
|
+
catch (e_2_1) { e_2 = { error: e_2_1 }; }
|
|
119
|
+
finally {
|
|
120
|
+
try {
|
|
121
|
+
if (cues_2_1 && !cues_2_1.done && (_b = cues_2.return)) _b.call(cues_2);
|
|
91
122
|
}
|
|
123
|
+
finally { if (e_2) throw e_2.error; }
|
|
92
124
|
}
|
|
93
125
|
}
|
|
94
126
|
return ret;
|