@mediakind/mkplayer 1.7.0 → 1.8.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/mkplayer.js +1 -1
- package/package.json +2 -2
- package/types/alias/index.d.ts +1 -1
- package/types/classes/common/MKAzukiResponseUtils.js +66 -58
- package/types/classes/common/MKAzukiResponseUtils.js.map +1 -1
- package/types/classes/common/MKEventBase.js +11 -10
- package/types/classes/common/MKEventBase.js.map +1 -1
- package/types/classes/common/MKLocalStorage.js +64 -58
- package/types/classes/common/MKLocalStorage.js.map +1 -1
- package/types/classes/common/MKLog.js +49 -22
- package/types/classes/common/MKLog.js.map +1 -1
- package/types/classes/common/MKPlatform.js +156 -108
- package/types/classes/common/MKPlatform.js.map +1 -1
- package/types/classes/common/MKProgramManager.js +37 -32
- package/types/classes/common/MKProgramManager.js.map +1 -1
- package/types/classes/common/MKSecureUrlManager.js +137 -108
- package/types/classes/common/MKSecureUrlManager.js.map +1 -1
- package/types/classes/common/MKSubtitleOverlay.js +69 -67
- package/types/classes/common/MKSubtitleOverlay.js.map +1 -1
- package/types/classes/common/MKThumbnailManager.js +261 -211
- package/types/classes/common/MKThumbnailManager.js.map +1 -1
- package/types/classes/common/MKUtils.js +162 -100
- package/types/classes/common/MKUtils.js.map +1 -1
- package/types/classes/error/MKAdobeSessionConcurrencyError.js +6 -5
- package/types/classes/error/MKAdobeSessionConcurrencyError.js.map +1 -1
- package/types/classes/error/MKAzukiRequestError.js +8 -7
- package/types/classes/error/MKAzukiRequestError.js.map +1 -1
- package/types/classes/error/MKBitmovinPlayerError.js +31 -12
- package/types/classes/error/MKBitmovinPlayerError.js.map +1 -1
- package/types/classes/error/MKHttpError.js +4 -3
- package/types/classes/error/MKHttpError.js.map +1 -1
- package/types/classes/error/MKPlayerError.js +5 -4
- package/types/classes/error/MKPlayerError.js.map +1 -1
- package/types/classes/error/MKProgramRestrictionError.js +11 -10
- package/types/classes/error/MKProgramRestrictionError.js.map +1 -1
- package/types/classes/player/MKBitmovinPlayer.js +620 -553
- package/types/classes/player/MKBitmovinPlayer.js.map +1 -1
- package/types/classes/player/MKPlayer.d.ts +4 -0
- package/types/classes/player/MKPlayer.js +734 -528
- package/types/classes/player/MKPlayer.js.map +1 -1
- package/types/classes/player/MKStubPlayer.js +263 -273
- package/types/classes/player/MKStubPlayer.js.map +1 -1
- package/types/classes/request/MKAdobeSessionConcurrencyRequest.js +198 -127
- package/types/classes/request/MKAdobeSessionConcurrencyRequest.js.map +1 -1
- package/types/classes/request/MKAzukiRequest.js +381 -268
- package/types/classes/request/MKAzukiRequest.js.map +1 -1
- package/types/classes/request/MKHttpRequest.js +128 -89
- package/types/classes/request/MKHttpRequest.js.map +1 -1
- package/types/constants/MKAzukiRequestEndpoint.js +24 -24
- package/types/constants/MKAzukiRequestEndpoint.js.map +1 -1
- package/types/constants/MKConstants.js +1 -1
- package/types/enums/MKAnalyticsDataName.d.ts +8 -0
- package/types/enums/MKAnalyticsDataName.js +13 -0
- package/types/enums/MKAnalyticsDataName.js.map +1 -0
- package/types/enums/MKErrorCode.d.ts +1 -0
- package/types/enums/MKErrorCode.js +1 -0
- package/types/enums/MKErrorCode.js.map +1 -1
- package/types/enums/MKPlayerEvent.d.ts +6 -1
- package/types/enums/MKPlayerEvent.js +5 -0
- package/types/enums/MKPlayerEvent.js.map +1 -1
- package/types/enums/MKProgramRestrictionType.js.map +1 -1
- package/types/enums/index.d.ts +1 -0
- package/types/enums/index.js +3 -1
- package/types/enums/index.js.map +1 -1
- package/types/interfaces/MKAdaptationPlatformConfig.js +1 -1
- package/types/interfaces/MKAdaptationPlatformConfig.js.map +1 -1
- package/types/interfaces/MKBufferConfig.js +1 -1
- package/types/interfaces/MKBufferConfig.js.map +1 -1
- package/types/interfaces/MKBufferMediaTypeConfig.js +1 -1
- package/types/interfaces/MKBufferMediaTypeConfig.js.map +1 -1
- package/types/interfaces/MKDrmConfig.js +1 -1
- package/types/interfaces/MKDrmConfig.js.map +1 -1
- package/types/interfaces/MKRegisteredSource.d.ts +1 -0
- package/types/interfaces/events/MKAnalyticsDataEvent.d.ts +6 -0
- package/types/interfaces/events/MKAnalyticsDataEvent.js +3 -0
- package/types/interfaces/events/MKAnalyticsDataEvent.js.map +1 -0
- package/types/interfaces/events/MKAudioPlaybackQualityChangedEvent.d.ts +2 -1
- package/types/interfaces/events/MKMediaPlaybackQualityChangeEvent.d.ts +3 -3
- package/types/interfaces/events/MKVSPPSessionIdEvent.d.ts +4 -0
- package/types/interfaces/events/MKVSPPSessionIdEvent.js +3 -0
- package/types/interfaces/events/MKVSPPSessionIdEvent.js.map +1 -0
- package/types/interfaces/events/MKVideoPlaybackQualityChangedEvent.d.ts +2 -1
- package/types/interfaces/events/index.d.ts +2 -0
- package/types/src/alias/index.d.ts +1 -1
- package/types/src/classes/player/MKPlayer.d.ts +4 -0
- package/types/src/enums/MKAnalyticsDataName.d.ts +8 -0
- package/types/src/enums/MKErrorCode.d.ts +1 -0
- package/types/src/enums/MKPlayerEvent.d.ts +6 -1
- package/types/src/enums/index.d.ts +1 -0
- package/types/src/interfaces/MKRegisteredSource.d.ts +1 -0
- package/types/src/interfaces/events/MKAnalyticsDataEvent.d.ts +6 -0
- package/types/src/interfaces/events/MKAudioPlaybackQualityChangedEvent.d.ts +2 -1
- package/types/src/interfaces/events/MKMediaPlaybackQualityChangeEvent.d.ts +3 -3
- package/types/src/interfaces/events/MKVSPPSessionIdEvent.d.ts +4 -0
- package/types/src/interfaces/events/MKVideoPlaybackQualityChangedEvent.d.ts +2 -1
- package/types/src/interfaces/events/index.d.ts +2 -0
- package/types/plugins/fmts/MKFMTSConfig.d.ts +0 -10
- package/types/plugins/fmts/MKFMTSController.d.ts +0 -39
- package/types/plugins/fmts/MKFMTSUtils.d.ts +0 -4
- package/types/plugins/fmts/index.d.ts +0 -2
- package/types/plugins/omsdk/MKOMSDKConfig.d.ts +0 -6
- package/types/plugins/omsdk/MKOMSDKConstants.d.ts +0 -152
- package/types/plugins/omsdk/MKOMSDKController.d.ts +0 -58
- package/types/plugins/omsdk/index.d.ts +0 -2
|
@@ -1,4 +1,19 @@
|
|
|
1
1
|
"use strict";
|
|
2
|
+
var __extends = (this && this.__extends) || (function () {
|
|
3
|
+
var extendStatics = function (d, b) {
|
|
4
|
+
extendStatics = Object.setPrototypeOf ||
|
|
5
|
+
({ __proto__: [] } instanceof Array && function (d, b) { d.__proto__ = b; }) ||
|
|
6
|
+
function (d, b) { for (var p in b) if (Object.prototype.hasOwnProperty.call(b, p)) d[p] = b[p]; };
|
|
7
|
+
return extendStatics(d, b);
|
|
8
|
+
};
|
|
9
|
+
return function (d, b) {
|
|
10
|
+
if (typeof b !== "function" && b !== null)
|
|
11
|
+
throw new TypeError("Class extends value " + String(b) + " is not a constructor or null");
|
|
12
|
+
extendStatics(d, b);
|
|
13
|
+
function __() { this.constructor = d; }
|
|
14
|
+
d.prototype = b === null ? Object.create(b) : (__.prototype = b.prototype, new __());
|
|
15
|
+
};
|
|
16
|
+
})();
|
|
2
17
|
var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
|
|
3
18
|
function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
|
|
4
19
|
return new (P || (P = Promise))(function (resolve, reject) {
|
|
@@ -8,43 +23,76 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
|
|
|
8
23
|
step((generator = generator.apply(thisArg, _arguments || [])).next());
|
|
9
24
|
});
|
|
10
25
|
};
|
|
26
|
+
var __generator = (this && this.__generator) || function (thisArg, body) {
|
|
27
|
+
var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
|
|
28
|
+
return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
|
|
29
|
+
function verb(n) { return function (v) { return step([n, v]); }; }
|
|
30
|
+
function step(op) {
|
|
31
|
+
if (f) throw new TypeError("Generator is already executing.");
|
|
32
|
+
while (g && (g = 0, op[0] && (_ = 0)), _) try {
|
|
33
|
+
if (f = 1, y && (t = op[0] & 2 ? y["return"] : op[0] ? y["throw"] || ((t = y["return"]) && t.call(y), 0) : y.next) && !(t = t.call(y, op[1])).done) return t;
|
|
34
|
+
if (y = 0, t) op = [op[0] & 2, t.value];
|
|
35
|
+
switch (op[0]) {
|
|
36
|
+
case 0: case 1: t = op; break;
|
|
37
|
+
case 4: _.label++; return { value: op[1], done: false };
|
|
38
|
+
case 5: _.label++; y = op[1]; op = [0]; continue;
|
|
39
|
+
case 7: op = _.ops.pop(); _.trys.pop(); continue;
|
|
40
|
+
default:
|
|
41
|
+
if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
|
|
42
|
+
if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
|
|
43
|
+
if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
|
|
44
|
+
if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
|
|
45
|
+
if (t[2]) _.ops.pop();
|
|
46
|
+
_.trys.pop(); continue;
|
|
47
|
+
}
|
|
48
|
+
op = body.call(thisArg, _);
|
|
49
|
+
} catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
|
|
50
|
+
if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
|
|
51
|
+
}
|
|
52
|
+
};
|
|
11
53
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
12
54
|
exports.MKPlayer = void 0;
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
55
|
+
var MKUtils_1 = require("../common/MKUtils");
|
|
56
|
+
var common_1 = require("../common");
|
|
57
|
+
var MKBitmovinPlayer_1 = require("./MKBitmovinPlayer");
|
|
58
|
+
var MKAzukiRequest_1 = require("../request/MKAzukiRequest");
|
|
59
|
+
var enums_1 = require("../../enums");
|
|
60
|
+
var constants_1 = require("../../constants");
|
|
61
|
+
var request_1 = require("../request");
|
|
62
|
+
var MKSecureUrlManager_1 = require("../common/MKSecureUrlManager");
|
|
63
|
+
var MKPlayer = (function (_super) {
|
|
64
|
+
__extends(MKPlayer, _super);
|
|
65
|
+
function MKPlayer(videoContainer, playerConfig) {
|
|
66
|
+
var _this = this;
|
|
23
67
|
var _a, _b;
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
68
|
+
_this = _super.call(this) || this;
|
|
69
|
+
_this.sourceLoaded = false;
|
|
70
|
+
_this.headers = null;
|
|
71
|
+
_this.playerConfig = playerConfig;
|
|
72
|
+
_this.videoContainer = videoContainer;
|
|
73
|
+
_this.thumbnailManager = new common_1.MKThumbnailManager();
|
|
74
|
+
_this.failOverUrl = '';
|
|
75
|
+
_this.cdnFailoverAttempted = false;
|
|
30
76
|
if (playerConfig.events) {
|
|
31
|
-
Object.entries(playerConfig.events).forEach((
|
|
32
|
-
|
|
77
|
+
Object.entries(playerConfig.events).forEach(function (_a) {
|
|
78
|
+
var key = _a[0], value = _a[1];
|
|
79
|
+
_this.on(key, value);
|
|
33
80
|
});
|
|
34
81
|
}
|
|
35
82
|
common_1.MKLog.setLogLevel((_b = (_a = playerConfig.log) === null || _a === void 0 ? void 0 : _a.level) !== null && _b !== void 0 ? _b : enums_1.MKLogLevel.Debug);
|
|
36
|
-
console.log(
|
|
83
|
+
console.log("### MKPlayer v".concat(constants_1.MKConstants.SDK_VERSION));
|
|
84
|
+
return _this;
|
|
37
85
|
}
|
|
38
|
-
addCastMetadata(metadata) {
|
|
39
|
-
var _a;
|
|
86
|
+
MKPlayer.prototype.addCastMetadata = function (metadata) {
|
|
87
|
+
var _a, _b;
|
|
40
88
|
if (!this.player) {
|
|
41
89
|
common_1.MKLog.error("Player not yet available!");
|
|
42
90
|
return false;
|
|
43
91
|
}
|
|
44
92
|
if (metadata === 0) {
|
|
45
93
|
var beaconData = (_a = this.azukiRequest) === null || _a === void 0 ? void 0 : _a.getBeaconData();
|
|
46
|
-
|
|
47
|
-
|
|
94
|
+
var fullUrl = MKUtils_1.MKUtils.updateURLQueryParams(beaconData.requestUrl, beaconData.requestOptions.queryParams);
|
|
95
|
+
var castMetadata = {
|
|
48
96
|
type: 0,
|
|
49
97
|
interval: 30000,
|
|
50
98
|
url: fullUrl,
|
|
@@ -62,191 +110,206 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
62
110
|
};
|
|
63
111
|
return this.player.addCastMetadata(castMetadata);
|
|
64
112
|
}
|
|
113
|
+
else if (metadata === 1) {
|
|
114
|
+
var adobePrimeTimeConfig = (_b = this.azukiRequest) === null || _b === void 0 ? void 0 : _b.getAdobeData();
|
|
115
|
+
var castMetadata = {
|
|
116
|
+
type: 1,
|
|
117
|
+
isProduction: adobePrimeTimeConfig.isProduction,
|
|
118
|
+
applicationId: adobePrimeTimeConfig.applicationId,
|
|
119
|
+
requesterId: adobePrimeTimeConfig.requesterId,
|
|
120
|
+
resourceId: adobePrimeTimeConfig.resourceId,
|
|
121
|
+
userId: adobePrimeTimeConfig.userId,
|
|
122
|
+
upStreamUserId: adobePrimeTimeConfig.upstreamUserId,
|
|
123
|
+
slmt: adobePrimeTimeConfig.slmt,
|
|
124
|
+
mvpd: adobePrimeTimeConfig.mvpd,
|
|
125
|
+
};
|
|
126
|
+
return this.player.addCastMetadata(castMetadata);
|
|
127
|
+
}
|
|
65
128
|
return this.player.addCastMetadata(metadata);
|
|
66
|
-
}
|
|
67
|
-
addSubtitle(subtitleTrack) {
|
|
129
|
+
};
|
|
130
|
+
MKPlayer.prototype.addSubtitle = function (subtitleTrack) {
|
|
68
131
|
if (!this.player) {
|
|
69
132
|
common_1.MKLog.error("Player not yet available!");
|
|
70
133
|
return;
|
|
71
134
|
}
|
|
72
135
|
this.player.addSubtitle(subtitleTrack);
|
|
73
|
-
}
|
|
74
|
-
castStop() {
|
|
136
|
+
};
|
|
137
|
+
MKPlayer.prototype.castStop = function () {
|
|
75
138
|
if (!this.player) {
|
|
76
139
|
common_1.MKLog.error("Player not yet available!");
|
|
77
140
|
return;
|
|
78
141
|
}
|
|
79
142
|
this.player.castStop();
|
|
80
|
-
}
|
|
81
|
-
castVideo() {
|
|
143
|
+
};
|
|
144
|
+
MKPlayer.prototype.castVideo = function () {
|
|
82
145
|
if (!this.player) {
|
|
83
146
|
common_1.MKLog.error("Player not yet available!");
|
|
84
147
|
return;
|
|
85
148
|
}
|
|
86
149
|
this.player.castVideo();
|
|
87
|
-
}
|
|
88
|
-
destroy() {
|
|
150
|
+
};
|
|
151
|
+
MKPlayer.prototype.destroy = function () {
|
|
89
152
|
if (!this.player) {
|
|
90
153
|
return Promise.reject(new Error("Player not yet available!"));
|
|
91
154
|
}
|
|
92
155
|
return this.player.destroy();
|
|
93
|
-
}
|
|
94
|
-
disableSubtitle(subtitleID) {
|
|
156
|
+
};
|
|
157
|
+
MKPlayer.prototype.disableSubtitle = function (subtitleID) {
|
|
95
158
|
if (!this.player) {
|
|
96
159
|
common_1.MKLog.error("Player not yet available!");
|
|
97
160
|
return;
|
|
98
161
|
}
|
|
99
162
|
this.player.disableSubtitle(subtitleID);
|
|
100
|
-
}
|
|
101
|
-
enableSubtitle(subtitleID) {
|
|
163
|
+
};
|
|
164
|
+
MKPlayer.prototype.enableSubtitle = function (subtitleID) {
|
|
102
165
|
if (!this.player) {
|
|
103
166
|
common_1.MKLog.error("Player not yet available!");
|
|
104
167
|
return;
|
|
105
168
|
}
|
|
106
169
|
this.player.enableSubtitle(subtitleID);
|
|
107
|
-
}
|
|
108
|
-
getAspectRatio() {
|
|
170
|
+
};
|
|
171
|
+
MKPlayer.prototype.getAspectRatio = function () {
|
|
109
172
|
if (!this.player) {
|
|
110
173
|
common_1.MKLog.error("Player not yet available!");
|
|
111
174
|
return 0;
|
|
112
175
|
}
|
|
113
176
|
return this.player.getAspectRatio();
|
|
114
|
-
}
|
|
115
|
-
getAudio() {
|
|
177
|
+
};
|
|
178
|
+
MKPlayer.prototype.getAudio = function () {
|
|
116
179
|
if (!this.player) {
|
|
117
180
|
common_1.MKLog.error("Player not yet available!");
|
|
118
181
|
return null;
|
|
119
182
|
}
|
|
120
183
|
return this.player.getAudio();
|
|
121
|
-
}
|
|
122
|
-
getAudioQuality() {
|
|
184
|
+
};
|
|
185
|
+
MKPlayer.prototype.getAudioQuality = function () {
|
|
123
186
|
if (!this.player) {
|
|
124
187
|
common_1.MKLog.error("Player not yet available!");
|
|
125
188
|
return null;
|
|
126
189
|
}
|
|
127
190
|
return this.player.getAudioQuality();
|
|
128
|
-
}
|
|
129
|
-
getAvailableAudio() {
|
|
191
|
+
};
|
|
192
|
+
MKPlayer.prototype.getAvailableAudio = function () {
|
|
130
193
|
if (!this.player) {
|
|
131
194
|
common_1.MKLog.error("Player not yet available!");
|
|
132
195
|
return [];
|
|
133
196
|
}
|
|
134
197
|
return this.player.getAvailableAudio();
|
|
135
|
-
}
|
|
136
|
-
getAvailableAudioQualities() {
|
|
198
|
+
};
|
|
199
|
+
MKPlayer.prototype.getAvailableAudioQualities = function () {
|
|
137
200
|
if (!this.player) {
|
|
138
201
|
common_1.MKLog.error("Player not yet available!");
|
|
139
202
|
return [];
|
|
140
203
|
}
|
|
141
204
|
return this.player.getAvailableAudioQualities();
|
|
142
|
-
}
|
|
143
|
-
getAvailableSubtitles() {
|
|
205
|
+
};
|
|
206
|
+
MKPlayer.prototype.getAvailableSubtitles = function () {
|
|
144
207
|
if (!this.player) {
|
|
145
208
|
common_1.MKLog.error("Player not yet available!");
|
|
146
209
|
return [];
|
|
147
210
|
}
|
|
148
211
|
return this.player.getAvailableSubtitles();
|
|
149
|
-
}
|
|
150
|
-
getAvailableVideoQualities() {
|
|
212
|
+
};
|
|
213
|
+
MKPlayer.prototype.getAvailableVideoQualities = function () {
|
|
151
214
|
if (!this.player) {
|
|
152
215
|
common_1.MKLog.error("Player not yet available!");
|
|
153
216
|
return [];
|
|
154
217
|
}
|
|
155
218
|
return this.player.getAvailableVideoQualities();
|
|
156
|
-
}
|
|
157
|
-
getBufferLevel(type, media) {
|
|
219
|
+
};
|
|
220
|
+
MKPlayer.prototype.getBufferLevel = function (type, media) {
|
|
158
221
|
if (!this.player) {
|
|
159
222
|
common_1.MKLog.error("Player not yet available!");
|
|
160
223
|
return null;
|
|
161
224
|
}
|
|
162
225
|
return this.player.getBufferLevel(type, media);
|
|
163
|
-
}
|
|
164
|
-
getBufferedRanges() {
|
|
226
|
+
};
|
|
227
|
+
MKPlayer.prototype.getBufferedRanges = function () {
|
|
165
228
|
if (!this.player) {
|
|
166
229
|
common_1.MKLog.error("Player not yet available!");
|
|
167
230
|
return [];
|
|
168
231
|
}
|
|
169
232
|
return this.player.getBufferedRanges();
|
|
170
|
-
}
|
|
171
|
-
getVersion() {
|
|
233
|
+
};
|
|
234
|
+
MKPlayer.prototype.getVersion = function () {
|
|
172
235
|
return constants_1.MKConstants.SDK_VERSION;
|
|
173
|
-
}
|
|
174
|
-
getVideoContainer() {
|
|
236
|
+
};
|
|
237
|
+
MKPlayer.prototype.getVideoContainer = function () {
|
|
175
238
|
if (!this.player)
|
|
176
239
|
return this.videoContainer;
|
|
177
240
|
return this.player.getVideoContainer();
|
|
178
|
-
}
|
|
179
|
-
getCurrentTime(mode) {
|
|
241
|
+
};
|
|
242
|
+
MKPlayer.prototype.getCurrentTime = function (mode) {
|
|
180
243
|
if (!this.player) {
|
|
181
244
|
common_1.MKLog.error("Player not yet available!");
|
|
182
245
|
return 0;
|
|
183
246
|
}
|
|
184
247
|
return this.player.getCurrentTime(mode);
|
|
185
|
-
}
|
|
186
|
-
getDownloadedAudioData() {
|
|
248
|
+
};
|
|
249
|
+
MKPlayer.prototype.getDownloadedAudioData = function () {
|
|
187
250
|
if (!this.player) {
|
|
188
251
|
common_1.MKLog.error("Player not yet available!");
|
|
189
252
|
return null;
|
|
190
253
|
}
|
|
191
254
|
return this.player.getDownloadedAudioData();
|
|
192
|
-
}
|
|
193
|
-
getDownloadedVideoData() {
|
|
255
|
+
};
|
|
256
|
+
MKPlayer.prototype.getDownloadedVideoData = function () {
|
|
194
257
|
if (!this.player) {
|
|
195
258
|
common_1.MKLog.error("Player not yet available!");
|
|
196
259
|
return null;
|
|
197
260
|
}
|
|
198
261
|
return this.player.getDownloadedVideoData();
|
|
199
|
-
}
|
|
200
|
-
getDroppedVideoFrames() {
|
|
262
|
+
};
|
|
263
|
+
MKPlayer.prototype.getDroppedVideoFrames = function () {
|
|
201
264
|
if (!this.player) {
|
|
202
265
|
common_1.MKLog.error("Player not yet available!");
|
|
203
266
|
return 0;
|
|
204
267
|
}
|
|
205
268
|
return this.player.getDroppedVideoFrames();
|
|
206
|
-
}
|
|
207
|
-
getDuration() {
|
|
269
|
+
};
|
|
270
|
+
MKPlayer.prototype.getDuration = function () {
|
|
208
271
|
if (!this.player) {
|
|
209
272
|
common_1.MKLog.error("Player not yet available!");
|
|
210
273
|
return 0;
|
|
211
274
|
}
|
|
212
275
|
return this.player.getDuration();
|
|
213
|
-
}
|
|
214
|
-
getMaxTimeShift() {
|
|
276
|
+
};
|
|
277
|
+
MKPlayer.prototype.getMaxTimeShift = function () {
|
|
215
278
|
if (!this.player) {
|
|
216
279
|
common_1.MKLog.error("Player not yet available!");
|
|
217
280
|
return 0;
|
|
218
281
|
}
|
|
219
282
|
return this.player.getMaxTimeShift();
|
|
220
|
-
}
|
|
221
|
-
getPlaybackAudioData() {
|
|
283
|
+
};
|
|
284
|
+
MKPlayer.prototype.getPlaybackAudioData = function () {
|
|
222
285
|
if (!this.player) {
|
|
223
286
|
common_1.MKLog.error("Player not yet available!");
|
|
224
287
|
return null;
|
|
225
288
|
}
|
|
226
289
|
return this.player.getPlaybackAudioData();
|
|
227
|
-
}
|
|
228
|
-
getPlaybackSpeed() {
|
|
290
|
+
};
|
|
291
|
+
MKPlayer.prototype.getPlaybackSpeed = function () {
|
|
229
292
|
if (!this.player) {
|
|
230
293
|
common_1.MKLog.error("Player not yet available!");
|
|
231
294
|
return 0;
|
|
232
295
|
}
|
|
233
296
|
return this.player.getPlaybackSpeed();
|
|
234
|
-
}
|
|
235
|
-
getPlaybackVideoData() {
|
|
297
|
+
};
|
|
298
|
+
MKPlayer.prototype.getPlaybackVideoData = function () {
|
|
236
299
|
if (!this.player) {
|
|
237
300
|
common_1.MKLog.error("Player not yet available!");
|
|
238
301
|
return null;
|
|
239
302
|
}
|
|
240
303
|
return this.player.getPlaybackVideoData();
|
|
241
|
-
}
|
|
242
|
-
getSeekableRange(mode) {
|
|
304
|
+
};
|
|
305
|
+
MKPlayer.prototype.getSeekableRange = function (mode) {
|
|
243
306
|
if (!this.player) {
|
|
244
307
|
common_1.MKLog.error("Player not yet available!");
|
|
245
308
|
return null;
|
|
246
309
|
}
|
|
247
310
|
return this.player.getSeekableRange(mode);
|
|
248
|
-
}
|
|
249
|
-
getThumbnail(time) {
|
|
311
|
+
};
|
|
312
|
+
MKPlayer.prototype.getThumbnail = function (time) {
|
|
250
313
|
var _a;
|
|
251
314
|
if (!this.player) {
|
|
252
315
|
common_1.MKLog.error("Player not yet available!");
|
|
@@ -259,292 +322,333 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
259
322
|
return this.thumbnailManager.getThumbnail(time);
|
|
260
323
|
}
|
|
261
324
|
return null;
|
|
262
|
-
}
|
|
263
|
-
getTimeShift() {
|
|
325
|
+
};
|
|
326
|
+
MKPlayer.prototype.getTimeShift = function () {
|
|
264
327
|
if (!this.player) {
|
|
265
328
|
common_1.MKLog.error("Player not yet available!");
|
|
266
329
|
return 0;
|
|
267
330
|
}
|
|
268
331
|
return this.player.getTimeShift();
|
|
269
|
-
}
|
|
270
|
-
getTotalStalledTime() {
|
|
332
|
+
};
|
|
333
|
+
MKPlayer.prototype.getTotalStalledTime = function () {
|
|
271
334
|
if (!this.player) {
|
|
272
335
|
common_1.MKLog.error("Player not yet available!");
|
|
273
336
|
return 0;
|
|
274
337
|
}
|
|
275
338
|
return this.player.getTotalStalledTime();
|
|
276
|
-
}
|
|
277
|
-
getVideoElement() {
|
|
339
|
+
};
|
|
340
|
+
MKPlayer.prototype.getVideoElement = function () {
|
|
278
341
|
if (!this.player) {
|
|
279
342
|
common_1.MKLog.error("Player not yet available!");
|
|
280
343
|
return undefined;
|
|
281
344
|
}
|
|
282
345
|
return this.player.getVideoElement();
|
|
283
|
-
}
|
|
284
|
-
getVideoQuality() {
|
|
346
|
+
};
|
|
347
|
+
MKPlayer.prototype.getVideoQuality = function () {
|
|
285
348
|
if (!this.player) {
|
|
286
349
|
common_1.MKLog.error("Player not yet available!");
|
|
287
350
|
return null;
|
|
288
351
|
}
|
|
289
352
|
return this.player.getVideoQuality();
|
|
290
|
-
}
|
|
291
|
-
getViewMode() {
|
|
353
|
+
};
|
|
354
|
+
MKPlayer.prototype.getViewMode = function () {
|
|
292
355
|
if (!this.player) {
|
|
293
356
|
common_1.MKLog.error("Player not yet available!");
|
|
294
357
|
return null;
|
|
295
358
|
}
|
|
296
359
|
return this.player.getViewMode();
|
|
297
|
-
}
|
|
298
|
-
getVolume() {
|
|
360
|
+
};
|
|
361
|
+
MKPlayer.prototype.getVolume = function () {
|
|
299
362
|
if (!this.player) {
|
|
300
363
|
common_1.MKLog.error("Player not yet available!");
|
|
301
364
|
return 0;
|
|
302
365
|
}
|
|
303
366
|
return this.player.getVolume();
|
|
304
|
-
}
|
|
305
|
-
hasEnded() {
|
|
367
|
+
};
|
|
368
|
+
MKPlayer.prototype.hasEnded = function () {
|
|
306
369
|
if (!this.player) {
|
|
307
370
|
common_1.MKLog.error("Player not yet available!");
|
|
308
371
|
return false;
|
|
309
372
|
}
|
|
310
373
|
return this.player.hasEnded();
|
|
311
|
-
}
|
|
312
|
-
isAirplayActive() {
|
|
374
|
+
};
|
|
375
|
+
MKPlayer.prototype.isAirplayActive = function () {
|
|
313
376
|
if (!this.player) {
|
|
314
377
|
common_1.MKLog.error("Player not yet available!");
|
|
315
378
|
return false;
|
|
316
379
|
}
|
|
317
380
|
return this.player.isAirplayActive();
|
|
318
|
-
}
|
|
319
|
-
isAirplayAvailable() {
|
|
381
|
+
};
|
|
382
|
+
MKPlayer.prototype.isAirplayAvailable = function () {
|
|
320
383
|
if (!this.player) {
|
|
321
384
|
common_1.MKLog.error("Player not yet available!");
|
|
322
385
|
return false;
|
|
323
386
|
}
|
|
324
387
|
return this.player.isAirplayAvailable();
|
|
325
|
-
}
|
|
326
|
-
isCastAvailable() {
|
|
388
|
+
};
|
|
389
|
+
MKPlayer.prototype.isCastAvailable = function () {
|
|
327
390
|
if (!this.player) {
|
|
328
391
|
common_1.MKLog.error("Player not yet available!");
|
|
329
392
|
return false;
|
|
330
393
|
}
|
|
331
394
|
return this.player.isCastAvailable();
|
|
332
|
-
}
|
|
333
|
-
isCasting() {
|
|
395
|
+
};
|
|
396
|
+
MKPlayer.prototype.isCasting = function () {
|
|
334
397
|
if (!this.player) {
|
|
335
398
|
common_1.MKLog.error("Player not yet available!");
|
|
336
399
|
return false;
|
|
337
400
|
}
|
|
338
401
|
return this.player.isCasting();
|
|
339
|
-
}
|
|
340
|
-
isLive() {
|
|
402
|
+
};
|
|
403
|
+
MKPlayer.prototype.isLive = function () {
|
|
341
404
|
if (!this.player) {
|
|
342
405
|
common_1.MKLog.error("Player not yet available!");
|
|
343
406
|
return false;
|
|
344
407
|
}
|
|
345
408
|
return this.player.isLive();
|
|
346
|
-
}
|
|
347
|
-
isMuted() {
|
|
409
|
+
};
|
|
410
|
+
MKPlayer.prototype.isMuted = function () {
|
|
348
411
|
if (!this.player) {
|
|
349
412
|
common_1.MKLog.error("Player not yet available!");
|
|
350
413
|
return false;
|
|
351
414
|
}
|
|
352
415
|
return this.player.isMuted();
|
|
353
|
-
}
|
|
354
|
-
isPaused() {
|
|
416
|
+
};
|
|
417
|
+
MKPlayer.prototype.isPaused = function () {
|
|
355
418
|
if (!this.player) {
|
|
356
419
|
common_1.MKLog.error("Player not yet available!");
|
|
357
420
|
return false;
|
|
358
421
|
}
|
|
359
422
|
return this.player.isPaused();
|
|
360
|
-
}
|
|
361
|
-
isPlaying() {
|
|
423
|
+
};
|
|
424
|
+
MKPlayer.prototype.isPlaying = function () {
|
|
362
425
|
if (!this.player) {
|
|
363
426
|
common_1.MKLog.error("Player not yet available!");
|
|
364
427
|
return false;
|
|
365
428
|
}
|
|
366
429
|
return this.player.isPlaying();
|
|
367
|
-
}
|
|
368
|
-
isStalled() {
|
|
430
|
+
};
|
|
431
|
+
MKPlayer.prototype.isStalled = function () {
|
|
369
432
|
if (!this.player) {
|
|
370
433
|
common_1.MKLog.error("Player not yet available!");
|
|
371
434
|
return false;
|
|
372
435
|
}
|
|
373
436
|
return this.player.isStalled();
|
|
374
|
-
}
|
|
375
|
-
isViewModeAvailable(viewMode) {
|
|
437
|
+
};
|
|
438
|
+
MKPlayer.prototype.isViewModeAvailable = function (viewMode) {
|
|
376
439
|
if (!this.player) {
|
|
377
440
|
common_1.MKLog.error("Player not yet available!");
|
|
378
441
|
return false;
|
|
379
442
|
}
|
|
380
443
|
return this.player.isViewModeAvailable(viewMode);
|
|
381
|
-
}
|
|
382
|
-
load(sourceConfig, disableSeeking) {
|
|
383
|
-
return __awaiter(this, void 0, void 0, function
|
|
384
|
-
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
|
|
388
|
-
|
|
389
|
-
|
|
390
|
-
|
|
391
|
-
|
|
392
|
-
|
|
393
|
-
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
397
|
-
return
|
|
398
|
-
|
|
399
|
-
|
|
400
|
-
|
|
401
|
-
|
|
402
|
-
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
406
|
-
|
|
407
|
-
|
|
408
|
-
this.azukiRequest = new MKAzukiRequest_1.MKAzukiRequest(sourceConfig, this.onSessionConcurrencyNotificationError.bind(this));
|
|
409
|
-
this.azukiRequest.rollRequest()
|
|
410
|
-
.then((rollInfo) => __awaiter(this, void 0, void 0, function* () {
|
|
411
|
-
var _a, _b, _c;
|
|
412
|
-
this.programManager = new common_1.MKProgramManager(this.azukiRequest);
|
|
413
|
-
const controlBlockingRestrictions = this.programManager.validateProgramRestrictions(rollInfo.programInfo);
|
|
414
|
-
if (controlBlockingRestrictions.length > 0) {
|
|
415
|
-
this.emitProgramRestrictionsEvent(controlBlockingRestrictions);
|
|
416
|
-
}
|
|
417
|
-
if (rollInfo.asidInitToken && rollInfo.asidInitToken.length > 0) {
|
|
418
|
-
const fmtsASiDEventData = {
|
|
419
|
-
initToken: rollInfo.asidInitToken,
|
|
420
|
-
assetId: rollInfo.mediaId,
|
|
421
|
-
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp(),
|
|
422
|
-
type: enums_1.MKPlayerEvent.FMTSASiD,
|
|
423
|
-
};
|
|
424
|
-
this.emit(enums_1.MKPlayerEvent.FMTSASiD, fmtsASiDEventData);
|
|
425
|
-
}
|
|
426
|
-
if (rollInfo.programInfo.timeRange && rollInfo.isLive) {
|
|
427
|
-
this.emitProgramTimeChangedEvent(rollInfo.programInfo.timeRange);
|
|
428
|
-
(_a = this.programManager) === null || _a === void 0 ? void 0 : _a.updateProgramInfoList(rollInfo.programInfo);
|
|
429
|
-
}
|
|
430
|
-
if ((_b = sourceConfig.cdnOptions) === null || _b === void 0 ? void 0 : _b.cdnTokens) {
|
|
431
|
-
rollInfo.sourceUrl = MKUtils_1.MKUtils.updateURLQueryParams(rollInfo.sourceUrl, sourceConfig.cdnOptions.cdnTokens);
|
|
432
|
-
}
|
|
433
|
-
if (this.secureUrlManager) {
|
|
434
|
-
try {
|
|
435
|
-
const signature = yield this.secureUrlManager.getSignature(rollInfo.sourceUrl);
|
|
436
|
-
this.updateHttpHeaders({
|
|
437
|
-
"X-MK-Signature": signature,
|
|
438
|
-
"AuthorizationToken": (_c = sourceConfig.registered) === null || _c === void 0 ? void 0 : _c.environmentConfig.authToken
|
|
439
|
-
});
|
|
444
|
+
};
|
|
445
|
+
MKPlayer.prototype.load = function (sourceConfig, disableSeeking) {
|
|
446
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
447
|
+
var _this = this;
|
|
448
|
+
return __generator(this, function (_a) {
|
|
449
|
+
switch (_a.label) {
|
|
450
|
+
case 0:
|
|
451
|
+
this.emit(enums_1.MKPlayerEvent.TuneStarted, {
|
|
452
|
+
type: enums_1.MKPlayerEvent.TuneStarted,
|
|
453
|
+
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp()
|
|
454
|
+
});
|
|
455
|
+
if (!this.sourceLoaded) return [3, 2];
|
|
456
|
+
return [4, this.unload()];
|
|
457
|
+
case 1:
|
|
458
|
+
_a.sent();
|
|
459
|
+
_a.label = 2;
|
|
460
|
+
case 2: return [2, new Promise(function (resolve, reject) {
|
|
461
|
+
_this.sourceLoaded = false;
|
|
462
|
+
_this.azukiRequest = undefined;
|
|
463
|
+
_this.sourceConfig = undefined;
|
|
464
|
+
_this.programManager = undefined;
|
|
465
|
+
_this.sessionManager = undefined;
|
|
466
|
+
_this.secureUrlManager = undefined;
|
|
467
|
+
_this.adobeSessionConcurrencyRequest = undefined;
|
|
468
|
+
sourceConfig = Object.assign({}, sourceConfig);
|
|
469
|
+
if (sourceConfig.ull !== undefined) {
|
|
470
|
+
return reject(new Error("ULL source is not yet supported!"));
|
|
440
471
|
}
|
|
441
|
-
|
|
442
|
-
|
|
472
|
+
else if (sourceConfig.hls !== undefined || sourceConfig.dash !== undefined || sourceConfig.smooth !== undefined || sourceConfig.progressive !== undefined) {
|
|
473
|
+
_this.loadSource(sourceConfig, disableSeeking)
|
|
474
|
+
.then(function () { return resolve(); })
|
|
475
|
+
.catch(function (error) { return reject(error); });
|
|
443
476
|
}
|
|
444
|
-
|
|
445
|
-
|
|
446
|
-
|
|
447
|
-
|
|
448
|
-
|
|
449
|
-
|
|
450
|
-
|
|
451
|
-
|
|
477
|
+
else if (sourceConfig.registered !== undefined) {
|
|
478
|
+
if (sourceConfig.registered.environmentConfig.kssUrl) {
|
|
479
|
+
_this.secureUrlManager = new MKSecureUrlManager_1.MKSecureUrlManager(sourceConfig.registered.environmentConfig.authToken, sourceConfig.registered.environmentConfig.kssUrl);
|
|
480
|
+
}
|
|
481
|
+
_this.azukiRequest = new MKAzukiRequest_1.MKAzukiRequest(sourceConfig, _this.onSessionConcurrencyNotificationError.bind(_this));
|
|
482
|
+
_this.azukiRequest.rollRequest()
|
|
483
|
+
.then(function (rollInfo) { return __awaiter(_this, void 0, void 0, function () {
|
|
484
|
+
var controlBlockingRestrictions, fmtsASiDEventData, signature, _a, randomDecimal, randomNumber;
|
|
485
|
+
var _this = this;
|
|
486
|
+
var _b, _c, _d, _e;
|
|
487
|
+
return __generator(this, function (_f) {
|
|
488
|
+
switch (_f.label) {
|
|
489
|
+
case 0:
|
|
490
|
+
this.sendAnalyticsDataEvent(enums_1.MKAnalyticsDataName.Registration, MKAzukiRequest_1.MKAzukiRequest.responseTime.registration);
|
|
491
|
+
this.sendAnalyticsDataEvent(enums_1.MKAnalyticsDataName.Roll, MKAzukiRequest_1.MKAzukiRequest.responseTime.roll);
|
|
492
|
+
this.sendAnalyticsDataEvent(enums_1.MKAnalyticsDataName.DRMType, rollInfo.drmType);
|
|
493
|
+
if (rollInfo.beaconInterval > 0) {
|
|
494
|
+
this.sendAnalyticsDataEvent(enums_1.MKAnalyticsDataName.BeaconInterval, rollInfo.beaconInterval);
|
|
495
|
+
(_b = this.azukiRequest) === null || _b === void 0 ? void 0 : _b.setAnalyticsDataCallback(this.sendAnalyticsDataEvent.bind(this));
|
|
496
|
+
}
|
|
497
|
+
this.programManager = new common_1.MKProgramManager(this.azukiRequest);
|
|
498
|
+
controlBlockingRestrictions = this.programManager.validateProgramRestrictions(rollInfo.programInfo);
|
|
499
|
+
if (controlBlockingRestrictions.length > 0) {
|
|
500
|
+
this.emitProgramRestrictionsEvent(controlBlockingRestrictions);
|
|
501
|
+
}
|
|
502
|
+
if (rollInfo.asidInitToken && rollInfo.asidInitToken.length > 0) {
|
|
503
|
+
fmtsASiDEventData = {
|
|
504
|
+
initToken: rollInfo.asidInitToken,
|
|
505
|
+
assetId: rollInfo.mediaId,
|
|
506
|
+
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp(),
|
|
507
|
+
type: enums_1.MKPlayerEvent.FMTSASiD,
|
|
508
|
+
};
|
|
509
|
+
this.emit(enums_1.MKPlayerEvent.FMTSASiD, fmtsASiDEventData);
|
|
510
|
+
}
|
|
511
|
+
if (rollInfo.programInfo.timeRange && rollInfo.isLive) {
|
|
512
|
+
this.emitProgramTimeChangedEvent(rollInfo.programInfo.timeRange);
|
|
513
|
+
(_c = this.programManager) === null || _c === void 0 ? void 0 : _c.updateProgramInfoList(rollInfo.programInfo).then(function () {
|
|
514
|
+
_this.sendAnalyticsDataEvent(enums_1.MKAnalyticsDataName.ProgramQuery, MKAzukiRequest_1.MKAzukiRequest.responseTime.query);
|
|
515
|
+
});
|
|
516
|
+
}
|
|
517
|
+
if (rollInfo.failoverSourceUrl) {
|
|
518
|
+
this.failOverUrl = rollInfo.failoverSourceUrl;
|
|
519
|
+
}
|
|
520
|
+
if ((_d = sourceConfig.cdnOptions) === null || _d === void 0 ? void 0 : _d.cdnTokens) {
|
|
521
|
+
rollInfo.sourceUrl = MKUtils_1.MKUtils.updateURLQueryParams(rollInfo.sourceUrl, sourceConfig.cdnOptions.cdnTokens);
|
|
522
|
+
if (rollInfo.failoverSourceUrl) {
|
|
523
|
+
this.failOverUrl = MKUtils_1.MKUtils.updateURLQueryParams(rollInfo.failoverSourceUrl, sourceConfig.cdnOptions.cdnTokens);
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
if (!this.secureUrlManager) return [3, 4];
|
|
527
|
+
_f.label = 1;
|
|
528
|
+
case 1:
|
|
529
|
+
_f.trys.push([1, 3, , 4]);
|
|
530
|
+
return [4, this.secureUrlManager.getSignature(rollInfo.sourceUrl)];
|
|
531
|
+
case 2:
|
|
532
|
+
signature = _f.sent();
|
|
533
|
+
this.updateHttpHeaders({
|
|
534
|
+
"X-MK-Signature": signature,
|
|
535
|
+
"AuthorizationToken": (_e = sourceConfig.registered) === null || _e === void 0 ? void 0 : _e.environmentConfig.authToken
|
|
536
|
+
});
|
|
537
|
+
return [3, 4];
|
|
538
|
+
case 3:
|
|
539
|
+
_a = _f.sent();
|
|
540
|
+
common_1.MKLog.warn("Failed to get signature from secureUrlManager!");
|
|
541
|
+
return [3, 4];
|
|
542
|
+
case 4:
|
|
543
|
+
if (rollInfo.analytics_publish_percent) {
|
|
544
|
+
randomDecimal = Math.random();
|
|
545
|
+
randomNumber = Math.floor(randomDecimal * 99) + 1;
|
|
546
|
+
if (randomNumber >= rollInfo.analytics_publish_percent && !!this.playerConfig.analytics) {
|
|
547
|
+
this.analyticsConfig = this.playerConfig.analytics;
|
|
548
|
+
this.playerConfig.analytics = false;
|
|
549
|
+
common_1.MKLog.warn("Disabled Bitmovin Analytics session: Generated random number - ".concat(randomNumber, " is greater than threshold value - ").concat(rollInfo.analytics_publish_percent));
|
|
550
|
+
}
|
|
551
|
+
else if (randomNumber < rollInfo.analytics_publish_percent && !this.playerConfig.analytics) {
|
|
552
|
+
this.playerConfig.analytics = this.analyticsConfig;
|
|
553
|
+
common_1.MKLog.log("Enabled Bitmovin Analytics session: Generated random number - ".concat(randomNumber, " is lesser than threshold value - ").concat(rollInfo.analytics_publish_percent));
|
|
554
|
+
}
|
|
555
|
+
}
|
|
556
|
+
this.loadSource(this.updateSourceConfigFromRollInfo(sourceConfig, rollInfo), disableSeeking)
|
|
557
|
+
.then(function () { return resolve(); })
|
|
558
|
+
.catch(function (error) { return reject(error); });
|
|
559
|
+
return [2];
|
|
560
|
+
}
|
|
561
|
+
});
|
|
562
|
+
}); })
|
|
563
|
+
.catch(function (error) {
|
|
564
|
+
return reject(_this.unloadAndEmitErrorEvent(error, false));
|
|
565
|
+
});
|
|
452
566
|
}
|
|
453
|
-
else
|
|
454
|
-
|
|
455
|
-
common_1.MKLog.log(`Enabled Bitmovin Analytics session: Generated random number - ${randomNumber} is lesser than threshold value - ${rollInfo.analytics_publish_percent}`);
|
|
567
|
+
else {
|
|
568
|
+
return reject(new Error("Source type not supported!"));
|
|
456
569
|
}
|
|
457
|
-
}
|
|
458
|
-
this.loadSource(this.updateSourceConfigFromRollInfo(sourceConfig, rollInfo), disableSeeking)
|
|
459
|
-
.then(() => { return resolve(); })
|
|
460
|
-
.catch((error) => { return reject(error); });
|
|
461
|
-
}))
|
|
462
|
-
.catch((error) => {
|
|
463
|
-
return reject(this.unloadAndEmitErrorEvent(error, false));
|
|
464
|
-
});
|
|
465
|
-
}
|
|
466
|
-
else {
|
|
467
|
-
return reject(new Error("Source type not supported!"));
|
|
570
|
+
})];
|
|
468
571
|
}
|
|
469
572
|
});
|
|
470
573
|
});
|
|
471
|
-
}
|
|
472
|
-
reload(start, sourceOptions) {
|
|
574
|
+
};
|
|
575
|
+
MKPlayer.prototype.reload = function (start, sourceOptions) {
|
|
473
576
|
if (!this.player) {
|
|
474
577
|
return Promise.reject(new Error("Player not yet available!"));
|
|
475
578
|
}
|
|
476
579
|
return this.player.reload(start, sourceOptions);
|
|
477
|
-
}
|
|
478
|
-
mute(issuer) {
|
|
580
|
+
};
|
|
581
|
+
MKPlayer.prototype.mute = function (issuer) {
|
|
479
582
|
if (!this.player) {
|
|
480
583
|
common_1.MKLog.error("Player not yet available!");
|
|
481
584
|
return;
|
|
482
585
|
}
|
|
483
586
|
this.player.mute(issuer);
|
|
484
|
-
}
|
|
485
|
-
pause(issuer) {
|
|
587
|
+
};
|
|
588
|
+
MKPlayer.prototype.pause = function (issuer) {
|
|
486
589
|
if (!this.player) {
|
|
487
590
|
common_1.MKLog.error("Player not yet available!");
|
|
488
591
|
return;
|
|
489
592
|
}
|
|
490
593
|
this.player.pause(issuer);
|
|
491
|
-
}
|
|
492
|
-
play(issuer) {
|
|
594
|
+
};
|
|
595
|
+
MKPlayer.prototype.play = function (issuer) {
|
|
493
596
|
if (!this.player) {
|
|
494
597
|
return Promise.reject(new Error("Player not yet available!"));
|
|
495
598
|
}
|
|
496
599
|
return this.player.play(issuer);
|
|
497
|
-
}
|
|
498
|
-
preload() {
|
|
600
|
+
};
|
|
601
|
+
MKPlayer.prototype.preload = function () {
|
|
499
602
|
if (!this.player) {
|
|
500
603
|
common_1.MKLog.error("Player not yet available!");
|
|
501
604
|
return;
|
|
502
605
|
}
|
|
503
606
|
this.player.preload();
|
|
504
|
-
}
|
|
505
|
-
removeSubtitle(subtitleID) {
|
|
607
|
+
};
|
|
608
|
+
MKPlayer.prototype.removeSubtitle = function (subtitleID) {
|
|
506
609
|
if (!this.player) {
|
|
507
610
|
common_1.MKLog.error("Player not yet available!");
|
|
508
611
|
return;
|
|
509
612
|
}
|
|
510
613
|
this.player.removeSubtitle(subtitleID);
|
|
511
|
-
}
|
|
512
|
-
seek(time, issuer) {
|
|
614
|
+
};
|
|
615
|
+
MKPlayer.prototype.seek = function (time, issuer) {
|
|
513
616
|
if (!this.player) {
|
|
514
617
|
common_1.MKLog.error("Player not yet available!");
|
|
515
618
|
return false;
|
|
516
619
|
}
|
|
517
620
|
return this.player.seek(time, issuer);
|
|
518
|
-
}
|
|
519
|
-
seekToLiveEdge(issuer) {
|
|
621
|
+
};
|
|
622
|
+
MKPlayer.prototype.seekToLiveEdge = function (issuer) {
|
|
520
623
|
if (!this.player) {
|
|
521
624
|
common_1.MKLog.error("Player not yet available!");
|
|
522
625
|
return;
|
|
523
626
|
}
|
|
524
627
|
this.player.seekToLiveEdge(issuer);
|
|
525
|
-
}
|
|
526
|
-
setAspectRatio(aspectratio) {
|
|
628
|
+
};
|
|
629
|
+
MKPlayer.prototype.setAspectRatio = function (aspectratio) {
|
|
527
630
|
if (!this.player) {
|
|
528
631
|
common_1.MKLog.error("Player not yet available!");
|
|
529
632
|
return;
|
|
530
633
|
}
|
|
531
634
|
this.player.setAspectRatio(aspectratio);
|
|
532
|
-
}
|
|
533
|
-
setAudio(trackID) {
|
|
635
|
+
};
|
|
636
|
+
MKPlayer.prototype.setAudio = function (trackID) {
|
|
534
637
|
if (!this.player) {
|
|
535
638
|
common_1.MKLog.error("Player not yet available!");
|
|
536
639
|
return;
|
|
537
640
|
}
|
|
538
641
|
this.player.setAudio(trackID);
|
|
539
|
-
}
|
|
540
|
-
setAudioQuality(audioQualityID) {
|
|
642
|
+
};
|
|
643
|
+
MKPlayer.prototype.setAudioQuality = function (audioQualityID) {
|
|
541
644
|
if (!this.player) {
|
|
542
645
|
common_1.MKLog.error("Player not yet available!");
|
|
543
646
|
return;
|
|
544
647
|
}
|
|
545
648
|
this.player.setAudioQuality(audioQualityID);
|
|
546
|
-
}
|
|
547
|
-
updateAuthToken(authToken) {
|
|
649
|
+
};
|
|
650
|
+
MKPlayer.prototype.updateAuthToken = function (authToken) {
|
|
651
|
+
var _this = this;
|
|
548
652
|
var _a;
|
|
549
653
|
if (!this.azukiRequest) {
|
|
550
654
|
common_1.MKLog.error("Available only for registered source and after source is loaded!");
|
|
@@ -555,44 +659,45 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
555
659
|
return;
|
|
556
660
|
}
|
|
557
661
|
this.azukiRequest.updateAuthToken(authToken);
|
|
558
|
-
(_a = this.secureUrlManager) === null || _a === void 0 ? void 0 : _a.updateAuthToken(authToken).then((signature)
|
|
662
|
+
(_a = this.secureUrlManager) === null || _a === void 0 ? void 0 : _a.updateAuthToken(authToken).then(function (signature) {
|
|
559
663
|
var _a;
|
|
560
664
|
if (!!signature) {
|
|
561
|
-
|
|
665
|
+
_this.updateHttpHeaders({
|
|
562
666
|
"X-MK-Signature": signature,
|
|
563
667
|
"AuthorizationToken": authToken
|
|
564
668
|
});
|
|
565
|
-
(_a =
|
|
566
|
-
|
|
669
|
+
(_a = _this.player) === null || _a === void 0 ? void 0 : _a.setHttpHeaders(_this.headers);
|
|
670
|
+
_this.thumbnailManager.setHttpHeaders(_this.headers);
|
|
567
671
|
}
|
|
568
|
-
}).catch((_error)
|
|
672
|
+
}).catch(function (_error) {
|
|
569
673
|
common_1.MKLog.warn("Something went wrong while setting http headers on the player for secureUrl signature and authToken!");
|
|
570
674
|
});
|
|
571
|
-
}
|
|
572
|
-
setHttpHeaders(headers) {
|
|
675
|
+
};
|
|
676
|
+
MKPlayer.prototype.setHttpHeaders = function (headers) {
|
|
677
|
+
var _this = this;
|
|
573
678
|
var _a, _b;
|
|
574
679
|
if (headers === null) {
|
|
575
680
|
(_a = this.player) === null || _a === void 0 ? void 0 : _a.setHttpHeaders(headers);
|
|
576
681
|
this.headers = null;
|
|
577
682
|
return;
|
|
578
683
|
}
|
|
579
|
-
|
|
684
|
+
var authToken = MKUtils_1.MKUtils.pluckValue(headers, "AuthorizationToken");
|
|
580
685
|
if (this.azukiRequest && this.secureUrlManager && typeof (authToken) === "string" && !!authToken) {
|
|
581
686
|
this.azukiRequest.updateAuthToken(authToken);
|
|
582
687
|
this.secureUrlManager.updateAuthToken(authToken)
|
|
583
|
-
.then((signature)
|
|
688
|
+
.then(function (signature) {
|
|
584
689
|
var _a;
|
|
585
690
|
headers["X-MK-Signature"] = signature;
|
|
586
|
-
|
|
587
|
-
(_a =
|
|
588
|
-
|
|
691
|
+
_this.updateHttpHeaders(headers);
|
|
692
|
+
(_a = _this.player) === null || _a === void 0 ? void 0 : _a.setHttpHeaders(_this.headers);
|
|
693
|
+
_this.thumbnailManager.setHttpHeaders(_this.headers);
|
|
589
694
|
})
|
|
590
|
-
.catch((_)
|
|
695
|
+
.catch(function (_) {
|
|
591
696
|
var _a;
|
|
592
697
|
common_1.MKLog.warn("Failed to get signature for the new authToken, setting the given headers on the player anyway!");
|
|
593
|
-
|
|
594
|
-
(_a =
|
|
595
|
-
|
|
698
|
+
_this.updateHttpHeaders(headers);
|
|
699
|
+
(_a = _this.player) === null || _a === void 0 ? void 0 : _a.setHttpHeaders(_this.headers);
|
|
700
|
+
_this.thumbnailManager.setHttpHeaders(_this.headers);
|
|
596
701
|
});
|
|
597
702
|
}
|
|
598
703
|
else {
|
|
@@ -600,151 +705,202 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
600
705
|
(_b = this.player) === null || _b === void 0 ? void 0 : _b.setHttpHeaders(this.headers);
|
|
601
706
|
this.thumbnailManager.setHttpHeaders(this.headers);
|
|
602
707
|
}
|
|
603
|
-
}
|
|
604
|
-
setInhomeStatus(inhomeStatus) {
|
|
708
|
+
};
|
|
709
|
+
MKPlayer.prototype.setInhomeStatus = function (inhomeStatus) {
|
|
605
710
|
MKAzukiRequest_1.MKAzukiRequest.inhomeStatus = inhomeStatus;
|
|
606
|
-
}
|
|
607
|
-
setLocationDetail(locationDetail) {
|
|
711
|
+
};
|
|
712
|
+
MKPlayer.prototype.setLocationDetail = function (locationDetail) {
|
|
608
713
|
if (locationDetail) {
|
|
609
714
|
MKAzukiRequest_1.MKAzukiRequest.locationDetail = locationDetail;
|
|
610
715
|
}
|
|
611
716
|
else {
|
|
612
717
|
delete MKAzukiRequest_1.MKAzukiRequest.locationDetail;
|
|
613
718
|
}
|
|
614
|
-
}
|
|
615
|
-
setLogLevel(level) {
|
|
719
|
+
};
|
|
720
|
+
MKPlayer.prototype.setLogLevel = function (level) {
|
|
616
721
|
var _a;
|
|
617
722
|
common_1.MKLog.setLogLevel(level);
|
|
618
723
|
(_a = this.player) === null || _a === void 0 ? void 0 : _a.setLogLevel(level);
|
|
619
|
-
}
|
|
620
|
-
setPlaybackSpeed(speed) {
|
|
724
|
+
};
|
|
725
|
+
MKPlayer.prototype.setPlaybackSpeed = function (speed) {
|
|
621
726
|
if (!this.player) {
|
|
622
727
|
common_1.MKLog.error("Player not yet available!");
|
|
623
728
|
return;
|
|
624
729
|
}
|
|
625
730
|
this.player.setPlaybackSpeed(speed);
|
|
626
|
-
}
|
|
627
|
-
setPosterImage(url, keepPersistent) {
|
|
731
|
+
};
|
|
732
|
+
MKPlayer.prototype.setPosterImage = function (url, keepPersistent) {
|
|
628
733
|
if (!this.player) {
|
|
629
734
|
common_1.MKLog.error("Player not yet available!");
|
|
630
735
|
return;
|
|
631
736
|
}
|
|
632
737
|
this.player.setPosterImage(url, keepPersistent);
|
|
633
|
-
}
|
|
634
|
-
setTargetBufferLevel(type, value, media) {
|
|
738
|
+
};
|
|
739
|
+
MKPlayer.prototype.setTargetBufferLevel = function (type, value, media) {
|
|
635
740
|
if (!this.player) {
|
|
636
741
|
common_1.MKLog.error("Player not yet available!");
|
|
637
742
|
return;
|
|
638
743
|
}
|
|
639
744
|
this.player.setTargetBufferLevel(type, value, media);
|
|
640
|
-
}
|
|
641
|
-
setVideoElement(videoElement) {
|
|
745
|
+
};
|
|
746
|
+
MKPlayer.prototype.setVideoElement = function (videoElement) {
|
|
642
747
|
this.videoElement = videoElement;
|
|
643
|
-
}
|
|
644
|
-
setVideoQuality(videoQualityID) {
|
|
748
|
+
};
|
|
749
|
+
MKPlayer.prototype.setVideoQuality = function (videoQualityID) {
|
|
645
750
|
if (!this.player) {
|
|
646
751
|
common_1.MKLog.error("Player not yet available!");
|
|
647
752
|
return;
|
|
648
753
|
}
|
|
649
754
|
this.player.setVideoQuality(videoQualityID);
|
|
650
|
-
}
|
|
651
|
-
setViewMode(viewMode, options) {
|
|
755
|
+
};
|
|
756
|
+
MKPlayer.prototype.setViewMode = function (viewMode, options) {
|
|
652
757
|
if (!this.player) {
|
|
653
758
|
common_1.MKLog.error("Player not yet available!");
|
|
654
759
|
return;
|
|
655
760
|
}
|
|
656
761
|
this.player.setViewMode(viewMode, options);
|
|
657
|
-
}
|
|
658
|
-
setVolume(volume, issuer) {
|
|
762
|
+
};
|
|
763
|
+
MKPlayer.prototype.setVolume = function (volume, issuer) {
|
|
659
764
|
if (!this.player) {
|
|
660
765
|
common_1.MKLog.error("Player not yet available!");
|
|
661
766
|
return;
|
|
662
767
|
}
|
|
663
768
|
this.player.setVolume(volume, issuer);
|
|
664
|
-
}
|
|
665
|
-
showAirplayTargetPicker() {
|
|
769
|
+
};
|
|
770
|
+
MKPlayer.prototype.showAirplayTargetPicker = function () {
|
|
666
771
|
if (!this.player) {
|
|
667
772
|
common_1.MKLog.error("Player not yet available!");
|
|
668
773
|
return;
|
|
669
774
|
}
|
|
670
775
|
this.player.showAirplayTargetPicker();
|
|
671
|
-
}
|
|
672
|
-
unload() {
|
|
776
|
+
};
|
|
777
|
+
MKPlayer.prototype.unload = function () {
|
|
673
778
|
var _a;
|
|
674
|
-
return __awaiter(this, void 0, void 0, function
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
779
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
780
|
+
return __generator(this, function (_b) {
|
|
781
|
+
switch (_b.label) {
|
|
782
|
+
case 0:
|
|
783
|
+
if (!this.player) {
|
|
784
|
+
return [2, Promise.reject(new Error("Player not yet available!"))];
|
|
785
|
+
}
|
|
786
|
+
(_a = this.sessionManager) === null || _a === void 0 ? void 0 : _a.stopSession().catch(function (error) {
|
|
787
|
+
common_1.MKLog.warn("stopSession failed for sesison concurrency with error: ", JSON.stringify(error));
|
|
788
|
+
});
|
|
789
|
+
if (this.playerConfig.enableHlsImageMediaPlaylistSupport) {
|
|
790
|
+
this.thumbnailManager.disable();
|
|
791
|
+
}
|
|
792
|
+
if (!this.videoElement) return [3, 2];
|
|
793
|
+
this.videoElement.src = "";
|
|
794
|
+
return [4, this.videoElement.setMediaKeys(null)];
|
|
795
|
+
case 1:
|
|
796
|
+
_b.sent();
|
|
797
|
+
_b.label = 2;
|
|
798
|
+
case 2:
|
|
799
|
+
this.emit(enums_1.MKPlayerEvent.SourceUnload, {
|
|
800
|
+
type: enums_1.MKPlayerEvent.SourceUnload,
|
|
801
|
+
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp()
|
|
802
|
+
});
|
|
803
|
+
return [2, this.player.unload()];
|
|
804
|
+
}
|
|
680
805
|
});
|
|
681
|
-
if (this.playerConfig.enableHlsImageMediaPlaylistSupport) {
|
|
682
|
-
this.thumbnailManager.disable();
|
|
683
|
-
}
|
|
684
|
-
if (this.videoElement) {
|
|
685
|
-
this.videoElement.src = "";
|
|
686
|
-
yield this.videoElement.setMediaKeys(null);
|
|
687
|
-
}
|
|
688
|
-
return this.player.unload();
|
|
689
806
|
});
|
|
690
|
-
}
|
|
691
|
-
unmute(issuer) {
|
|
807
|
+
};
|
|
808
|
+
MKPlayer.prototype.unmute = function (issuer) {
|
|
692
809
|
if (!this.player) {
|
|
693
810
|
common_1.MKLog.error("Player not yet available!");
|
|
694
811
|
return;
|
|
695
812
|
}
|
|
696
813
|
this.player.unmute(issuer);
|
|
697
|
-
}
|
|
698
|
-
getCatchupConfig() {
|
|
814
|
+
};
|
|
815
|
+
MKPlayer.prototype.getCatchupConfig = function () {
|
|
699
816
|
if (!this.player) {
|
|
700
817
|
common_1.MKLog.error("Player not yet available!");
|
|
701
818
|
return null;
|
|
702
819
|
}
|
|
703
820
|
return this.player.getCatchupConfig();
|
|
704
|
-
}
|
|
705
|
-
getFallbackConfig() {
|
|
821
|
+
};
|
|
822
|
+
MKPlayer.prototype.getFallbackConfig = function () {
|
|
706
823
|
if (!this.player) {
|
|
707
824
|
common_1.MKLog.error("Player not yet available!");
|
|
708
825
|
return null;
|
|
709
826
|
}
|
|
710
827
|
return this.player.getFallbackConfig();
|
|
711
|
-
}
|
|
712
|
-
getLatency() {
|
|
828
|
+
};
|
|
829
|
+
MKPlayer.prototype.getLatency = function () {
|
|
713
830
|
if (!this.player) {
|
|
714
831
|
common_1.MKLog.error("Player not yet available!");
|
|
715
832
|
return 0;
|
|
716
833
|
}
|
|
717
834
|
return this.player.getLatency();
|
|
718
|
-
}
|
|
719
|
-
getTargetLatency() {
|
|
835
|
+
};
|
|
836
|
+
MKPlayer.prototype.getTargetLatency = function () {
|
|
720
837
|
if (!this.player) {
|
|
721
838
|
common_1.MKLog.error("Player not yet available!");
|
|
722
839
|
return 0;
|
|
723
840
|
}
|
|
724
841
|
return this.player.getTargetLatency();
|
|
725
|
-
}
|
|
726
|
-
setCatchupConfig(config) {
|
|
842
|
+
};
|
|
843
|
+
MKPlayer.prototype.setCatchupConfig = function (config) {
|
|
727
844
|
if (!this.player) {
|
|
728
845
|
common_1.MKLog.error("Player not yet available!");
|
|
729
846
|
return;
|
|
730
847
|
}
|
|
731
848
|
this.player.setCatchupConfig(config);
|
|
732
|
-
}
|
|
733
|
-
setFallbackConfig(config) {
|
|
849
|
+
};
|
|
850
|
+
MKPlayer.prototype.setFallbackConfig = function (config) {
|
|
734
851
|
if (!this.player) {
|
|
735
852
|
common_1.MKLog.error("Player not yet available!");
|
|
736
853
|
return;
|
|
737
854
|
}
|
|
738
855
|
this.player.setFallbackConfig(config);
|
|
739
|
-
}
|
|
740
|
-
setTargetLatency(latency) {
|
|
856
|
+
};
|
|
857
|
+
MKPlayer.prototype.setTargetLatency = function (latency) {
|
|
741
858
|
if (!this.player) {
|
|
742
859
|
common_1.MKLog.error("Player not yet available!");
|
|
743
860
|
return;
|
|
744
861
|
}
|
|
745
862
|
this.player.setTargetLatency(latency);
|
|
746
|
-
}
|
|
747
|
-
|
|
863
|
+
};
|
|
864
|
+
MKPlayer.prototype.switchCdn = function () {
|
|
865
|
+
var _a, _b, _c;
|
|
866
|
+
return __awaiter(this, void 0, void 0, function () {
|
|
867
|
+
var signature, _d;
|
|
868
|
+
return __generator(this, function (_e) {
|
|
869
|
+
switch (_e.label) {
|
|
870
|
+
case 0:
|
|
871
|
+
if (!this.sourceConfig) return [3, 5];
|
|
872
|
+
if (!this.secureUrlManager) return [3, 4];
|
|
873
|
+
_e.label = 1;
|
|
874
|
+
case 1:
|
|
875
|
+
_e.trys.push([1, 3, , 4]);
|
|
876
|
+
return [4, this.secureUrlManager.getSignature(this.failOverUrl)];
|
|
877
|
+
case 2:
|
|
878
|
+
signature = _e.sent();
|
|
879
|
+
this.updateHttpHeaders({
|
|
880
|
+
"X-MK-Signature": signature,
|
|
881
|
+
"AuthorizationToken": (_a = this.sourceConfig.registered) === null || _a === void 0 ? void 0 : _a.environmentConfig.authToken
|
|
882
|
+
});
|
|
883
|
+
return [3, 4];
|
|
884
|
+
case 3:
|
|
885
|
+
_d = _e.sent();
|
|
886
|
+
common_1.MKLog.warn("Failed to get signature from secureUrlManager!");
|
|
887
|
+
return [3, 4];
|
|
888
|
+
case 4:
|
|
889
|
+
if ((_b = this.sourceConfig) === null || _b === void 0 ? void 0 : _b.dash) {
|
|
890
|
+
this.sourceConfig.dash = this.failOverUrl;
|
|
891
|
+
}
|
|
892
|
+
else if ((_c = this.sourceConfig) === null || _c === void 0 ? void 0 : _c.hls) {
|
|
893
|
+
this.sourceConfig.hls = this.failOverUrl;
|
|
894
|
+
}
|
|
895
|
+
this.loadSource(this.sourceConfig, false);
|
|
896
|
+
this.cdnFailoverAttempted = true;
|
|
897
|
+
_e.label = 5;
|
|
898
|
+
case 5: return [2];
|
|
899
|
+
}
|
|
900
|
+
});
|
|
901
|
+
});
|
|
902
|
+
};
|
|
903
|
+
MKPlayer.prototype.updateHttpHeaders = function (headers) {
|
|
748
904
|
var _a;
|
|
749
905
|
if (headers === null) {
|
|
750
906
|
this.headers = null;
|
|
@@ -752,8 +908,8 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
752
908
|
else {
|
|
753
909
|
this.headers = Object.assign({}, (_a = this.headers) !== null && _a !== void 0 ? _a : {}, headers);
|
|
754
910
|
}
|
|
755
|
-
}
|
|
756
|
-
updateSourceConfigFromRollInfo(sourceConfig, rollInfo) {
|
|
911
|
+
};
|
|
912
|
+
MKPlayer.prototype.updateSourceConfigFromRollInfo = function (sourceConfig, rollInfo) {
|
|
757
913
|
sourceConfig.drm = rollInfo.drm;
|
|
758
914
|
if (sourceConfig.assetType !== enums_1.MKAssetType.Catchup && sourceConfig.assetType !== enums_1.MKAssetType.DVR) {
|
|
759
915
|
sourceConfig.assetType = rollInfo.isLive ? (rollInfo.isLiveEvent ? enums_1.MKAssetType.Event : enums_1.MKAssetType.Live) : enums_1.MKAssetType.VOD;
|
|
@@ -765,285 +921,316 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
765
921
|
sourceConfig.dash = rollInfo.sourceUrl;
|
|
766
922
|
}
|
|
767
923
|
return sourceConfig;
|
|
768
|
-
}
|
|
769
|
-
initializeBitmovinPlayerEngine() {
|
|
924
|
+
};
|
|
925
|
+
MKPlayer.prototype.initializeBitmovinPlayerEngine = function () {
|
|
770
926
|
this.player = new MKBitmovinPlayer_1.MKBitmovinPlayer(this.videoContainer, this.playerConfig);
|
|
771
927
|
this.addListeners();
|
|
772
|
-
}
|
|
773
|
-
initializePlayer(sourceConfig) {
|
|
774
|
-
|
|
775
|
-
|
|
776
|
-
|
|
777
|
-
|
|
778
|
-
|
|
779
|
-
|
|
780
|
-
|
|
781
|
-
|
|
782
|
-
|
|
783
|
-
|
|
784
|
-
|
|
928
|
+
};
|
|
929
|
+
MKPlayer.prototype.initializePlayer = function (sourceConfig) {
|
|
930
|
+
var _this = this;
|
|
931
|
+
return new Promise(function (resolve, reject) { return __awaiter(_this, void 0, void 0, function () {
|
|
932
|
+
var _a, error_1;
|
|
933
|
+
return __generator(this, function (_b) {
|
|
934
|
+
switch (_b.label) {
|
|
935
|
+
case 0:
|
|
936
|
+
_b.trys.push([0, 8, , 9]);
|
|
937
|
+
if (!sourceConfig)
|
|
938
|
+
return [2, reject(new Error("Invalid source configuration!"))];
|
|
939
|
+
if (!(!!sourceConfig.hls || !!sourceConfig.dash || !!sourceConfig.smooth || !!sourceConfig.progressive)) return [3, 6];
|
|
940
|
+
if (!(this.player && !(this.player instanceof MKBitmovinPlayer_1.MKBitmovinPlayer))) return [3, 5];
|
|
941
|
+
_b.label = 1;
|
|
942
|
+
case 1:
|
|
943
|
+
_b.trys.push([1, 3, , 4]);
|
|
944
|
+
return [4, this.player.destroy()];
|
|
945
|
+
case 2:
|
|
946
|
+
_b.sent();
|
|
947
|
+
return [3, 4];
|
|
948
|
+
case 3:
|
|
949
|
+
_a = _b.sent();
|
|
950
|
+
return [3, 4];
|
|
951
|
+
case 4:
|
|
785
952
|
this.player = undefined;
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
790
|
-
|
|
791
|
-
|
|
953
|
+
_b.label = 5;
|
|
954
|
+
case 5:
|
|
955
|
+
this.initializeBitmovinPlayerEngine();
|
|
956
|
+
return [2, resolve()];
|
|
957
|
+
case 6:
|
|
958
|
+
if (sourceConfig.ull) {
|
|
959
|
+
return [2, reject(new Error("ULL source not yet supported!"))];
|
|
960
|
+
}
|
|
961
|
+
_b.label = 7;
|
|
962
|
+
case 7: return [3, 9];
|
|
963
|
+
case 8:
|
|
964
|
+
error_1 = _b.sent();
|
|
965
|
+
return [2, reject(error_1)];
|
|
966
|
+
case 9: return [2];
|
|
792
967
|
}
|
|
793
|
-
}
|
|
794
|
-
|
|
795
|
-
|
|
796
|
-
|
|
797
|
-
|
|
798
|
-
}
|
|
799
|
-
addListeners() {
|
|
968
|
+
});
|
|
969
|
+
}); });
|
|
970
|
+
};
|
|
971
|
+
MKPlayer.prototype.addListeners = function () {
|
|
972
|
+
var _this = this;
|
|
800
973
|
if (this.player) {
|
|
801
|
-
this.player.on(enums_1.MKPlayerEvent.AdBreakFinished, (event)
|
|
802
|
-
|
|
974
|
+
this.player.on(enums_1.MKPlayerEvent.AdBreakFinished, function (event) {
|
|
975
|
+
_this.emit(enums_1.MKPlayerEvent.AdBreakFinished, event);
|
|
803
976
|
});
|
|
804
|
-
this.player.on(enums_1.MKPlayerEvent.AdBreakStarted, (event)
|
|
805
|
-
|
|
977
|
+
this.player.on(enums_1.MKPlayerEvent.AdBreakStarted, function (event) {
|
|
978
|
+
_this.emit(enums_1.MKPlayerEvent.AdBreakStarted, event);
|
|
806
979
|
});
|
|
807
|
-
this.player.on(enums_1.MKPlayerEvent.AdFinished, (event)
|
|
808
|
-
|
|
980
|
+
this.player.on(enums_1.MKPlayerEvent.AdFinished, function (event) {
|
|
981
|
+
_this.emit(enums_1.MKPlayerEvent.AdFinished, event);
|
|
809
982
|
});
|
|
810
|
-
this.player.on(enums_1.MKPlayerEvent.AdMarker, (event)
|
|
811
|
-
|
|
983
|
+
this.player.on(enums_1.MKPlayerEvent.AdMarker, function (event) {
|
|
984
|
+
_this.emit(enums_1.MKPlayerEvent.AdMarker, event);
|
|
812
985
|
});
|
|
813
|
-
this.player.on(enums_1.MKPlayerEvent.AdClickThrough, (event)
|
|
814
|
-
|
|
986
|
+
this.player.on(enums_1.MKPlayerEvent.AdClickThrough, function (event) {
|
|
987
|
+
_this.emit(enums_1.MKPlayerEvent.AdClickThrough, event);
|
|
815
988
|
});
|
|
816
|
-
this.player.on(enums_1.MKPlayerEvent.AdCompanion, (event)
|
|
817
|
-
|
|
989
|
+
this.player.on(enums_1.MKPlayerEvent.AdCompanion, function (event) {
|
|
990
|
+
_this.emit(enums_1.MKPlayerEvent.AdCompanion, event);
|
|
818
991
|
});
|
|
819
|
-
this.player.on(enums_1.MKPlayerEvent.AdVerification, (event)
|
|
820
|
-
|
|
992
|
+
this.player.on(enums_1.MKPlayerEvent.AdVerification, function (event) {
|
|
993
|
+
_this.emit(enums_1.MKPlayerEvent.AdVerification, event);
|
|
821
994
|
});
|
|
822
|
-
this.player.on(enums_1.MKPlayerEvent.AdQuartile, (event)
|
|
823
|
-
|
|
995
|
+
this.player.on(enums_1.MKPlayerEvent.AdQuartile, function (event) {
|
|
996
|
+
_this.emit(enums_1.MKPlayerEvent.AdQuartile, event);
|
|
824
997
|
});
|
|
825
|
-
this.player.on(enums_1.MKPlayerEvent.AdStarted, (event)
|
|
826
|
-
|
|
998
|
+
this.player.on(enums_1.MKPlayerEvent.AdStarted, function (event) {
|
|
999
|
+
_this.emit(enums_1.MKPlayerEvent.AdStarted, event);
|
|
827
1000
|
});
|
|
828
|
-
this.player.on(enums_1.MKPlayerEvent.AirplayAvailable, (event)
|
|
829
|
-
|
|
1001
|
+
this.player.on(enums_1.MKPlayerEvent.AirplayAvailable, function (event) {
|
|
1002
|
+
_this.emit(enums_1.MKPlayerEvent.AirplayAvailable, event);
|
|
830
1003
|
});
|
|
831
|
-
this.player.on(enums_1.MKPlayerEvent.AirplayChanged, (event)
|
|
832
|
-
|
|
1004
|
+
this.player.on(enums_1.MKPlayerEvent.AirplayChanged, function (event) {
|
|
1005
|
+
_this.emit(enums_1.MKPlayerEvent.AirplayChanged, event);
|
|
833
1006
|
});
|
|
834
|
-
this.player.on(enums_1.MKPlayerEvent.AspectRatioChanged, (event)
|
|
835
|
-
|
|
1007
|
+
this.player.on(enums_1.MKPlayerEvent.AspectRatioChanged, function (event) {
|
|
1008
|
+
_this.emit(enums_1.MKPlayerEvent.AspectRatioChanged, event);
|
|
836
1009
|
});
|
|
837
|
-
this.player.on(enums_1.MKPlayerEvent.AudioAdaptation, (event)
|
|
838
|
-
|
|
1010
|
+
this.player.on(enums_1.MKPlayerEvent.AudioAdaptation, function (event) {
|
|
1011
|
+
_this.emit(enums_1.MKPlayerEvent.AudioAdaptation, event);
|
|
839
1012
|
});
|
|
840
|
-
this.player.on(enums_1.MKPlayerEvent.AudioAdded, (event)
|
|
841
|
-
|
|
1013
|
+
this.player.on(enums_1.MKPlayerEvent.AudioAdded, function (event) {
|
|
1014
|
+
_this.emit(enums_1.MKPlayerEvent.AudioAdded, event);
|
|
842
1015
|
});
|
|
843
|
-
this.player.on(enums_1.MKPlayerEvent.AudioChanged, (event)
|
|
844
|
-
|
|
1016
|
+
this.player.on(enums_1.MKPlayerEvent.AudioChanged, function (event) {
|
|
1017
|
+
_this.emit(enums_1.MKPlayerEvent.AudioChanged, event);
|
|
845
1018
|
});
|
|
846
|
-
this.player.on(enums_1.MKPlayerEvent.AudioDownloadQualityChange, (event)
|
|
847
|
-
|
|
1019
|
+
this.player.on(enums_1.MKPlayerEvent.AudioDownloadQualityChange, function (event) {
|
|
1020
|
+
_this.emit(enums_1.MKPlayerEvent.AudioDownloadQualityChange, event);
|
|
848
1021
|
});
|
|
849
|
-
this.player.on(enums_1.MKPlayerEvent.AudioDownloadQualityChanged, (event)
|
|
850
|
-
|
|
1022
|
+
this.player.on(enums_1.MKPlayerEvent.AudioDownloadQualityChanged, function (event) {
|
|
1023
|
+
_this.emit(enums_1.MKPlayerEvent.AudioDownloadQualityChanged, event);
|
|
851
1024
|
});
|
|
852
|
-
this.player.on(enums_1.MKPlayerEvent.AudioPlaybackQualityChanged, (event)
|
|
853
|
-
|
|
1025
|
+
this.player.on(enums_1.MKPlayerEvent.AudioPlaybackQualityChanged, function (event) {
|
|
1026
|
+
_this.emit(enums_1.MKPlayerEvent.AudioPlaybackQualityChanged, event);
|
|
854
1027
|
});
|
|
855
|
-
this.player.on(enums_1.MKPlayerEvent.AudioQualityAdded, (event)
|
|
856
|
-
|
|
1028
|
+
this.player.on(enums_1.MKPlayerEvent.AudioQualityAdded, function (event) {
|
|
1029
|
+
_this.emit(enums_1.MKPlayerEvent.AudioQualityAdded, event);
|
|
857
1030
|
});
|
|
858
|
-
this.player.on(enums_1.MKPlayerEvent.AudioQualityChanged, (event)
|
|
859
|
-
|
|
1031
|
+
this.player.on(enums_1.MKPlayerEvent.AudioQualityChanged, function (event) {
|
|
1032
|
+
_this.emit(enums_1.MKPlayerEvent.AudioQualityChanged, event);
|
|
860
1033
|
});
|
|
861
|
-
this.player.on(enums_1.MKPlayerEvent.AudioQualityRemoved, (event)
|
|
862
|
-
|
|
1034
|
+
this.player.on(enums_1.MKPlayerEvent.AudioQualityRemoved, function (event) {
|
|
1035
|
+
_this.emit(enums_1.MKPlayerEvent.AudioQualityRemoved, event);
|
|
863
1036
|
});
|
|
864
|
-
this.player.on(enums_1.MKPlayerEvent.AudioRemoved, (event)
|
|
865
|
-
|
|
1037
|
+
this.player.on(enums_1.MKPlayerEvent.AudioRemoved, function (event) {
|
|
1038
|
+
_this.emit(enums_1.MKPlayerEvent.AudioRemoved, event);
|
|
866
1039
|
});
|
|
867
|
-
this.player.on(enums_1.MKPlayerEvent.CastAvailable, (event)
|
|
868
|
-
|
|
1040
|
+
this.player.on(enums_1.MKPlayerEvent.CastAvailable, function (event) {
|
|
1041
|
+
_this.emit(enums_1.MKPlayerEvent.CastAvailable, event);
|
|
869
1042
|
});
|
|
870
|
-
this.player.on(enums_1.MKPlayerEvent.CastStart, (event)
|
|
871
|
-
|
|
1043
|
+
this.player.on(enums_1.MKPlayerEvent.CastStart, function (event) {
|
|
1044
|
+
_this.emit(enums_1.MKPlayerEvent.CastStart, event);
|
|
872
1045
|
});
|
|
873
|
-
this.player.on(enums_1.MKPlayerEvent.CastStarted, (event)
|
|
874
|
-
|
|
875
|
-
|
|
1046
|
+
this.player.on(enums_1.MKPlayerEvent.CastStarted, function (event) {
|
|
1047
|
+
var _a;
|
|
1048
|
+
if (_this.sessionManager) {
|
|
1049
|
+
(_a = _this.sessionManager) === null || _a === void 0 ? void 0 : _a.PauseSession();
|
|
1050
|
+
_this.addCastMetadata(_this.sessionManager.sessionManager === "azuki" ? 0 : 1);
|
|
876
1051
|
}
|
|
877
|
-
|
|
1052
|
+
_this.emit(enums_1.MKPlayerEvent.CastStarted, event);
|
|
878
1053
|
});
|
|
879
|
-
this.player.on(enums_1.MKPlayerEvent.CastStopped, (event)
|
|
880
|
-
|
|
1054
|
+
this.player.on(enums_1.MKPlayerEvent.CastStopped, function (event) {
|
|
1055
|
+
var _a;
|
|
1056
|
+
_this.emit(enums_1.MKPlayerEvent.CastStopped, event);
|
|
1057
|
+
(_a = _this.sessionManager) === null || _a === void 0 ? void 0 : _a.startSession();
|
|
881
1058
|
});
|
|
882
|
-
this.player.on(enums_1.MKPlayerEvent.CastWaitingForDevice, (event)
|
|
883
|
-
|
|
1059
|
+
this.player.on(enums_1.MKPlayerEvent.CastWaitingForDevice, function (event) {
|
|
1060
|
+
_this.emit(enums_1.MKPlayerEvent.CastWaitingForDevice, event);
|
|
884
1061
|
});
|
|
885
|
-
this.player.on(enums_1.MKPlayerEvent.CueEnter, (event)
|
|
886
|
-
|
|
1062
|
+
this.player.on(enums_1.MKPlayerEvent.CueEnter, function (event) {
|
|
1063
|
+
_this.emit(enums_1.MKPlayerEvent.CueEnter, event);
|
|
887
1064
|
}),
|
|
888
|
-
this.player.on(enums_1.MKPlayerEvent.CueExit, (event)
|
|
889
|
-
|
|
1065
|
+
this.player.on(enums_1.MKPlayerEvent.CueExit, function (event) {
|
|
1066
|
+
_this.emit(enums_1.MKPlayerEvent.CueExit, event);
|
|
890
1067
|
}),
|
|
891
|
-
this.player.on(enums_1.MKPlayerEvent.CueParsed, (event)
|
|
892
|
-
|
|
1068
|
+
this.player.on(enums_1.MKPlayerEvent.CueParsed, function (event) {
|
|
1069
|
+
_this.emit(enums_1.MKPlayerEvent.CueParsed, event);
|
|
893
1070
|
}),
|
|
894
|
-
this.player.on(enums_1.MKPlayerEvent.CueUpdate, (event)
|
|
895
|
-
|
|
1071
|
+
this.player.on(enums_1.MKPlayerEvent.CueUpdate, function (event) {
|
|
1072
|
+
_this.emit(enums_1.MKPlayerEvent.CueUpdate, event);
|
|
896
1073
|
}),
|
|
897
|
-
this.player.on(enums_1.MKPlayerEvent.DVRWindowExceeded, (event)
|
|
898
|
-
|
|
1074
|
+
this.player.on(enums_1.MKPlayerEvent.DVRWindowExceeded, function (event) {
|
|
1075
|
+
_this.emit(enums_1.MKPlayerEvent.DVRWindowExceeded, event);
|
|
899
1076
|
});
|
|
900
|
-
this.player.on(enums_1.MKPlayerEvent.Destroy, (event)
|
|
901
|
-
|
|
1077
|
+
this.player.on(enums_1.MKPlayerEvent.Destroy, function (event) {
|
|
1078
|
+
_this.emit(enums_1.MKPlayerEvent.Destroy, event);
|
|
902
1079
|
});
|
|
903
|
-
this.player.on(enums_1.MKPlayerEvent.DownloadFinished, (event)
|
|
904
|
-
|
|
1080
|
+
this.player.on(enums_1.MKPlayerEvent.DownloadFinished, function (event) {
|
|
1081
|
+
_this.emit(enums_1.MKPlayerEvent.DownloadFinished, event);
|
|
905
1082
|
});
|
|
906
|
-
this.player.on(enums_1.MKPlayerEvent.DrmLicenseAdded, (event)
|
|
907
|
-
|
|
1083
|
+
this.player.on(enums_1.MKPlayerEvent.DrmLicenseAdded, function (event) {
|
|
1084
|
+
_this.emit(enums_1.MKPlayerEvent.DrmLicenseAdded, event);
|
|
908
1085
|
});
|
|
909
|
-
this.player.on(enums_1.MKPlayerEvent.DurationChanged, (event)
|
|
910
|
-
|
|
1086
|
+
this.player.on(enums_1.MKPlayerEvent.DurationChanged, function (event) {
|
|
1087
|
+
_this.emit(enums_1.MKPlayerEvent.DurationChanged, event);
|
|
911
1088
|
});
|
|
912
|
-
this.player.on(enums_1.MKPlayerEvent.Error, (event)
|
|
913
|
-
|
|
1089
|
+
this.player.on(enums_1.MKPlayerEvent.Error, function (event) {
|
|
1090
|
+
var mkError = event;
|
|
1091
|
+
if ((mkError.code == enums_1.MKErrorCode.PLAYER_NETWORK_MANIFEST_DOWNLOAD_TIMEOUT ||
|
|
1092
|
+
mkError.code == enums_1.MKErrorCode.PLAYER_SOURCE_MANIFEST_INVALID ||
|
|
1093
|
+
mkError.code == enums_1.MKErrorCode.PLAYER_SOURCE_COULD_NOT_LOAD_MANIFEST ||
|
|
1094
|
+
mkError.code == enums_1.MKErrorCode.NETWORK_ERROR) && !_this.cdnFailoverAttempted) {
|
|
1095
|
+
_this.switchCdn();
|
|
1096
|
+
}
|
|
1097
|
+
else {
|
|
1098
|
+
_this.emit(enums_1.MKPlayerEvent.Error, event);
|
|
1099
|
+
}
|
|
1100
|
+
;
|
|
914
1101
|
});
|
|
915
|
-
this.player.on(enums_1.MKPlayerEvent.LatencyModeChanged, (event)
|
|
916
|
-
|
|
1102
|
+
this.player.on(enums_1.MKPlayerEvent.LatencyModeChanged, function (event) {
|
|
1103
|
+
_this.emit(enums_1.MKPlayerEvent.LatencyModeChanged, event);
|
|
917
1104
|
});
|
|
918
|
-
this.player.on(enums_1.MKPlayerEvent.Metadata, (event)
|
|
919
|
-
|
|
1105
|
+
this.player.on(enums_1.MKPlayerEvent.Metadata, function (event) {
|
|
1106
|
+
_this.emit(enums_1.MKPlayerEvent.Metadata, event);
|
|
920
1107
|
});
|
|
921
|
-
this.player.on(enums_1.MKPlayerEvent.MetadataChanged, (event)
|
|
922
|
-
|
|
1108
|
+
this.player.on(enums_1.MKPlayerEvent.MetadataChanged, function (event) {
|
|
1109
|
+
_this.emit(enums_1.MKPlayerEvent.MetadataChanged, event);
|
|
923
1110
|
});
|
|
924
|
-
this.player.on(enums_1.MKPlayerEvent.MetadataParsed, (event)
|
|
925
|
-
|
|
1111
|
+
this.player.on(enums_1.MKPlayerEvent.MetadataParsed, function (event) {
|
|
1112
|
+
_this.emit(enums_1.MKPlayerEvent.MetadataParsed, event);
|
|
926
1113
|
});
|
|
927
|
-
this.player.on(enums_1.MKPlayerEvent.Muted, (event)
|
|
928
|
-
|
|
1114
|
+
this.player.on(enums_1.MKPlayerEvent.Muted, function (event) {
|
|
1115
|
+
_this.emit(enums_1.MKPlayerEvent.Muted, event);
|
|
929
1116
|
});
|
|
930
|
-
this.player.on(enums_1.MKPlayerEvent.Paused, (event)
|
|
931
|
-
|
|
1117
|
+
this.player.on(enums_1.MKPlayerEvent.Paused, function (event) {
|
|
1118
|
+
_this.emit(enums_1.MKPlayerEvent.Paused, event);
|
|
932
1119
|
});
|
|
933
|
-
this.player.on(enums_1.MKPlayerEvent.PeriodSwitch, (event)
|
|
934
|
-
|
|
1120
|
+
this.player.on(enums_1.MKPlayerEvent.PeriodSwitch, function (event) {
|
|
1121
|
+
_this.emit(enums_1.MKPlayerEvent.PeriodSwitch, event);
|
|
935
1122
|
});
|
|
936
|
-
this.player.on(enums_1.MKPlayerEvent.PeriodSwitched, (event)
|
|
937
|
-
|
|
1123
|
+
this.player.on(enums_1.MKPlayerEvent.PeriodSwitched, function (event) {
|
|
1124
|
+
_this.emit(enums_1.MKPlayerEvent.PeriodSwitched, event);
|
|
938
1125
|
});
|
|
939
|
-
this.player.on(enums_1.MKPlayerEvent.Play, (event)
|
|
940
|
-
|
|
1126
|
+
this.player.on(enums_1.MKPlayerEvent.Play, function (event) {
|
|
1127
|
+
_this.emit(enums_1.MKPlayerEvent.Play, event);
|
|
941
1128
|
});
|
|
942
|
-
this.player.on(enums_1.MKPlayerEvent.PlaybackFinished, (event)
|
|
943
|
-
|
|
1129
|
+
this.player.on(enums_1.MKPlayerEvent.PlaybackFinished, function (event) {
|
|
1130
|
+
_this.emit(enums_1.MKPlayerEvent.PlaybackFinished, event);
|
|
944
1131
|
});
|
|
945
|
-
this.player.on(enums_1.MKPlayerEvent.PlaybackSpeedChanged, (event)
|
|
946
|
-
|
|
1132
|
+
this.player.on(enums_1.MKPlayerEvent.PlaybackSpeedChanged, function (event) {
|
|
1133
|
+
_this.emit(enums_1.MKPlayerEvent.PlaybackSpeedChanged, event);
|
|
947
1134
|
});
|
|
948
|
-
this.player.on(enums_1.MKPlayerEvent.PlayerResized, (event)
|
|
949
|
-
|
|
1135
|
+
this.player.on(enums_1.MKPlayerEvent.PlayerResized, function (event) {
|
|
1136
|
+
_this.emit(enums_1.MKPlayerEvent.PlayerResized, event);
|
|
950
1137
|
});
|
|
951
|
-
this.player.on(enums_1.MKPlayerEvent.Playing, (event)
|
|
952
|
-
|
|
1138
|
+
this.player.on(enums_1.MKPlayerEvent.Playing, function (event) {
|
|
1139
|
+
_this.emit(enums_1.MKPlayerEvent.Playing, event);
|
|
953
1140
|
});
|
|
954
|
-
this.player.on(enums_1.MKPlayerEvent.Ready, (event)
|
|
955
|
-
|
|
956
|
-
|
|
1141
|
+
this.player.on(enums_1.MKPlayerEvent.Ready, function (event) {
|
|
1142
|
+
_this.videoElement = _this.getVideoElement();
|
|
1143
|
+
_this.emit(enums_1.MKPlayerEvent.Ready, event);
|
|
957
1144
|
});
|
|
958
|
-
this.player.on(enums_1.MKPlayerEvent.Seek, (event)
|
|
959
|
-
|
|
1145
|
+
this.player.on(enums_1.MKPlayerEvent.Seek, function (event) {
|
|
1146
|
+
_this.emit(enums_1.MKPlayerEvent.Seek, event);
|
|
960
1147
|
});
|
|
961
|
-
this.player.on(enums_1.MKPlayerEvent.Seeked, (event)
|
|
962
|
-
|
|
1148
|
+
this.player.on(enums_1.MKPlayerEvent.Seeked, function (event) {
|
|
1149
|
+
_this.emit(enums_1.MKPlayerEvent.Seeked, event);
|
|
963
1150
|
});
|
|
964
|
-
this.player.on(enums_1.MKPlayerEvent.SegmentPlayback, (event)
|
|
965
|
-
|
|
1151
|
+
this.player.on(enums_1.MKPlayerEvent.SegmentPlayback, function (event) {
|
|
1152
|
+
_this.emit(enums_1.MKPlayerEvent.SegmentPlayback, event);
|
|
966
1153
|
});
|
|
967
|
-
this.player.on(enums_1.MKPlayerEvent.SegmentRequestFinished, (event)
|
|
968
|
-
|
|
1154
|
+
this.player.on(enums_1.MKPlayerEvent.SegmentRequestFinished, function (event) {
|
|
1155
|
+
_this.emit(enums_1.MKPlayerEvent.SegmentRequestFinished, event);
|
|
969
1156
|
});
|
|
970
|
-
this.player.on(enums_1.MKPlayerEvent.ShowAirplayTargetPicker, (event)
|
|
971
|
-
|
|
1157
|
+
this.player.on(enums_1.MKPlayerEvent.ShowAirplayTargetPicker, function (event) {
|
|
1158
|
+
_this.emit(enums_1.MKPlayerEvent.ShowAirplayTargetPicker, event);
|
|
972
1159
|
});
|
|
973
|
-
this.player.on(enums_1.MKPlayerEvent.SourceLoaded, (event)
|
|
1160
|
+
this.player.on(enums_1.MKPlayerEvent.SourceLoaded, function (event) {
|
|
974
1161
|
var _a, _b, _c, _d, _e, _f;
|
|
975
|
-
|
|
976
|
-
|
|
977
|
-
if ((_b = (_a =
|
|
1162
|
+
_this.sourceLoaded = true;
|
|
1163
|
+
_this.emit(enums_1.MKPlayerEvent.SourceLoaded, event);
|
|
1164
|
+
if ((_b = (_a = _this.sourceConfig) === null || _a === void 0 ? void 0 : _a.registered) === null || _b === void 0 ? void 0 : _b.adobePrimetimeConfig) {
|
|
978
1165
|
try {
|
|
979
|
-
|
|
980
|
-
|
|
1166
|
+
_this.adobeSessionConcurrencyRequest = new request_1.MKAdobeSessionConcurrencyRequest(_this.sourceConfig.registered.adobePrimetimeConfig, _this.onSessionConcurrencyNotificationError.bind(_this));
|
|
1167
|
+
_this.sessionManager = _this.adobeSessionConcurrencyRequest;
|
|
981
1168
|
}
|
|
982
1169
|
catch (error) {
|
|
983
1170
|
common_1.MKLog.warn("Failed to initialize session manager due to error: ", JSON.stringify(error));
|
|
984
1171
|
}
|
|
985
1172
|
}
|
|
986
1173
|
else {
|
|
987
|
-
|
|
1174
|
+
_this.sessionManager = _this.azukiRequest;
|
|
988
1175
|
}
|
|
989
|
-
(_c =
|
|
1176
|
+
(_c = _this.sessionManager) === null || _c === void 0 ? void 0 : _c.startSession().catch(function (error) {
|
|
990
1177
|
common_1.MKLog.warn("startSession failed for session concurrency with error: ", JSON.stringify(error));
|
|
991
1178
|
});
|
|
992
|
-
if (
|
|
993
|
-
((_d =
|
|
994
|
-
|
|
1179
|
+
if (_this.playerConfig.enableHlsImageMediaPlaylistSupport &&
|
|
1180
|
+
((_d = _this.sourceConfig) === null || _d === void 0 ? void 0 : _d.hls) && !((_e = _this.sourceConfig) === null || _e === void 0 ? void 0 : _e.thumbnailTrack)) {
|
|
1181
|
+
_this.thumbnailManager.enable(_this.sourceConfig.hls, (_f = _this.headers) !== null && _f !== void 0 ? _f : undefined);
|
|
995
1182
|
}
|
|
996
1183
|
});
|
|
997
|
-
this.player.on(enums_1.MKPlayerEvent.SourceUnloaded, (event)
|
|
998
|
-
|
|
999
|
-
|
|
1184
|
+
this.player.on(enums_1.MKPlayerEvent.SourceUnloaded, function (event) {
|
|
1185
|
+
_this.sourceLoaded = false;
|
|
1186
|
+
_this.emit(enums_1.MKPlayerEvent.SourceUnloaded, event);
|
|
1000
1187
|
});
|
|
1001
|
-
this.player.on(enums_1.MKPlayerEvent.StallEnded, (event)
|
|
1002
|
-
|
|
1188
|
+
this.player.on(enums_1.MKPlayerEvent.StallEnded, function (event) {
|
|
1189
|
+
_this.emit(enums_1.MKPlayerEvent.StallEnded, event);
|
|
1003
1190
|
});
|
|
1004
|
-
this.player.on(enums_1.MKPlayerEvent.StallStarted, (event)
|
|
1005
|
-
|
|
1191
|
+
this.player.on(enums_1.MKPlayerEvent.StallStarted, function (event) {
|
|
1192
|
+
_this.emit(enums_1.MKPlayerEvent.StallStarted, event);
|
|
1006
1193
|
});
|
|
1007
|
-
this.player.on(enums_1.MKPlayerEvent.SubtitleAdded, (event)
|
|
1008
|
-
|
|
1194
|
+
this.player.on(enums_1.MKPlayerEvent.SubtitleAdded, function (event) {
|
|
1195
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleAdded, event);
|
|
1009
1196
|
});
|
|
1010
|
-
this.player.on(enums_1.MKPlayerEvent.SubtitleDisable, (event)
|
|
1011
|
-
|
|
1197
|
+
this.player.on(enums_1.MKPlayerEvent.SubtitleDisable, function (event) {
|
|
1198
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleDisable, event);
|
|
1012
1199
|
});
|
|
1013
|
-
this.player.on(enums_1.MKPlayerEvent.SubtitleDisabled, (event)
|
|
1014
|
-
|
|
1200
|
+
this.player.on(enums_1.MKPlayerEvent.SubtitleDisabled, function (event) {
|
|
1201
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleDisabled, event);
|
|
1015
1202
|
});
|
|
1016
|
-
this.player.on(enums_1.MKPlayerEvent.SubtitleEnable, (event)
|
|
1017
|
-
|
|
1203
|
+
this.player.on(enums_1.MKPlayerEvent.SubtitleEnable, function (event) {
|
|
1204
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleEnable, event);
|
|
1018
1205
|
});
|
|
1019
|
-
this.player.on(enums_1.MKPlayerEvent.SubtitleEnabled, (event)
|
|
1020
|
-
|
|
1206
|
+
this.player.on(enums_1.MKPlayerEvent.SubtitleEnabled, function (event) {
|
|
1207
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleEnabled, event);
|
|
1021
1208
|
});
|
|
1022
|
-
this.player.on(enums_1.MKPlayerEvent.SubtitleRemoved, (event)
|
|
1023
|
-
|
|
1209
|
+
this.player.on(enums_1.MKPlayerEvent.SubtitleRemoved, function (event) {
|
|
1210
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleRemoved, event);
|
|
1024
1211
|
});
|
|
1025
|
-
this.player.on(enums_1.MKPlayerEvent.TargetLatencyChanged, (event)
|
|
1026
|
-
|
|
1212
|
+
this.player.on(enums_1.MKPlayerEvent.TargetLatencyChanged, function (event) {
|
|
1213
|
+
_this.emit(enums_1.MKPlayerEvent.TargetLatencyChanged, event);
|
|
1027
1214
|
});
|
|
1028
|
-
this.player.on(enums_1.MKPlayerEvent.TimeChanged, (event)
|
|
1215
|
+
this.player.on(enums_1.MKPlayerEvent.TimeChanged, function (event) {
|
|
1029
1216
|
var _a;
|
|
1030
|
-
|
|
1031
|
-
|
|
1032
|
-
if (
|
|
1033
|
-
|
|
1217
|
+
_this.emit(enums_1.MKPlayerEvent.TimeChanged, event);
|
|
1218
|
+
var timeChangedEvent = event;
|
|
1219
|
+
if (_this.programManager && ((_a = _this.sourceConfig) === null || _a === void 0 ? void 0 : _a.assetType) === enums_1.MKAssetType.Live) {
|
|
1220
|
+
var programInfo = _this.programManager.checkProgramBoundary(timeChangedEvent.time);
|
|
1034
1221
|
if (programInfo) {
|
|
1035
1222
|
try {
|
|
1036
|
-
|
|
1223
|
+
var controlBlockingRestrictions = _this.programManager.validateProgramRestrictions(programInfo);
|
|
1037
1224
|
if (controlBlockingRestrictions.length > 0) {
|
|
1038
|
-
|
|
1225
|
+
_this.emitProgramRestrictionsEvent(controlBlockingRestrictions);
|
|
1039
1226
|
}
|
|
1040
1227
|
if (programInfo.timeRange) {
|
|
1041
|
-
|
|
1228
|
+
_this.emitProgramTimeChangedEvent(programInfo.timeRange);
|
|
1042
1229
|
}
|
|
1043
1230
|
}
|
|
1044
1231
|
catch (error) {
|
|
1045
1232
|
if (MKUtils_1.MKUtils.isMKError(error)) {
|
|
1046
|
-
|
|
1233
|
+
_this.unloadAndEmitErrorEvent(error);
|
|
1047
1234
|
}
|
|
1048
1235
|
else {
|
|
1049
1236
|
common_1.MKLog.error("Unhandled error: ", error);
|
|
@@ -1052,50 +1239,54 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
1052
1239
|
}
|
|
1053
1240
|
}
|
|
1054
1241
|
});
|
|
1055
|
-
this.player.on(enums_1.MKPlayerEvent.Unmuted, (event)
|
|
1056
|
-
|
|
1242
|
+
this.player.on(enums_1.MKPlayerEvent.Unmuted, function (event) {
|
|
1243
|
+
_this.emit(enums_1.MKPlayerEvent.Unmuted, event);
|
|
1057
1244
|
});
|
|
1058
|
-
this.player.on(enums_1.MKPlayerEvent.VideoAdaptation, (event)
|
|
1059
|
-
|
|
1245
|
+
this.player.on(enums_1.MKPlayerEvent.VideoAdaptation, function (event) {
|
|
1246
|
+
_this.emit(enums_1.MKPlayerEvent.VideoAdaptation, event);
|
|
1060
1247
|
});
|
|
1061
|
-
this.player.on(enums_1.MKPlayerEvent.VideoDownloadQualityChange, (event)
|
|
1062
|
-
|
|
1248
|
+
this.player.on(enums_1.MKPlayerEvent.VideoDownloadQualityChange, function (event) {
|
|
1249
|
+
_this.emit(enums_1.MKPlayerEvent.VideoDownloadQualityChange, event);
|
|
1063
1250
|
});
|
|
1064
|
-
this.player.on(enums_1.MKPlayerEvent.VideoDownloadQualityChanged, (event)
|
|
1065
|
-
|
|
1251
|
+
this.player.on(enums_1.MKPlayerEvent.VideoDownloadQualityChanged, function (event) {
|
|
1252
|
+
_this.emit(enums_1.MKPlayerEvent.VideoDownloadQualityChanged, event);
|
|
1066
1253
|
});
|
|
1067
|
-
this.player.on(enums_1.MKPlayerEvent.VideoPlaybackQualityChanged, (event)
|
|
1068
|
-
|
|
1254
|
+
this.player.on(enums_1.MKPlayerEvent.VideoPlaybackQualityChanged, function (event) {
|
|
1255
|
+
_this.emit(enums_1.MKPlayerEvent.VideoPlaybackQualityChanged, event);
|
|
1069
1256
|
});
|
|
1070
|
-
this.player.on(enums_1.MKPlayerEvent.VideoQualityAdded, (event)
|
|
1071
|
-
|
|
1257
|
+
this.player.on(enums_1.MKPlayerEvent.VideoQualityAdded, function (event) {
|
|
1258
|
+
_this.emit(enums_1.MKPlayerEvent.VideoQualityAdded, event);
|
|
1072
1259
|
});
|
|
1073
|
-
this.player.on(enums_1.MKPlayerEvent.VideoQualityChanged, (event)
|
|
1074
|
-
|
|
1260
|
+
this.player.on(enums_1.MKPlayerEvent.VideoQualityChanged, function (event) {
|
|
1261
|
+
_this.emit(enums_1.MKPlayerEvent.VideoQualityChanged, event);
|
|
1075
1262
|
});
|
|
1076
|
-
this.player.on(enums_1.MKPlayerEvent.VideoQualityRemoved, (event)
|
|
1077
|
-
|
|
1263
|
+
this.player.on(enums_1.MKPlayerEvent.VideoQualityRemoved, function (event) {
|
|
1264
|
+
_this.emit(enums_1.MKPlayerEvent.VideoQualityRemoved, event);
|
|
1078
1265
|
});
|
|
1079
|
-
this.player.on(enums_1.MKPlayerEvent.ViewModeChanged, (event)
|
|
1080
|
-
|
|
1266
|
+
this.player.on(enums_1.MKPlayerEvent.ViewModeChanged, function (event) {
|
|
1267
|
+
_this.emit(enums_1.MKPlayerEvent.ViewModeChanged, event);
|
|
1081
1268
|
});
|
|
1082
|
-
this.player.on(enums_1.MKPlayerEvent.VolumeChanged, (event)
|
|
1083
|
-
|
|
1269
|
+
this.player.on(enums_1.MKPlayerEvent.VolumeChanged, function (event) {
|
|
1270
|
+
_this.emit(enums_1.MKPlayerEvent.VolumeChanged, event);
|
|
1271
|
+
});
|
|
1272
|
+
this.player.on(enums_1.MKPlayerEvent.VSPPSessionIdAvailable, function (event) {
|
|
1273
|
+
_this.emit(enums_1.MKPlayerEvent.VSPPSessionIdAvailable, event);
|
|
1084
1274
|
});
|
|
1085
1275
|
}
|
|
1086
|
-
}
|
|
1087
|
-
emitProgramTimeChangedEvent(timeRange) {
|
|
1088
|
-
|
|
1276
|
+
};
|
|
1277
|
+
MKPlayer.prototype.emitProgramTimeChangedEvent = function (timeRange) {
|
|
1278
|
+
var programTimeChangedEventData = {
|
|
1089
1279
|
timeRange: timeRange,
|
|
1090
1280
|
type: enums_1.MKPlayerEvent.ProgramTimeChanged,
|
|
1091
1281
|
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp()
|
|
1092
1282
|
};
|
|
1093
1283
|
this.emit(enums_1.MKPlayerEvent.ProgramTimeChanged, programTimeChangedEventData);
|
|
1094
|
-
}
|
|
1095
|
-
unloadAndEmitErrorEvent(error, unloadPlayer
|
|
1284
|
+
};
|
|
1285
|
+
MKPlayer.prototype.unloadAndEmitErrorEvent = function (error, unloadPlayer) {
|
|
1286
|
+
if (unloadPlayer === void 0) { unloadPlayer = true; }
|
|
1096
1287
|
if (unloadPlayer)
|
|
1097
1288
|
this.unload();
|
|
1098
|
-
|
|
1289
|
+
var errorEvent = {
|
|
1099
1290
|
name: error.name,
|
|
1100
1291
|
code: error.code,
|
|
1101
1292
|
message: error.message,
|
|
@@ -1104,49 +1295,54 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
1104
1295
|
};
|
|
1105
1296
|
this.emit(enums_1.MKPlayerEvent.Error, errorEvent);
|
|
1106
1297
|
return errorEvent;
|
|
1107
|
-
}
|
|
1108
|
-
emitProgramRestrictionsEvent(restrictions) {
|
|
1298
|
+
};
|
|
1299
|
+
MKPlayer.prototype.emitProgramRestrictionsEvent = function (restrictions) {
|
|
1109
1300
|
if (restrictions.length > 0) {
|
|
1110
|
-
|
|
1301
|
+
var event_1 = {
|
|
1111
1302
|
type: enums_1.MKPlayerEvent.ProgramRestrictions,
|
|
1112
1303
|
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp(),
|
|
1113
1304
|
programRestrictions: restrictions,
|
|
1114
1305
|
};
|
|
1115
|
-
this.emit(enums_1.MKPlayerEvent.ProgramRestrictions,
|
|
1306
|
+
this.emit(enums_1.MKPlayerEvent.ProgramRestrictions, event_1);
|
|
1116
1307
|
}
|
|
1117
|
-
}
|
|
1118
|
-
loadSource(sourceConfig, disableSeeking) {
|
|
1119
|
-
|
|
1120
|
-
|
|
1121
|
-
|
|
1122
|
-
|
|
1123
|
-
|
|
1124
|
-
|
|
1125
|
-
|
|
1308
|
+
};
|
|
1309
|
+
MKPlayer.prototype.loadSource = function (sourceConfig, disableSeeking) {
|
|
1310
|
+
var _this = this;
|
|
1311
|
+
this.emit(enums_1.MKPlayerEvent.SourceLoad, {
|
|
1312
|
+
type: enums_1.MKPlayerEvent.SourceLoad,
|
|
1313
|
+
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp()
|
|
1314
|
+
});
|
|
1315
|
+
return new Promise(function (resolve, reject) {
|
|
1316
|
+
_this.initializePlayer(sourceConfig)
|
|
1317
|
+
.then(function () {
|
|
1318
|
+
_this.sourceConfig = sourceConfig;
|
|
1319
|
+
if (_this.player) {
|
|
1320
|
+
if (_this.videoElement) {
|
|
1321
|
+
_this.player.setVideoElement(_this.videoElement);
|
|
1126
1322
|
}
|
|
1127
|
-
|
|
1128
|
-
|
|
1129
|
-
.then(()
|
|
1130
|
-
.catch((error)
|
|
1323
|
+
_this.player.setHttpHeaders(_this.headers);
|
|
1324
|
+
_this.player.load(_this.sourceConfig, disableSeeking)
|
|
1325
|
+
.then(function () { return resolve(); })
|
|
1326
|
+
.catch(function (error) { return reject(error); });
|
|
1131
1327
|
}
|
|
1132
1328
|
else {
|
|
1133
1329
|
return reject(new Error("Invalid player instance!"));
|
|
1134
1330
|
}
|
|
1135
1331
|
})
|
|
1136
|
-
.catch((error)
|
|
1332
|
+
.catch(function (error) {
|
|
1137
1333
|
return reject(error);
|
|
1138
1334
|
});
|
|
1139
1335
|
});
|
|
1140
|
-
}
|
|
1141
|
-
onSessionConcurrencyNotificationError(error) {
|
|
1336
|
+
};
|
|
1337
|
+
MKPlayer.prototype.onSessionConcurrencyNotificationError = function (error) {
|
|
1142
1338
|
var _a;
|
|
1143
|
-
|
|
1339
|
+
var errorCodes = [
|
|
1144
1340
|
"4-63-2430",
|
|
1145
1341
|
"4-63-3736",
|
|
1146
1342
|
"4-81-409",
|
|
1147
1343
|
];
|
|
1148
1344
|
if (errorCodes.includes(error.code)) {
|
|
1149
|
-
(_a = this.sessionManager) === null || _a === void 0 ? void 0 : _a.stopSession().catch((error)
|
|
1345
|
+
(_a = this.sessionManager) === null || _a === void 0 ? void 0 : _a.stopSession().catch(function (error) {
|
|
1150
1346
|
common_1.MKLog.warn("stopSession failed for sesison concurrency with error: ", JSON.stringify(error));
|
|
1151
1347
|
});
|
|
1152
1348
|
this.unloadAndEmitErrorEvent(error, true);
|
|
@@ -1154,7 +1350,17 @@ class MKPlayer extends common_1.MKEventBase {
|
|
|
1154
1350
|
else {
|
|
1155
1351
|
common_1.MKLog.warn("Session concurrency notification failed with error: ", JSON.stringify(error));
|
|
1156
1352
|
}
|
|
1157
|
-
}
|
|
1158
|
-
|
|
1353
|
+
};
|
|
1354
|
+
MKPlayer.prototype.sendAnalyticsDataEvent = function (name, value) {
|
|
1355
|
+
var event = {
|
|
1356
|
+
dataName: name,
|
|
1357
|
+
dataValue: value,
|
|
1358
|
+
type: enums_1.MKPlayerEvent.AnalyticsDataAvailable,
|
|
1359
|
+
timestamp: MKUtils_1.MKUtils.getCurrentTimestamp()
|
|
1360
|
+
};
|
|
1361
|
+
this.emit(enums_1.MKPlayerEvent.AnalyticsDataAvailable, event);
|
|
1362
|
+
};
|
|
1363
|
+
return MKPlayer;
|
|
1364
|
+
}(common_1.MKEventBase));
|
|
1159
1365
|
exports.MKPlayer = MKPlayer;
|
|
1160
1366
|
//# sourceMappingURL=MKPlayer.js.map
|