@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,46 +1,65 @@
|
|
|
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
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
18
|
exports.MKBitmovinPlayer = void 0;
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
19
|
+
var request_1 = require("../request");
|
|
20
|
+
var error_1 = require("../error");
|
|
21
|
+
var common_1 = require("../common");
|
|
22
|
+
var enums_1 = require("../../enums");
|
|
23
|
+
var bitmovin_player_1 = require("bitmovin-player");
|
|
24
|
+
var PlayStation4 = require("bitmovin-player/modules/bitmovinplayer-playstation4");
|
|
25
|
+
var PlayStation5 = require("bitmovin-player/modules/bitmovinplayer-playstation5");
|
|
26
|
+
var bitmovin_player_ui_1 = require("bitmovin-player-ui");
|
|
27
|
+
var MKBitmovinPlayer = exports.MKBitmovinPlayer = (function (_super) {
|
|
28
|
+
__extends(MKBitmovinPlayer, _super);
|
|
29
|
+
function MKBitmovinPlayer(videoContainer, playerConfig) {
|
|
30
|
+
var _a;
|
|
31
|
+
var _this = this;
|
|
32
|
+
var _b, _c, _d, _e, _f, _g;
|
|
33
|
+
_this = _super.call(this) || this;
|
|
34
|
+
_this.headers = null;
|
|
35
|
+
_this.headersForHlsAes = {};
|
|
36
|
+
_this.firstTimeChangedUpdate = false;
|
|
37
|
+
_this.hasPreroll = false;
|
|
38
|
+
_this.enableAdTrackingBeacons = true;
|
|
39
|
+
_this.enableSubtitleOverlay = true;
|
|
40
|
+
_this.adQuartileOffsets = [];
|
|
41
|
+
_this.adTrackingList = [];
|
|
42
|
+
_this.vsppSessionIdParsed = false;
|
|
24
43
|
if (!playerConfig.key) {
|
|
25
44
|
throw new Error("Invalid player license key.");
|
|
26
45
|
}
|
|
27
|
-
|
|
46
|
+
_this.videoContainer = videoContainer;
|
|
28
47
|
if (playerConfig.enableAdTrackingBeacons !== undefined) {
|
|
29
|
-
|
|
48
|
+
_this.enableAdTrackingBeacons = playerConfig.enableAdTrackingBeacons;
|
|
30
49
|
}
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
50
|
+
_this.playerUIEnabled = (_b = playerConfig.ui) !== null && _b !== void 0 ? _b : false;
|
|
51
|
+
_this.enableSubtitleOverlay = _this.playerUIEnabled ? false : (_c = playerConfig.enableSubtitleOverlay) !== null && _c !== void 0 ? _c : true;
|
|
52
|
+
_this.playerConfig = {
|
|
34
53
|
key: playerConfig.key,
|
|
35
54
|
ui: false,
|
|
36
55
|
logs: {
|
|
37
56
|
bitmovin: false,
|
|
38
|
-
level: (
|
|
57
|
+
level: (_e = (_d = playerConfig.log) === null || _d === void 0 ? void 0 : _d.level) !== null && _e !== void 0 ? _e : bitmovin_player_1.LogLevel.ERROR
|
|
39
58
|
},
|
|
40
59
|
analytics: typeof (playerConfig.analytics) === "object" ? playerConfig.analytics : typeof (playerConfig.analytics) === "boolean" ? playerConfig.analytics : false,
|
|
41
60
|
live: playerConfig.live,
|
|
42
|
-
buffer: (
|
|
43
|
-
playback: (
|
|
61
|
+
buffer: (_f = playerConfig.buffer) !== null && _f !== void 0 ? _f : MKBitmovinPlayer.DEFAULT_BUFFER_CONFIG,
|
|
62
|
+
playback: (_g = playerConfig.playback) !== null && _g !== void 0 ? _g : MKBitmovinPlayer.DEFAULT_PLAYBACK_CONFIG,
|
|
44
63
|
adaptation: playerConfig.adaptation,
|
|
45
64
|
remotecontrol: playerConfig.cast,
|
|
46
65
|
style: {
|
|
@@ -56,125 +75,148 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
56
75
|
parse_emsg_boxes: !playerConfig.skipEmsgBoxes
|
|
57
76
|
},
|
|
58
77
|
network: {
|
|
59
|
-
preprocessHttpRequest: ((requestType, request)
|
|
78
|
+
preprocessHttpRequest: (function (requestType, request) {
|
|
60
79
|
var _a, _b, _c, _d;
|
|
61
80
|
if (request) {
|
|
62
81
|
if (requestType === bitmovin_player_1.HttpRequestType.DRM_CERTIFICATE_FAIRPLAY || requestType === bitmovin_player_1.HttpRequestType.DRM_LICENSE_FAIRPLAY) {
|
|
63
|
-
if (((_b = (_a =
|
|
64
|
-
request.url = common_1.MKUtils.updateURLQueryParams(request.url, { "key_id":
|
|
82
|
+
if (((_b = (_a = _this.sourceConfig) === null || _a === void 0 ? void 0 : _a.drm) === null || _b === void 0 ? void 0 : _b.usingAzuki) !== false && _this.fpsContentId && ((_d = (_c = _this.sourceConfig) === null || _c === void 0 ? void 0 : _c.drm) === null || _d === void 0 ? void 0 : _d.fairplay)) {
|
|
83
|
+
request.url = common_1.MKUtils.updateURLQueryParams(request.url, { "key_id": _this.fpsContentId });
|
|
65
84
|
}
|
|
66
85
|
}
|
|
67
|
-
if (Object.keys(
|
|
86
|
+
if (Object.keys(_this.headersForHlsAes).length > 0) {
|
|
68
87
|
if (requestType === bitmovin_player_1.HttpRequestType.KEY_HLS_AES) {
|
|
69
|
-
request.headers =
|
|
88
|
+
request.headers = _this.headersForHlsAes;
|
|
70
89
|
}
|
|
71
90
|
}
|
|
72
|
-
if (
|
|
91
|
+
if (_this.headers && Object.keys(_this.headers).length > 0) {
|
|
73
92
|
if (requestType === bitmovin_player_1.HttpRequestType.MANIFEST_DASH || requestType === bitmovin_player_1.HttpRequestType.MANIFEST_HLS_MASTER || requestType === bitmovin_player_1.HttpRequestType.MANIFEST_HLS_VARIANT) {
|
|
74
|
-
request.headers =
|
|
93
|
+
request.headers = _this.headers;
|
|
75
94
|
}
|
|
76
95
|
}
|
|
77
96
|
}
|
|
78
97
|
return Promise.resolve(request);
|
|
79
|
-
})
|
|
98
|
+
}),
|
|
99
|
+
preprocessHttpResponse: (function (type, response) {
|
|
100
|
+
if (!_this.vsppSessionIdParsed && response.body &&
|
|
101
|
+
(type === bitmovin_player_1.HttpRequestType.MANIFEST_DASH || type === bitmovin_player_1.HttpRequestType.MANIFEST_HLS_MASTER)) {
|
|
102
|
+
_this.vsppSessionIdParsed = true;
|
|
103
|
+
var body = response.body.toString();
|
|
104
|
+
var context_1 = "context ";
|
|
105
|
+
var regex = new RegExp(context_1 + "\.*\\b");
|
|
106
|
+
var match = body.match(regex);
|
|
107
|
+
if (!!match) {
|
|
108
|
+
var vsppSessionId = match[0].replace(context_1, "");
|
|
109
|
+
common_1.MKLog.debug("preprocessHttpResponse - vsppSessionId: " + vsppSessionId);
|
|
110
|
+
if (vsppSessionId.length) {
|
|
111
|
+
var event_1 = {
|
|
112
|
+
vsppSessionId: vsppSessionId,
|
|
113
|
+
type: enums_1.MKPlayerEvent.VSPPSessionIdAvailable,
|
|
114
|
+
timestamp: common_1.MKUtils.getCurrentTimestamp()
|
|
115
|
+
};
|
|
116
|
+
_this.emit(enums_1.MKPlayerEvent.VSPPSessionIdAvailable, event_1);
|
|
117
|
+
}
|
|
118
|
+
}
|
|
119
|
+
}
|
|
120
|
+
return Promise.resolve(response);
|
|
121
|
+
}),
|
|
80
122
|
},
|
|
81
|
-
events: {
|
|
82
|
-
[bitmovin_player_1.PlayerEvent.AirplayAvailable]
|
|
83
|
-
|
|
123
|
+
events: (_a = {},
|
|
124
|
+
_a[bitmovin_player_1.PlayerEvent.AirplayAvailable] = function (event) {
|
|
125
|
+
_this.emit(enums_1.MKPlayerEvent.AirplayAvailable, event);
|
|
84
126
|
},
|
|
85
|
-
[bitmovin_player_1.PlayerEvent.AirplayChanged]
|
|
86
|
-
|
|
127
|
+
_a[bitmovin_player_1.PlayerEvent.AirplayChanged] = function (event) {
|
|
128
|
+
_this.emit(enums_1.MKPlayerEvent.AirplayChanged, event);
|
|
87
129
|
},
|
|
88
|
-
[bitmovin_player_1.PlayerEvent.AspectRatioChanged]
|
|
89
|
-
|
|
130
|
+
_a[bitmovin_player_1.PlayerEvent.AspectRatioChanged] = function (event) {
|
|
131
|
+
_this.emit(enums_1.MKPlayerEvent.AspectRatioChanged, event);
|
|
90
132
|
},
|
|
91
|
-
[bitmovin_player_1.PlayerEvent.AudioAdaptation]
|
|
92
|
-
|
|
133
|
+
_a[bitmovin_player_1.PlayerEvent.AudioAdaptation] = function (event) {
|
|
134
|
+
_this.emit(enums_1.MKPlayerEvent.AudioAdaptation, event);
|
|
93
135
|
},
|
|
94
|
-
[bitmovin_player_1.PlayerEvent.AudioAdded]
|
|
95
|
-
|
|
136
|
+
_a[bitmovin_player_1.PlayerEvent.AudioAdded] = function (event) {
|
|
137
|
+
_this.emit(enums_1.MKPlayerEvent.AudioAdded, event);
|
|
96
138
|
},
|
|
97
|
-
[bitmovin_player_1.PlayerEvent.AudioChanged]
|
|
98
|
-
|
|
139
|
+
_a[bitmovin_player_1.PlayerEvent.AudioChanged] = function (event) {
|
|
140
|
+
_this.emit(enums_1.MKPlayerEvent.AudioChanged, event);
|
|
99
141
|
},
|
|
100
|
-
[bitmovin_player_1.PlayerEvent.AudioDownloadQualityChange]
|
|
101
|
-
|
|
142
|
+
_a[bitmovin_player_1.PlayerEvent.AudioDownloadQualityChange] = function (event) {
|
|
143
|
+
_this.emit(enums_1.MKPlayerEvent.AudioDownloadQualityChange, event);
|
|
102
144
|
},
|
|
103
|
-
[bitmovin_player_1.PlayerEvent.AudioDownloadQualityChanged]
|
|
104
|
-
|
|
145
|
+
_a[bitmovin_player_1.PlayerEvent.AudioDownloadQualityChanged] = function (event) {
|
|
146
|
+
_this.emit(enums_1.MKPlayerEvent.AudioDownloadQualityChanged, event);
|
|
105
147
|
},
|
|
106
|
-
[bitmovin_player_1.PlayerEvent.AudioPlaybackQualityChanged]
|
|
107
|
-
|
|
148
|
+
_a[bitmovin_player_1.PlayerEvent.AudioPlaybackQualityChanged] = function (event) {
|
|
149
|
+
_this.emit(enums_1.MKPlayerEvent.AudioPlaybackQualityChanged, event);
|
|
108
150
|
},
|
|
109
|
-
[bitmovin_player_1.PlayerEvent.AudioQualityAdded]
|
|
110
|
-
|
|
151
|
+
_a[bitmovin_player_1.PlayerEvent.AudioQualityAdded] = function (event) {
|
|
152
|
+
_this.emit(enums_1.MKPlayerEvent.AudioQualityAdded, event);
|
|
111
153
|
},
|
|
112
|
-
[bitmovin_player_1.PlayerEvent.AudioQualityChanged]
|
|
113
|
-
|
|
154
|
+
_a[bitmovin_player_1.PlayerEvent.AudioQualityChanged] = function (event) {
|
|
155
|
+
_this.emit(enums_1.MKPlayerEvent.AudioQualityChanged, event);
|
|
114
156
|
},
|
|
115
|
-
[bitmovin_player_1.PlayerEvent.AudioQualityRemoved]
|
|
116
|
-
|
|
157
|
+
_a[bitmovin_player_1.PlayerEvent.AudioQualityRemoved] = function (event) {
|
|
158
|
+
_this.emit(enums_1.MKPlayerEvent.AudioQualityRemoved, event);
|
|
117
159
|
},
|
|
118
|
-
[bitmovin_player_1.PlayerEvent.AudioRemoved]
|
|
119
|
-
|
|
160
|
+
_a[bitmovin_player_1.PlayerEvent.AudioRemoved] = function (event) {
|
|
161
|
+
_this.emit(enums_1.MKPlayerEvent.AudioRemoved, event);
|
|
120
162
|
},
|
|
121
|
-
[bitmovin_player_1.PlayerEvent.CastAvailable]
|
|
122
|
-
|
|
163
|
+
_a[bitmovin_player_1.PlayerEvent.CastAvailable] = function (event) {
|
|
164
|
+
_this.emit(enums_1.MKPlayerEvent.CastAvailable, event);
|
|
123
165
|
},
|
|
124
|
-
[bitmovin_player_1.PlayerEvent.CastStart]
|
|
125
|
-
|
|
166
|
+
_a[bitmovin_player_1.PlayerEvent.CastStart] = function (event) {
|
|
167
|
+
_this.emit(enums_1.MKPlayerEvent.CastStart, event);
|
|
126
168
|
},
|
|
127
|
-
[bitmovin_player_1.PlayerEvent.CastStarted]
|
|
128
|
-
|
|
169
|
+
_a[bitmovin_player_1.PlayerEvent.CastStarted] = function (event) {
|
|
170
|
+
_this.emit(enums_1.MKPlayerEvent.CastStarted, event);
|
|
129
171
|
},
|
|
130
|
-
[bitmovin_player_1.PlayerEvent.CastStopped]
|
|
131
|
-
|
|
172
|
+
_a[bitmovin_player_1.PlayerEvent.CastStopped] = function (event) {
|
|
173
|
+
_this.emit(enums_1.MKPlayerEvent.CastStopped, event);
|
|
132
174
|
},
|
|
133
|
-
[bitmovin_player_1.PlayerEvent.CastWaitingForDevice]
|
|
134
|
-
|
|
175
|
+
_a[bitmovin_player_1.PlayerEvent.CastWaitingForDevice] = function (event) {
|
|
176
|
+
_this.emit(enums_1.MKPlayerEvent.CastWaitingForDevice, event);
|
|
135
177
|
},
|
|
136
|
-
[bitmovin_player_1.PlayerEvent.DVRWindowExceeded]
|
|
137
|
-
|
|
178
|
+
_a[bitmovin_player_1.PlayerEvent.DVRWindowExceeded] = function (event) {
|
|
179
|
+
_this.emit(enums_1.MKPlayerEvent.DVRWindowExceeded, event);
|
|
138
180
|
},
|
|
139
|
-
[bitmovin_player_1.PlayerEvent.Destroy]
|
|
140
|
-
|
|
181
|
+
_a[bitmovin_player_1.PlayerEvent.Destroy] = function (event) {
|
|
182
|
+
_this.emit(enums_1.MKPlayerEvent.Destroy, event);
|
|
141
183
|
},
|
|
142
|
-
[bitmovin_player_1.PlayerEvent.DownloadFinished]
|
|
143
|
-
|
|
184
|
+
_a[bitmovin_player_1.PlayerEvent.DownloadFinished] = function (event) {
|
|
185
|
+
_this.emit(enums_1.MKPlayerEvent.DownloadFinished, event);
|
|
144
186
|
},
|
|
145
|
-
[bitmovin_player_1.PlayerEvent.DrmLicenseAdded]
|
|
146
|
-
|
|
187
|
+
_a[bitmovin_player_1.PlayerEvent.DrmLicenseAdded] = function (event) {
|
|
188
|
+
_this.emit(enums_1.MKPlayerEvent.DrmLicenseAdded, event);
|
|
147
189
|
},
|
|
148
|
-
[bitmovin_player_1.PlayerEvent.DurationChanged]
|
|
149
|
-
|
|
190
|
+
_a[bitmovin_player_1.PlayerEvent.DurationChanged] = function (event) {
|
|
191
|
+
_this.emit(enums_1.MKPlayerEvent.DurationChanged, event);
|
|
150
192
|
},
|
|
151
|
-
[bitmovin_player_1.PlayerEvent.Error]
|
|
152
|
-
|
|
153
|
-
|
|
193
|
+
_a[bitmovin_player_1.PlayerEvent.Error] = function (event) {
|
|
194
|
+
var mkerror = new error_1.MKBitmovinPlayerError(event);
|
|
195
|
+
var mkerrorEvent = {
|
|
154
196
|
timestamp: event.timestamp,
|
|
155
197
|
type: enums_1.MKPlayerEvent.Error,
|
|
156
198
|
name: mkerror.name,
|
|
157
199
|
code: mkerror.code,
|
|
158
200
|
message: mkerror.message
|
|
159
201
|
};
|
|
160
|
-
|
|
202
|
+
_this.emit(enums_1.MKPlayerEvent.Error, mkerrorEvent);
|
|
161
203
|
},
|
|
162
|
-
[bitmovin_player_1.PlayerEvent.LatencyModeChanged]
|
|
163
|
-
|
|
204
|
+
_a[bitmovin_player_1.PlayerEvent.LatencyModeChanged] = function (event) {
|
|
205
|
+
_this.emit(enums_1.MKPlayerEvent.LatencyModeChanged, event);
|
|
164
206
|
},
|
|
165
|
-
[bitmovin_player_1.PlayerEvent.Metadata]
|
|
207
|
+
_a[bitmovin_player_1.PlayerEvent.Metadata] = function (event) {
|
|
166
208
|
var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
|
|
167
|
-
|
|
168
|
-
|
|
209
|
+
var metadataEvent = event;
|
|
210
|
+
_this.emit(enums_1.MKPlayerEvent.Metadata, metadataEvent);
|
|
169
211
|
if (metadataEvent.metadataType === enums_1.MKMetadataType.DATERANGE) {
|
|
170
|
-
|
|
212
|
+
var metadata = metadataEvent.metadata;
|
|
171
213
|
if ((metadata.class === "AD-BREAK" || metadata.class === "AD" || metadata.class === "ANALYTICS") &&
|
|
172
214
|
(metadata.clientAttributes && Object.keys(metadata.clientAttributes).length > 0)) {
|
|
173
215
|
if (metadata.class === "AD-BREAK") {
|
|
174
|
-
|
|
175
|
-
|
|
176
|
-
|
|
177
|
-
|
|
216
|
+
_this.adQuartileOffsets = [];
|
|
217
|
+
_this.adStartedEvent = undefined;
|
|
218
|
+
_this.adBreakStartedEvent = undefined;
|
|
219
|
+
_this.adBreakStartedEvent = {
|
|
178
220
|
id: (_a = metadata.id.replace("-start", "")) !== null && _a !== void 0 ? _a : "",
|
|
179
221
|
adType: metadata.clientAttributes.adType === "pre-roll" ? enums_1.MKAdType.Preroll : metadata.clientAttributes.adType === "mid-roll" ? enums_1.MKAdType.Midroll : metadata.clientAttributes.adType === "post-roll" ? enums_1.MKAdType.Postroll : enums_1.MKAdType.Unknown,
|
|
180
222
|
adsCount: (_c = (_b = metadata.clientAttributes.adsCount) !== null && _b !== void 0 ? _b : metadata.clientAttributes.adIndex.split(":")[1]) !== null && _c !== void 0 ? _c : 0,
|
|
@@ -186,21 +228,21 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
186
228
|
timestamp: event.timestamp,
|
|
187
229
|
type: enums_1.MKPlayerEvent.AdBreakStarted
|
|
188
230
|
};
|
|
189
|
-
|
|
231
|
+
_this.emit(enums_1.MKPlayerEvent.AdBreakStarted, _this.adBreakStartedEvent);
|
|
190
232
|
}
|
|
191
|
-
if (
|
|
233
|
+
if (_this.adBreakStartedEvent) {
|
|
192
234
|
if (metadata.class === "AD") {
|
|
193
|
-
if (
|
|
194
|
-
|
|
195
|
-
id:
|
|
235
|
+
if (_this.adStartedEvent) {
|
|
236
|
+
var adFinishedEvent = {
|
|
237
|
+
id: _this.adStartedEvent.id,
|
|
196
238
|
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
197
239
|
type: enums_1.MKPlayerEvent.AdFinished
|
|
198
240
|
};
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
241
|
+
_this.emit(enums_1.MKPlayerEvent.AdFinished, adFinishedEvent);
|
|
242
|
+
_this.adStartedEvent = undefined;
|
|
243
|
+
_this.adQuartileOffsets = [];
|
|
202
244
|
}
|
|
203
|
-
|
|
245
|
+
_this.adStartedEvent = {
|
|
204
246
|
id: (_h = (_g = metadata.clientAttributes.adId) !== null && _g !== void 0 ? _g : metadata.id) !== null && _h !== void 0 ? _h : "",
|
|
205
247
|
adIndex: (_j = metadata.clientAttributes.adIndex.split(":")[0]) !== null && _j !== void 0 ? _j : "",
|
|
206
248
|
title: metadata.clientAttributes.adTitle,
|
|
@@ -215,60 +257,60 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
215
257
|
timestamp: event.timestamp,
|
|
216
258
|
type: enums_1.MKPlayerEvent.AdStarted
|
|
217
259
|
};
|
|
218
|
-
|
|
260
|
+
var companionAdsData = _this.processCompanionAds(metadata.clientAttributes.companionAds);
|
|
219
261
|
if (companionAdsData) {
|
|
220
|
-
|
|
221
|
-
id:
|
|
262
|
+
var companionAdEvent = {
|
|
263
|
+
id: _this.adStartedEvent.id,
|
|
222
264
|
companionAd: companionAdsData,
|
|
223
265
|
timestamp: event.timestamp,
|
|
224
266
|
type: enums_1.MKPlayerEvent.AdCompanion
|
|
225
267
|
};
|
|
226
|
-
|
|
268
|
+
_this.emit(enums_1.MKPlayerEvent.AdCompanion, companionAdEvent);
|
|
227
269
|
}
|
|
228
|
-
|
|
229
|
-
|
|
270
|
+
_this.adQuartileOffsets = _this.getAdQuartileOffsets(_this.adStartedEvent.offset, _this.adStartedEvent.duration);
|
|
271
|
+
_this.emit(enums_1.MKPlayerEvent.AdStarted, _this.adStartedEvent);
|
|
230
272
|
}
|
|
231
|
-
if (metadata.class === "ANALYTICS" &&
|
|
232
|
-
|
|
233
|
-
id:
|
|
273
|
+
if (metadata.class === "ANALYTICS" && _this.adStartedEvent) {
|
|
274
|
+
var adClickThroughEvent = {
|
|
275
|
+
id: _this.adStartedEvent.id,
|
|
234
276
|
adClick: metadata.clientAttributes.adClick,
|
|
235
277
|
adClickTracking: metadata.clientAttributes.adClickTracking,
|
|
236
278
|
timestamp: event.timestamp,
|
|
237
279
|
type: enums_1.MKPlayerEvent.AdClickThrough
|
|
238
280
|
};
|
|
239
|
-
|
|
240
|
-
if (
|
|
241
|
-
|
|
281
|
+
_this.emit(enums_1.MKPlayerEvent.AdClickThrough, adClickThroughEvent);
|
|
282
|
+
if (_this.enableAdTrackingBeacons) {
|
|
283
|
+
_this.updateAdTrackingList(metadata.clientAttributes.adUrls);
|
|
242
284
|
}
|
|
243
|
-
|
|
285
|
+
var adVerificationData = _this.getAdVerificationData(metadata.clientAttributes);
|
|
244
286
|
if (adVerificationData) {
|
|
245
|
-
|
|
246
|
-
id:
|
|
287
|
+
var adVerificationEventData = {
|
|
288
|
+
id: _this.adStartedEvent.id,
|
|
247
289
|
adVerification: adVerificationData,
|
|
248
290
|
timestamp: event.timestamp,
|
|
249
291
|
type: enums_1.MKPlayerEvent.AdVerification
|
|
250
292
|
};
|
|
251
|
-
|
|
293
|
+
_this.emit(enums_1.MKPlayerEvent.AdVerification, adVerificationEventData);
|
|
252
294
|
}
|
|
253
295
|
}
|
|
254
296
|
}
|
|
255
297
|
}
|
|
256
298
|
}
|
|
257
299
|
},
|
|
258
|
-
[bitmovin_player_1.PlayerEvent.MetadataChanged]
|
|
259
|
-
|
|
300
|
+
_a[bitmovin_player_1.PlayerEvent.MetadataChanged] = function (event) {
|
|
301
|
+
_this.emit(enums_1.MKPlayerEvent.MetadataChanged, event);
|
|
260
302
|
},
|
|
261
|
-
[bitmovin_player_1.PlayerEvent.MetadataParsed]
|
|
303
|
+
_a[bitmovin_player_1.PlayerEvent.MetadataParsed] = function (event) {
|
|
262
304
|
var _a, _b;
|
|
263
|
-
|
|
305
|
+
var metadataParsedEvent = event;
|
|
264
306
|
if (metadataParsedEvent.metadataType === enums_1.MKMetadataType.DATERANGE &&
|
|
265
307
|
"class" in metadataParsedEvent.metadata && metadataParsedEvent.metadata.class === "AD-BREAK" &&
|
|
266
308
|
"clientAttributes" in metadataParsedEvent.metadata && metadataParsedEvent.metadata.clientAttributes) {
|
|
267
|
-
|
|
309
|
+
var clientAttributes = metadataParsedEvent.metadata.clientAttributes;
|
|
268
310
|
if ("adType" in clientAttributes && "adsCount" in clientAttributes) {
|
|
269
311
|
if (clientAttributes.adType === "pre-roll")
|
|
270
|
-
|
|
271
|
-
|
|
312
|
+
_this.hasPreroll = true;
|
|
313
|
+
var adMarkerEvent = {
|
|
272
314
|
adMarker: {
|
|
273
315
|
start: (_a = metadataParsedEvent.start) !== null && _a !== void 0 ? _a : 0,
|
|
274
316
|
end: (_b = metadataParsedEvent.end) !== null && _b !== void 0 ? _b : 0
|
|
@@ -276,124 +318,124 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
276
318
|
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
277
319
|
type: enums_1.MKPlayerEvent.AdMarker
|
|
278
320
|
};
|
|
279
|
-
|
|
321
|
+
_this.emit(enums_1.MKPlayerEvent.AdMarker, adMarkerEvent);
|
|
280
322
|
}
|
|
281
323
|
}
|
|
282
|
-
|
|
324
|
+
_this.emit(enums_1.MKPlayerEvent.MetadataParsed, metadataParsedEvent);
|
|
283
325
|
},
|
|
284
|
-
[bitmovin_player_1.PlayerEvent.Muted]
|
|
285
|
-
|
|
326
|
+
_a[bitmovin_player_1.PlayerEvent.Muted] = function (event) {
|
|
327
|
+
_this.emit(enums_1.MKPlayerEvent.Muted, event);
|
|
286
328
|
},
|
|
287
|
-
[bitmovin_player_1.PlayerEvent.Paused]
|
|
288
|
-
|
|
329
|
+
_a[bitmovin_player_1.PlayerEvent.Paused] = function (event) {
|
|
330
|
+
_this.emit(enums_1.MKPlayerEvent.Paused, event);
|
|
289
331
|
},
|
|
290
|
-
[bitmovin_player_1.PlayerEvent.PeriodSwitch]
|
|
291
|
-
|
|
332
|
+
_a[bitmovin_player_1.PlayerEvent.PeriodSwitch] = function (event) {
|
|
333
|
+
_this.emit(enums_1.MKPlayerEvent.PeriodSwitch, event);
|
|
292
334
|
},
|
|
293
|
-
[bitmovin_player_1.PlayerEvent.PeriodSwitched]
|
|
294
|
-
|
|
335
|
+
_a[bitmovin_player_1.PlayerEvent.PeriodSwitched] = function (event) {
|
|
336
|
+
_this.emit(enums_1.MKPlayerEvent.PeriodSwitched, event);
|
|
295
337
|
},
|
|
296
|
-
[bitmovin_player_1.PlayerEvent.Play]
|
|
297
|
-
|
|
338
|
+
_a[bitmovin_player_1.PlayerEvent.Play] = function (event) {
|
|
339
|
+
_this.emit(enums_1.MKPlayerEvent.Play, event);
|
|
298
340
|
},
|
|
299
|
-
[bitmovin_player_1.PlayerEvent.PlaybackFinished]
|
|
341
|
+
_a[bitmovin_player_1.PlayerEvent.PlaybackFinished] = function (event) {
|
|
300
342
|
var _a;
|
|
301
|
-
(_a =
|
|
302
|
-
|
|
343
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
344
|
+
_this.emit(enums_1.MKPlayerEvent.PlaybackFinished, event);
|
|
303
345
|
},
|
|
304
|
-
[bitmovin_player_1.PlayerEvent.PlaybackSpeedChanged]
|
|
305
|
-
|
|
346
|
+
_a[bitmovin_player_1.PlayerEvent.PlaybackSpeedChanged] = function (event) {
|
|
347
|
+
_this.emit(enums_1.MKPlayerEvent.PlaybackSpeedChanged, event);
|
|
306
348
|
},
|
|
307
|
-
[bitmovin_player_1.PlayerEvent.PlayerResized]
|
|
349
|
+
_a[bitmovin_player_1.PlayerEvent.PlayerResized] = function (event) {
|
|
308
350
|
var _a;
|
|
309
|
-
(_a =
|
|
310
|
-
|
|
351
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.updateFontSize();
|
|
352
|
+
_this.emit(enums_1.MKPlayerEvent.PlayerResized, event);
|
|
311
353
|
},
|
|
312
|
-
[bitmovin_player_1.PlayerEvent.Playing]
|
|
313
|
-
|
|
354
|
+
_a[bitmovin_player_1.PlayerEvent.Playing] = function (event) {
|
|
355
|
+
_this.emit(enums_1.MKPlayerEvent.Playing, event);
|
|
314
356
|
},
|
|
315
|
-
[bitmovin_player_1.PlayerEvent.Ready]
|
|
316
|
-
|
|
357
|
+
_a[bitmovin_player_1.PlayerEvent.Ready] = function (event) {
|
|
358
|
+
_this.emit(enums_1.MKPlayerEvent.Ready, event);
|
|
317
359
|
},
|
|
318
|
-
[bitmovin_player_1.PlayerEvent.Seek]
|
|
360
|
+
_a[bitmovin_player_1.PlayerEvent.Seek] = function (event) {
|
|
319
361
|
var _a;
|
|
320
|
-
(_a =
|
|
321
|
-
|
|
362
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
363
|
+
_this.emit(enums_1.MKPlayerEvent.Seek, event);
|
|
322
364
|
},
|
|
323
|
-
[bitmovin_player_1.PlayerEvent.Seeked]
|
|
324
|
-
|
|
325
|
-
|
|
365
|
+
_a[bitmovin_player_1.PlayerEvent.Seeked] = function (event) {
|
|
366
|
+
_this.emit(enums_1.MKPlayerEvent.Seeked, event);
|
|
367
|
+
_this.playStart = undefined;
|
|
326
368
|
},
|
|
327
|
-
[bitmovin_player_1.PlayerEvent.SegmentPlayback]
|
|
328
|
-
|
|
369
|
+
_a[bitmovin_player_1.PlayerEvent.SegmentPlayback] = function (event) {
|
|
370
|
+
_this.emit(enums_1.MKPlayerEvent.SegmentPlayback, event);
|
|
329
371
|
},
|
|
330
|
-
[bitmovin_player_1.PlayerEvent.SegmentRequestFinished]
|
|
331
|
-
|
|
372
|
+
_a[bitmovin_player_1.PlayerEvent.SegmentRequestFinished] = function (event) {
|
|
373
|
+
_this.emit(enums_1.MKPlayerEvent.SegmentRequestFinished, event);
|
|
332
374
|
},
|
|
333
|
-
[bitmovin_player_1.PlayerEvent.TimeShift]
|
|
375
|
+
_a[bitmovin_player_1.PlayerEvent.TimeShift] = function (event) {
|
|
334
376
|
var _a;
|
|
335
|
-
(_a =
|
|
336
|
-
|
|
377
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
378
|
+
_this.emit(enums_1.MKPlayerEvent.Seek, event);
|
|
337
379
|
},
|
|
338
|
-
[bitmovin_player_1.PlayerEvent.TimeShifted]
|
|
339
|
-
|
|
340
|
-
|
|
380
|
+
_a[bitmovin_player_1.PlayerEvent.TimeShifted] = function (event) {
|
|
381
|
+
_this.emit(enums_1.MKPlayerEvent.Seeked, event);
|
|
382
|
+
_this.playStart = undefined;
|
|
341
383
|
},
|
|
342
|
-
[bitmovin_player_1.PlayerEvent.ShowAirplayTargetPicker]
|
|
343
|
-
|
|
384
|
+
_a[bitmovin_player_1.PlayerEvent.ShowAirplayTargetPicker] = function (event) {
|
|
385
|
+
_this.emit(enums_1.MKPlayerEvent.ShowAirplayTargetPicker, event);
|
|
344
386
|
},
|
|
345
|
-
[bitmovin_player_1.PlayerEvent.SourceLoaded]
|
|
387
|
+
_a[bitmovin_player_1.PlayerEvent.SourceLoaded] = function (event) {
|
|
346
388
|
var _a;
|
|
347
|
-
if (
|
|
348
|
-
(_a =
|
|
349
|
-
|
|
389
|
+
if (_this.playerUIEnabled) {
|
|
390
|
+
(_a = _this.playerUI) === null || _a === void 0 ? void 0 : _a.release();
|
|
391
|
+
_this.playerUI = bitmovin_player_ui_1.UIFactory.buildDefaultSmallScreenUI(_this.player);
|
|
350
392
|
}
|
|
351
|
-
|
|
352
|
-
if (
|
|
393
|
+
var videoElement = _this.getVideoElement();
|
|
394
|
+
if (_this.enableSubtitleOverlay && !_this.subtitleOverlay && videoElement) {
|
|
353
395
|
try {
|
|
354
|
-
|
|
396
|
+
_this.subtitleOverlay = new common_1.MKSubtitleOverlay(videoElement);
|
|
355
397
|
}
|
|
356
398
|
catch (error) {
|
|
357
399
|
common_1.MKLog.error(error);
|
|
358
400
|
}
|
|
359
401
|
}
|
|
360
|
-
|
|
402
|
+
_this.emit(enums_1.MKPlayerEvent.SourceLoaded, event);
|
|
361
403
|
},
|
|
362
|
-
[bitmovin_player_1.PlayerEvent.SourceUnloaded]
|
|
363
|
-
|
|
404
|
+
_a[bitmovin_player_1.PlayerEvent.SourceUnloaded] = function (event) {
|
|
405
|
+
_this.emit(enums_1.MKPlayerEvent.SourceUnloaded, event);
|
|
364
406
|
},
|
|
365
|
-
[bitmovin_player_1.PlayerEvent.StallEnded]
|
|
366
|
-
|
|
407
|
+
_a[bitmovin_player_1.PlayerEvent.StallEnded] = function (event) {
|
|
408
|
+
_this.emit(enums_1.MKPlayerEvent.StallEnded, event);
|
|
367
409
|
},
|
|
368
|
-
[bitmovin_player_1.PlayerEvent.StallStarted]
|
|
410
|
+
_a[bitmovin_player_1.PlayerEvent.StallStarted] = function (event) {
|
|
369
411
|
var _a;
|
|
370
|
-
(_a =
|
|
371
|
-
|
|
412
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
413
|
+
_this.emit(enums_1.MKPlayerEvent.StallStarted, event);
|
|
372
414
|
},
|
|
373
|
-
[bitmovin_player_1.PlayerEvent.SubtitleAdded]
|
|
374
|
-
|
|
415
|
+
_a[bitmovin_player_1.PlayerEvent.SubtitleAdded] = function (event) {
|
|
416
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleAdded, event);
|
|
375
417
|
},
|
|
376
|
-
[bitmovin_player_1.PlayerEvent.SubtitleDisable]
|
|
377
|
-
|
|
418
|
+
_a[bitmovin_player_1.PlayerEvent.SubtitleDisable] = function (event) {
|
|
419
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleDisable, event);
|
|
378
420
|
},
|
|
379
|
-
[bitmovin_player_1.PlayerEvent.SubtitleDisabled]
|
|
421
|
+
_a[bitmovin_player_1.PlayerEvent.SubtitleDisabled] = function (event) {
|
|
380
422
|
var _a;
|
|
381
|
-
(_a =
|
|
382
|
-
|
|
423
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.disable();
|
|
424
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleDisabled, event);
|
|
383
425
|
},
|
|
384
|
-
[bitmovin_player_1.PlayerEvent.SubtitleEnable]
|
|
385
|
-
|
|
426
|
+
_a[bitmovin_player_1.PlayerEvent.SubtitleEnable] = function (event) {
|
|
427
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleEnable, event);
|
|
386
428
|
},
|
|
387
|
-
[bitmovin_player_1.PlayerEvent.SubtitleEnabled]
|
|
429
|
+
_a[bitmovin_player_1.PlayerEvent.SubtitleEnabled] = function (event) {
|
|
388
430
|
var _a;
|
|
389
|
-
(_a =
|
|
390
|
-
|
|
431
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.enable();
|
|
432
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleEnabled, event);
|
|
391
433
|
},
|
|
392
|
-
[bitmovin_player_1.PlayerEvent.CueEnter]
|
|
434
|
+
_a[bitmovin_player_1.PlayerEvent.CueEnter] = function (event) {
|
|
393
435
|
var _a;
|
|
394
|
-
|
|
395
|
-
|
|
396
|
-
|
|
436
|
+
var cueEnterEvent = event;
|
|
437
|
+
_this.emit(enums_1.MKPlayerEvent.CueEnter, cueEnterEvent);
|
|
438
|
+
var subtitleCue = {
|
|
397
439
|
end: cueEnterEvent.end,
|
|
398
440
|
html: cueEnterEvent.html,
|
|
399
441
|
image: cueEnterEvent.image,
|
|
@@ -404,110 +446,125 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
404
446
|
subtitleId: cueEnterEvent.subtitleId,
|
|
405
447
|
text: cueEnterEvent.text
|
|
406
448
|
};
|
|
407
|
-
(_a =
|
|
449
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.show(subtitleCue);
|
|
408
450
|
},
|
|
409
|
-
[bitmovin_player_1.PlayerEvent.CueExit]
|
|
451
|
+
_a[bitmovin_player_1.PlayerEvent.CueExit] = function (event) {
|
|
410
452
|
var _a;
|
|
411
|
-
|
|
412
|
-
(_a =
|
|
453
|
+
_this.emit(enums_1.MKPlayerEvent.CueExit, event);
|
|
454
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
413
455
|
},
|
|
414
|
-
[bitmovin_player_1.PlayerEvent.CueParsed]
|
|
415
|
-
|
|
456
|
+
_a[bitmovin_player_1.PlayerEvent.CueParsed] = function (event) {
|
|
457
|
+
_this.emit(enums_1.MKPlayerEvent.CueParsed, event);
|
|
416
458
|
},
|
|
417
|
-
[bitmovin_player_1.PlayerEvent.CueUpdate]
|
|
418
|
-
|
|
459
|
+
_a[bitmovin_player_1.PlayerEvent.CueUpdate] = function (event) {
|
|
460
|
+
_this.emit(enums_1.MKPlayerEvent.CueUpdate, event);
|
|
419
461
|
},
|
|
420
|
-
[bitmovin_player_1.PlayerEvent.SubtitleRemoved]
|
|
462
|
+
_a[bitmovin_player_1.PlayerEvent.SubtitleRemoved] = function (event) {
|
|
421
463
|
var _a;
|
|
422
|
-
(_a =
|
|
423
|
-
|
|
424
|
-
},
|
|
425
|
-
[bitmovin_player_1.PlayerEvent.TargetLatencyChanged]
|
|
426
|
-
|
|
427
|
-
},
|
|
428
|
-
[bitmovin_player_1.PlayerEvent.TimeChanged]
|
|
429
|
-
|
|
430
|
-
|
|
431
|
-
|
|
432
|
-
if (
|
|
433
|
-
|
|
464
|
+
(_a = _this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.hide();
|
|
465
|
+
_this.emit(enums_1.MKPlayerEvent.SubtitleRemoved, event);
|
|
466
|
+
},
|
|
467
|
+
_a[bitmovin_player_1.PlayerEvent.TargetLatencyChanged] = function (event) {
|
|
468
|
+
_this.emit(enums_1.MKPlayerEvent.TargetLatencyChanged, event);
|
|
469
|
+
},
|
|
470
|
+
_a[bitmovin_player_1.PlayerEvent.TimeChanged] = function (event) {
|
|
471
|
+
var timeChangedEventdata = event;
|
|
472
|
+
_this.emit(enums_1.MKPlayerEvent.TimeChanged, timeChangedEventdata);
|
|
473
|
+
_this.emitAdEvents(timeChangedEventdata.time);
|
|
474
|
+
if (_this.enableAdTrackingBeacons) {
|
|
475
|
+
_this.notifyAdTracking(timeChangedEventdata.time);
|
|
434
476
|
}
|
|
435
|
-
if (!
|
|
436
|
-
|
|
437
|
-
if (
|
|
438
|
-
if (
|
|
439
|
-
if (
|
|
477
|
+
if (!_this.firstTimeChangedUpdate) {
|
|
478
|
+
_this.firstTimeChangedUpdate = true;
|
|
479
|
+
if (_this.sourceConfig && !_this.hasPreroll && _this.playStart !== undefined) {
|
|
480
|
+
if (_this.sourceConfig.assetType === enums_1.MKAssetType.Live || _this.sourceConfig.assetType === enums_1.MKAssetType.Event) {
|
|
481
|
+
if (_this.playStart === 1) {
|
|
440
482
|
common_1.MKLog.debug("Will seek to live edge!");
|
|
441
|
-
|
|
483
|
+
_this.seekToLiveEdge();
|
|
442
484
|
}
|
|
443
485
|
else {
|
|
444
|
-
common_1.MKLog.debug(
|
|
445
|
-
|
|
486
|
+
common_1.MKLog.debug("Will seek to offset ".concat(_this.playStart));
|
|
487
|
+
_this.seek(_this.playStart);
|
|
446
488
|
}
|
|
447
489
|
}
|
|
448
490
|
else {
|
|
449
|
-
common_1.MKLog.debug(
|
|
450
|
-
|
|
491
|
+
common_1.MKLog.debug("Will seek to offset ".concat(_this.playStart));
|
|
492
|
+
_this.seek(_this.playStart);
|
|
451
493
|
}
|
|
452
494
|
}
|
|
453
495
|
}
|
|
454
496
|
},
|
|
455
|
-
[bitmovin_player_1.PlayerEvent.Unmuted]
|
|
456
|
-
|
|
497
|
+
_a[bitmovin_player_1.PlayerEvent.Unmuted] = function (event) {
|
|
498
|
+
_this.emit(enums_1.MKPlayerEvent.Unmuted, event);
|
|
457
499
|
},
|
|
458
|
-
[bitmovin_player_1.PlayerEvent.VideoAdaptation]
|
|
459
|
-
|
|
500
|
+
_a[bitmovin_player_1.PlayerEvent.VideoAdaptation] = function (event) {
|
|
501
|
+
_this.emit(enums_1.MKPlayerEvent.VideoAdaptation, event);
|
|
460
502
|
},
|
|
461
|
-
[bitmovin_player_1.PlayerEvent.VideoDownloadQualityChange]
|
|
462
|
-
|
|
503
|
+
_a[bitmovin_player_1.PlayerEvent.VideoDownloadQualityChange] = function (event) {
|
|
504
|
+
_this.emit(enums_1.MKPlayerEvent.VideoDownloadQualityChange, event);
|
|
463
505
|
},
|
|
464
|
-
[bitmovin_player_1.PlayerEvent.VideoDownloadQualityChanged]
|
|
465
|
-
|
|
506
|
+
_a[bitmovin_player_1.PlayerEvent.VideoDownloadQualityChanged] = function (event) {
|
|
507
|
+
_this.emit(enums_1.MKPlayerEvent.VideoDownloadQualityChanged, event);
|
|
466
508
|
},
|
|
467
|
-
[bitmovin_player_1.PlayerEvent.VideoPlaybackQualityChanged]
|
|
468
|
-
|
|
509
|
+
_a[bitmovin_player_1.PlayerEvent.VideoPlaybackQualityChanged] = function (event) {
|
|
510
|
+
_this.emit(enums_1.MKPlayerEvent.VideoPlaybackQualityChanged, event);
|
|
469
511
|
},
|
|
470
|
-
[bitmovin_player_1.PlayerEvent.VideoQualityAdded]
|
|
471
|
-
|
|
512
|
+
_a[bitmovin_player_1.PlayerEvent.VideoQualityAdded] = function (event) {
|
|
513
|
+
_this.emit(enums_1.MKPlayerEvent.VideoQualityAdded, event);
|
|
472
514
|
},
|
|
473
|
-
[bitmovin_player_1.PlayerEvent.VideoQualityChanged]
|
|
474
|
-
|
|
515
|
+
_a[bitmovin_player_1.PlayerEvent.VideoQualityChanged] = function (event) {
|
|
516
|
+
_this.emit(enums_1.MKPlayerEvent.VideoQualityChanged, event);
|
|
475
517
|
},
|
|
476
|
-
[bitmovin_player_1.PlayerEvent.VideoQualityRemoved]
|
|
477
|
-
|
|
518
|
+
_a[bitmovin_player_1.PlayerEvent.VideoQualityRemoved] = function (event) {
|
|
519
|
+
_this.emit(enums_1.MKPlayerEvent.VideoQualityRemoved, event);
|
|
478
520
|
},
|
|
479
|
-
[bitmovin_player_1.PlayerEvent.ViewModeChanged]
|
|
480
|
-
|
|
521
|
+
_a[bitmovin_player_1.PlayerEvent.ViewModeChanged] = function (event) {
|
|
522
|
+
_this.emit(enums_1.MKPlayerEvent.ViewModeChanged, event);
|
|
481
523
|
},
|
|
482
|
-
[bitmovin_player_1.PlayerEvent.VolumeChanged]
|
|
483
|
-
|
|
524
|
+
_a[bitmovin_player_1.PlayerEvent.VolumeChanged] = function (event) {
|
|
525
|
+
_this.emit(enums_1.MKPlayerEvent.VolumeChanged, event);
|
|
484
526
|
},
|
|
485
|
-
[bitmovin_player_1.PlayerEvent.Warning]
|
|
527
|
+
_a[bitmovin_player_1.PlayerEvent.Warning] = function (event) {
|
|
486
528
|
if ("code" in event && event.code === 1401) {
|
|
487
|
-
|
|
488
|
-
|
|
529
|
+
var mkerror = new error_1.MKBitmovinPlayerError(event);
|
|
530
|
+
var mkerrorEvent = {
|
|
489
531
|
timestamp: event.timestamp,
|
|
490
532
|
type: enums_1.MKPlayerEvent.Error,
|
|
491
533
|
name: mkerror.name,
|
|
492
534
|
code: mkerror.code,
|
|
493
535
|
message: mkerror.message
|
|
494
536
|
};
|
|
495
|
-
|
|
537
|
+
_this.emit(enums_1.MKPlayerEvent.Error, mkerrorEvent);
|
|
496
538
|
}
|
|
497
539
|
else {
|
|
498
540
|
common_1.MKLog.warn(JSON.stringify(event, null, 4));
|
|
499
541
|
}
|
|
500
|
-
}
|
|
501
|
-
|
|
542
|
+
},
|
|
543
|
+
_a)
|
|
502
544
|
};
|
|
503
|
-
if (
|
|
545
|
+
if (_this.playerConfig.tweaks) {
|
|
504
546
|
if (common_1.MKPlatform.isPlayStation5()) {
|
|
505
|
-
|
|
547
|
+
bitmovin_player_1.Player.addModule(PlayStation5.default);
|
|
548
|
+
Object.assign(_this.playerConfig.tweaks, {
|
|
506
549
|
playstation_5: { playmode: '2K' }
|
|
507
550
|
});
|
|
508
551
|
}
|
|
552
|
+
if (common_1.MKPlatform.isPlayStation4()) {
|
|
553
|
+
bitmovin_player_1.Player.addModule(PlayStation4.default);
|
|
554
|
+
_this.playerConfig.tweaks["HLS_PARSE_MANIFEST_IN_WORKER"] = true;
|
|
555
|
+
}
|
|
509
556
|
if (common_1.MKPlatform.isComcastX1()) {
|
|
510
|
-
|
|
557
|
+
if (_this.playerConfig.playback) {
|
|
558
|
+
_this.playerConfig.playback.preferredTech = [{ 'player': bitmovin_player_1.PlayerType.Html5, 'streaming': bitmovin_player_1.StreamType.Hls }];
|
|
559
|
+
}
|
|
560
|
+
_this.playerConfig.adaptation = {
|
|
561
|
+
desktop: {
|
|
562
|
+
onAudioAdaptation: function (e) {
|
|
563
|
+
return (e.representations.length) ? e.representations[0].id : "";
|
|
564
|
+
}
|
|
565
|
+
}
|
|
566
|
+
};
|
|
567
|
+
Object.assign(_this.playerConfig.tweaks, {
|
|
511
568
|
MINIMUM_ALLOWED_UPDATE_PERIOD: 6,
|
|
512
569
|
MINIMAL_BACKWARD_BUFFER_CLEARING_INTERVAL: 2,
|
|
513
570
|
MIN_SIZE_FOR_GAP_SKIPPING: 0.15,
|
|
@@ -515,201 +572,198 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
515
572
|
MAXIMUM_DOWNLOAD_DURATION_MULTIPLIER: 1
|
|
516
573
|
});
|
|
517
574
|
}
|
|
518
|
-
if (common_1.MKPlatform.isTizenTV() || common_1.MKPlatform.isWebOS()) {
|
|
519
|
-
Object.assign(
|
|
575
|
+
if (common_1.MKPlatform.isTizenTV() || common_1.MKPlatform.isWebOS() || common_1.MKPlatform.isComcastX1()) {
|
|
576
|
+
Object.assign(_this.playerConfig.tweaks, {
|
|
520
577
|
HLS_PARSE_MANIFEST_IN_WORKER: true
|
|
521
578
|
});
|
|
522
579
|
}
|
|
523
580
|
}
|
|
524
|
-
|
|
525
|
-
|
|
581
|
+
_this.player = new bitmovin_player_1.Player(_this.videoContainer, _this.playerConfig);
|
|
582
|
+
if (_this.player.getContainer().classList.contains('bitmovinplayer-container')) {
|
|
583
|
+
_this.player.getContainer().classList.remove('bitmovinplayer-container');
|
|
526
584
|
}
|
|
527
|
-
|
|
528
|
-
|
|
529
|
-
}
|
|
530
|
-
if (this.player.getContainer().classList.contains('bitmovinplayer-container')) {
|
|
531
|
-
this.player.getContainer().classList.remove('bitmovinplayer-container');
|
|
532
|
-
}
|
|
533
|
-
if (this.player.getContainer().classList.contains('aspect-16x9')) {
|
|
534
|
-
this.player.getContainer().classList.remove('aspect-16x9');
|
|
585
|
+
if (_this.player.getContainer().classList.contains('aspect-16x9')) {
|
|
586
|
+
_this.player.getContainer().classList.remove('aspect-16x9');
|
|
535
587
|
}
|
|
588
|
+
return _this;
|
|
536
589
|
}
|
|
537
|
-
addCastMetadata(metadata) {
|
|
590
|
+
MKBitmovinPlayer.prototype.addCastMetadata = function (metadata) {
|
|
538
591
|
return this.player.addMetadata(bitmovin_player_1.MetadataType.CAST, metadata);
|
|
539
|
-
}
|
|
540
|
-
addSubtitle(subtitleTrack) {
|
|
592
|
+
};
|
|
593
|
+
MKBitmovinPlayer.prototype.addSubtitle = function (subtitleTrack) {
|
|
541
594
|
this.player.subtitles.add(subtitleTrack);
|
|
542
|
-
}
|
|
543
|
-
castStop() {
|
|
595
|
+
};
|
|
596
|
+
MKBitmovinPlayer.prototype.castStop = function () {
|
|
544
597
|
this.player.castStop();
|
|
545
|
-
}
|
|
546
|
-
castVideo() {
|
|
598
|
+
};
|
|
599
|
+
MKBitmovinPlayer.prototype.castVideo = function () {
|
|
547
600
|
this.player.castVideo();
|
|
548
|
-
}
|
|
549
|
-
destroy() {
|
|
601
|
+
};
|
|
602
|
+
MKBitmovinPlayer.prototype.destroy = function () {
|
|
550
603
|
var _a, _b, _c;
|
|
551
604
|
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.disable();
|
|
552
605
|
(_b = this.subtitleOverlay) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
553
606
|
this.subtitleOverlay = undefined;
|
|
554
607
|
(_c = this.playerUI) === null || _c === void 0 ? void 0 : _c.release();
|
|
555
608
|
return this.player.destroy();
|
|
556
|
-
}
|
|
557
|
-
disableSubtitle(subtitleID) {
|
|
609
|
+
};
|
|
610
|
+
MKBitmovinPlayer.prototype.disableSubtitle = function (subtitleID) {
|
|
558
611
|
this.player.subtitles.disable(subtitleID);
|
|
559
|
-
}
|
|
560
|
-
enableSubtitle(subtitleID) {
|
|
612
|
+
};
|
|
613
|
+
MKBitmovinPlayer.prototype.enableSubtitle = function (subtitleID) {
|
|
561
614
|
this.player.subtitles.enable(subtitleID);
|
|
562
|
-
}
|
|
563
|
-
getAspectRatio() {
|
|
615
|
+
};
|
|
616
|
+
MKBitmovinPlayer.prototype.getAspectRatio = function () {
|
|
564
617
|
return this.player.getAspectRatio();
|
|
565
|
-
}
|
|
566
|
-
getAudio() {
|
|
567
|
-
|
|
618
|
+
};
|
|
619
|
+
MKBitmovinPlayer.prototype.getAudio = function () {
|
|
620
|
+
var audioTrack = this.player.getAudio();
|
|
568
621
|
if (audioTrack)
|
|
569
622
|
return audioTrack;
|
|
570
623
|
return null;
|
|
571
|
-
}
|
|
572
|
-
getAudioQuality() {
|
|
573
|
-
|
|
624
|
+
};
|
|
625
|
+
MKBitmovinPlayer.prototype.getAudioQuality = function () {
|
|
626
|
+
var audioQuality = this.player.getAudioQuality();
|
|
574
627
|
return audioQuality;
|
|
575
|
-
}
|
|
576
|
-
getAvailableAudio() {
|
|
577
|
-
|
|
628
|
+
};
|
|
629
|
+
MKBitmovinPlayer.prototype.getAvailableAudio = function () {
|
|
630
|
+
var audioTracks = this.player.getAvailableAudio();
|
|
578
631
|
return audioTracks;
|
|
579
|
-
}
|
|
580
|
-
getAvailableAudioQualities() {
|
|
581
|
-
|
|
632
|
+
};
|
|
633
|
+
MKBitmovinPlayer.prototype.getAvailableAudioQualities = function () {
|
|
634
|
+
var audioQualities = this.player.getAvailableAudioQualities();
|
|
582
635
|
return audioQualities;
|
|
583
|
-
}
|
|
584
|
-
getAvailableSubtitles() {
|
|
585
|
-
|
|
636
|
+
};
|
|
637
|
+
MKBitmovinPlayer.prototype.getAvailableSubtitles = function () {
|
|
638
|
+
var subtitleTracks = this.player.subtitles.list();
|
|
586
639
|
return subtitleTracks;
|
|
587
|
-
}
|
|
588
|
-
getAvailableVideoQualities() {
|
|
589
|
-
|
|
640
|
+
};
|
|
641
|
+
MKBitmovinPlayer.prototype.getAvailableVideoQualities = function () {
|
|
642
|
+
var videoQualities = this.player.getAvailableVideoQualities();
|
|
590
643
|
return videoQualities;
|
|
591
|
-
}
|
|
592
|
-
getBufferLevel(type, media) {
|
|
593
|
-
|
|
644
|
+
};
|
|
645
|
+
MKBitmovinPlayer.prototype.getBufferLevel = function (type, media) {
|
|
646
|
+
var bufferLevel = this.player.buffer.getLevel(type, media);
|
|
594
647
|
return bufferLevel;
|
|
595
|
-
}
|
|
596
|
-
getBufferedRanges() {
|
|
597
|
-
|
|
648
|
+
};
|
|
649
|
+
MKBitmovinPlayer.prototype.getBufferedRanges = function () {
|
|
650
|
+
var bufferedRanges = this.player.getBufferedRanges();
|
|
598
651
|
return bufferedRanges;
|
|
599
|
-
}
|
|
600
|
-
getVersion() {
|
|
652
|
+
};
|
|
653
|
+
MKBitmovinPlayer.prototype.getVersion = function () {
|
|
601
654
|
return bitmovin_player_1.Player.version;
|
|
602
|
-
}
|
|
603
|
-
getVideoContainer() {
|
|
655
|
+
};
|
|
656
|
+
MKBitmovinPlayer.prototype.getVideoContainer = function () {
|
|
604
657
|
return this.player.getContainer();
|
|
605
|
-
}
|
|
606
|
-
getCurrentTime(mode) {
|
|
658
|
+
};
|
|
659
|
+
MKBitmovinPlayer.prototype.getCurrentTime = function (mode) {
|
|
607
660
|
return this.player.getCurrentTime(mode);
|
|
608
|
-
}
|
|
609
|
-
getDownloadedAudioData() {
|
|
610
|
-
|
|
661
|
+
};
|
|
662
|
+
MKBitmovinPlayer.prototype.getDownloadedAudioData = function () {
|
|
663
|
+
var downloadedAudioData = this.player.getDownloadedAudioData();
|
|
611
664
|
return downloadedAudioData;
|
|
612
|
-
}
|
|
613
|
-
getDownloadedVideoData() {
|
|
614
|
-
|
|
665
|
+
};
|
|
666
|
+
MKBitmovinPlayer.prototype.getDownloadedVideoData = function () {
|
|
667
|
+
var downloadedVideoData = this.player.getDownloadedVideoData();
|
|
615
668
|
return downloadedVideoData;
|
|
616
|
-
}
|
|
617
|
-
getDroppedVideoFrames() {
|
|
669
|
+
};
|
|
670
|
+
MKBitmovinPlayer.prototype.getDroppedVideoFrames = function () {
|
|
618
671
|
return this.player.getDroppedVideoFrames();
|
|
619
|
-
}
|
|
620
|
-
getDuration() {
|
|
672
|
+
};
|
|
673
|
+
MKBitmovinPlayer.prototype.getDuration = function () {
|
|
621
674
|
if (this.isLive()) {
|
|
622
675
|
return (-1 * this.getMaxTimeShift());
|
|
623
676
|
}
|
|
624
677
|
return this.player.getDuration();
|
|
625
|
-
}
|
|
626
|
-
getMaxTimeShift() {
|
|
678
|
+
};
|
|
679
|
+
MKBitmovinPlayer.prototype.getMaxTimeShift = function () {
|
|
627
680
|
return this.player.getMaxTimeShift();
|
|
628
|
-
}
|
|
629
|
-
getPlaybackAudioData() {
|
|
630
|
-
|
|
681
|
+
};
|
|
682
|
+
MKBitmovinPlayer.prototype.getPlaybackAudioData = function () {
|
|
683
|
+
var audioQuality = this.player.getPlaybackAudioData();
|
|
631
684
|
return audioQuality;
|
|
632
|
-
}
|
|
633
|
-
getPlaybackSpeed() {
|
|
685
|
+
};
|
|
686
|
+
MKBitmovinPlayer.prototype.getPlaybackSpeed = function () {
|
|
634
687
|
return this.player.getPlaybackSpeed();
|
|
635
|
-
}
|
|
636
|
-
getPlaybackVideoData() {
|
|
637
|
-
|
|
688
|
+
};
|
|
689
|
+
MKBitmovinPlayer.prototype.getPlaybackVideoData = function () {
|
|
690
|
+
var videoQuality = this.player.getPlaybackVideoData();
|
|
638
691
|
return videoQuality;
|
|
639
|
-
}
|
|
640
|
-
getSeekableRange(mode) {
|
|
692
|
+
};
|
|
693
|
+
MKBitmovinPlayer.prototype.getSeekableRange = function (mode) {
|
|
641
694
|
if (mode == enums_1.MKTimeMode.RelativeTime && this.isLive()) {
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
695
|
+
var end = this.getCurrentTime(mode) + (-1 * this.getTimeShift());
|
|
696
|
+
var start = end - (-1 * this.getMaxTimeShift());
|
|
697
|
+
var seekableRange_1 = {
|
|
645
698
|
start: start < 0 ? 0 : start,
|
|
646
699
|
end: end
|
|
647
700
|
};
|
|
648
|
-
return
|
|
701
|
+
return seekableRange_1;
|
|
649
702
|
}
|
|
650
|
-
|
|
703
|
+
var seekableRange = this.player.getSeekableRange();
|
|
651
704
|
return seekableRange;
|
|
652
|
-
}
|
|
653
|
-
getThumbnail(time) {
|
|
654
|
-
|
|
705
|
+
};
|
|
706
|
+
MKBitmovinPlayer.prototype.getThumbnail = function (time) {
|
|
707
|
+
var thumbnail = this.player.getThumbnail(time);
|
|
655
708
|
if (thumbnail)
|
|
656
709
|
return thumbnail;
|
|
657
710
|
return null;
|
|
658
|
-
}
|
|
659
|
-
getTimeShift() {
|
|
711
|
+
};
|
|
712
|
+
MKBitmovinPlayer.prototype.getTimeShift = function () {
|
|
660
713
|
return this.player.getTimeShift();
|
|
661
|
-
}
|
|
662
|
-
getTotalStalledTime() {
|
|
714
|
+
};
|
|
715
|
+
MKBitmovinPlayer.prototype.getTotalStalledTime = function () {
|
|
663
716
|
return this.player.getTotalStalledTime();
|
|
664
|
-
}
|
|
665
|
-
getVideoElement() {
|
|
717
|
+
};
|
|
718
|
+
MKBitmovinPlayer.prototype.getVideoElement = function () {
|
|
666
719
|
return this.player.getVideoElement();
|
|
667
|
-
}
|
|
668
|
-
getVideoQuality() {
|
|
669
|
-
|
|
720
|
+
};
|
|
721
|
+
MKBitmovinPlayer.prototype.getVideoQuality = function () {
|
|
722
|
+
var videoQuality = this.player.getVideoQuality();
|
|
670
723
|
return videoQuality;
|
|
671
|
-
}
|
|
672
|
-
getViewMode() {
|
|
673
|
-
|
|
724
|
+
};
|
|
725
|
+
MKBitmovinPlayer.prototype.getViewMode = function () {
|
|
726
|
+
var viewMode = this.player.getViewMode();
|
|
674
727
|
return viewMode;
|
|
675
|
-
}
|
|
676
|
-
getVolume() {
|
|
728
|
+
};
|
|
729
|
+
MKBitmovinPlayer.prototype.getVolume = function () {
|
|
677
730
|
return this.player.getVolume();
|
|
678
|
-
}
|
|
679
|
-
hasEnded() {
|
|
731
|
+
};
|
|
732
|
+
MKBitmovinPlayer.prototype.hasEnded = function () {
|
|
680
733
|
return this.player.hasEnded();
|
|
681
|
-
}
|
|
682
|
-
isAirplayActive() {
|
|
734
|
+
};
|
|
735
|
+
MKBitmovinPlayer.prototype.isAirplayActive = function () {
|
|
683
736
|
return this.player.isAirplayActive();
|
|
684
|
-
}
|
|
685
|
-
isAirplayAvailable() {
|
|
737
|
+
};
|
|
738
|
+
MKBitmovinPlayer.prototype.isAirplayAvailable = function () {
|
|
686
739
|
return this.player.isAirplayAvailable();
|
|
687
|
-
}
|
|
688
|
-
isCastAvailable() {
|
|
740
|
+
};
|
|
741
|
+
MKBitmovinPlayer.prototype.isCastAvailable = function () {
|
|
689
742
|
return this.player.isCastAvailable();
|
|
690
|
-
}
|
|
691
|
-
isCasting() {
|
|
743
|
+
};
|
|
744
|
+
MKBitmovinPlayer.prototype.isCasting = function () {
|
|
692
745
|
return this.player.isCasting();
|
|
693
|
-
}
|
|
694
|
-
isLive() {
|
|
746
|
+
};
|
|
747
|
+
MKBitmovinPlayer.prototype.isLive = function () {
|
|
695
748
|
return this.player.isLive();
|
|
696
|
-
}
|
|
697
|
-
isMuted() {
|
|
749
|
+
};
|
|
750
|
+
MKBitmovinPlayer.prototype.isMuted = function () {
|
|
698
751
|
return this.player.isMuted();
|
|
699
|
-
}
|
|
700
|
-
isPaused() {
|
|
752
|
+
};
|
|
753
|
+
MKBitmovinPlayer.prototype.isPaused = function () {
|
|
701
754
|
return this.player.isPaused();
|
|
702
|
-
}
|
|
703
|
-
isPlaying() {
|
|
755
|
+
};
|
|
756
|
+
MKBitmovinPlayer.prototype.isPlaying = function () {
|
|
704
757
|
return this.player.isPlaying();
|
|
705
|
-
}
|
|
706
|
-
isStalled() {
|
|
758
|
+
};
|
|
759
|
+
MKBitmovinPlayer.prototype.isStalled = function () {
|
|
707
760
|
return this.player.isStalled();
|
|
708
|
-
}
|
|
709
|
-
isViewModeAvailable(viewMode) {
|
|
761
|
+
};
|
|
762
|
+
MKBitmovinPlayer.prototype.isViewModeAvailable = function (viewMode) {
|
|
710
763
|
return this.player.isViewModeAvailable(viewMode);
|
|
711
|
-
}
|
|
712
|
-
load(sourceConfig, disableSeeking) {
|
|
764
|
+
};
|
|
765
|
+
MKBitmovinPlayer.prototype.load = function (sourceConfig, disableSeeking) {
|
|
766
|
+
var _this = this;
|
|
713
767
|
var _a;
|
|
714
768
|
this.hasPreroll = false;
|
|
715
769
|
this.adTrackingList = [];
|
|
@@ -718,11 +772,9 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
718
772
|
this.fpsContentId = undefined;
|
|
719
773
|
this.firstTimeChangedUpdate = false;
|
|
720
774
|
this.sourceConfig = Object.assign({}, sourceConfig);
|
|
721
|
-
|
|
722
|
-
|
|
723
|
-
|
|
724
|
-
source.videoDetails = sourceConfig.videoDetails;
|
|
725
|
-
}
|
|
775
|
+
this.vsppSessionIdParsed = false;
|
|
776
|
+
var applyDefaultStartOffset = true;
|
|
777
|
+
var source = {};
|
|
726
778
|
source.title = sourceConfig.title;
|
|
727
779
|
source.description = sourceConfig.description;
|
|
728
780
|
source.poster = sourceConfig.poster;
|
|
@@ -736,46 +788,54 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
736
788
|
source.thumbnailTrack = sourceConfig.thumbnailTrack;
|
|
737
789
|
if (sourceConfig.drm) {
|
|
738
790
|
source.drm = Object.assign({}, sourceConfig.drm);
|
|
791
|
+
if (sourceConfig.drm.usingAzuki !== false && sourceConfig.drm.playready) {
|
|
792
|
+
if (common_1.MKPlatform.isPlayStation5() || common_1.MKPlatform.isPlayStation4() || common_1.MKPlatform.isWebOS()) {
|
|
793
|
+
Object.assign(sourceConfig.drm.playready, {
|
|
794
|
+
utf8message: true,
|
|
795
|
+
plaintextChallenge: true
|
|
796
|
+
});
|
|
797
|
+
}
|
|
798
|
+
}
|
|
739
799
|
if (sourceConfig.drm.usingAzuki !== false && source.drm.fairplay) {
|
|
740
|
-
source.drm.fairplay.prepareContentId = ((url)
|
|
741
|
-
|
|
800
|
+
source.drm.fairplay.prepareContentId = (function (url) {
|
|
801
|
+
var link = document.createElement('a');
|
|
742
802
|
link.href = url.substring(url.indexOf("skd://"));
|
|
743
803
|
if (link.href.length > 0) {
|
|
744
|
-
|
|
804
|
+
var urlParts = link.href.split("skd://", 2);
|
|
745
805
|
if (urlParts.length === 2) {
|
|
746
|
-
|
|
747
|
-
return
|
|
806
|
+
_this.fpsContentId = urlParts[1];
|
|
807
|
+
return _this.fpsContentId;
|
|
748
808
|
}
|
|
749
809
|
}
|
|
750
810
|
return link.hostname;
|
|
751
811
|
});
|
|
752
|
-
source.drm.fairplay.prepareCertificate = ((data)
|
|
812
|
+
source.drm.fairplay.prepareCertificate = (function (data) {
|
|
753
813
|
var _a, _b;
|
|
754
|
-
|
|
755
|
-
|
|
756
|
-
|
|
757
|
-
|
|
758
|
-
|
|
759
|
-
|
|
760
|
-
|
|
761
|
-
for (
|
|
814
|
+
var responseText = String.fromCharCode.apply(null, Array.from(new Uint8Array(data)));
|
|
815
|
+
var parser = new DOMParser();
|
|
816
|
+
var xmlDoc = parser.parseFromString(responseText, "text/xml");
|
|
817
|
+
var cert = (_b = (_a = xmlDoc.getElementsByTagName("cert")[0]) === null || _a === void 0 ? void 0 : _a.childNodes[0]) === null || _b === void 0 ? void 0 : _b.nodeValue;
|
|
818
|
+
var raw = common_1.MKUtils.base64Decode(cert !== null && cert !== void 0 ? cert : "");
|
|
819
|
+
var rawLength = raw.length;
|
|
820
|
+
var certificate = new Uint8Array(new ArrayBuffer(rawLength));
|
|
821
|
+
for (var i = 0; i < rawLength; i++) {
|
|
762
822
|
certificate[i] = raw.charCodeAt(i);
|
|
763
823
|
}
|
|
764
824
|
return certificate;
|
|
765
825
|
});
|
|
766
|
-
source.drm.fairplay.prepareMessage = ((event, _session)
|
|
767
|
-
return common_1.MKUtils.
|
|
826
|
+
source.drm.fairplay.prepareMessage = (function (event, _session) {
|
|
827
|
+
return common_1.MKUtils.base64EncodeUint8Array(event.message);
|
|
768
828
|
});
|
|
769
|
-
source.drm.fairplay.prepareLicense = ((data)
|
|
829
|
+
source.drm.fairplay.prepareLicense = (function (data) {
|
|
770
830
|
var _a, _b;
|
|
771
|
-
|
|
772
|
-
|
|
773
|
-
|
|
831
|
+
var parser = new DOMParser();
|
|
832
|
+
var xmlDoc = parser.parseFromString(data, "text/xml");
|
|
833
|
+
var cert = (_b = (_a = xmlDoc.getElementsByTagName("ckc")[0]) === null || _a === void 0 ? void 0 : _a.childNodes[0]) === null || _b === void 0 ? void 0 : _b.nodeValue;
|
|
774
834
|
return cert !== null && cert !== void 0 ? cert : "";
|
|
775
835
|
});
|
|
776
836
|
}
|
|
777
837
|
if (source.drm.clearkey && source.drm.clearkey.hasOwnProperty("LA_URL")) {
|
|
778
|
-
|
|
838
|
+
var clearkeyConfig = Object.assign({}, source.drm.clearkey);
|
|
779
839
|
if (clearkeyConfig.LA_URL.toLowerCase() === "hls_aes" && clearkeyConfig.headers && Object.keys(clearkeyConfig.headers).length > 0) {
|
|
780
840
|
this.headersForHlsAes = Object.assign({}, clearkeyConfig.headers);
|
|
781
841
|
source.drm = undefined;
|
|
@@ -802,14 +862,14 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
802
862
|
if (sourceConfig.sourceOptions.startOffset < 0) {
|
|
803
863
|
source.options.startOffset = sourceConfig.sourceOptions.startOffset;
|
|
804
864
|
source.options.startOffsetTimelineReference = sourceConfig.sourceOptions.startOffsetTimelineReference;
|
|
805
|
-
common_1.MKLog.debug(
|
|
865
|
+
common_1.MKLog.debug("Will start playback directly at offset ".concat(sourceConfig.sourceOptions.startOffset));
|
|
806
866
|
}
|
|
807
867
|
else if (sourceConfig.sourceOptions.startOffset === 0) {
|
|
808
868
|
if (sourceConfig.assetType === enums_1.MKAssetType.Live) {
|
|
809
|
-
|
|
869
|
+
var timelineReferencePoint = (_a = sourceConfig.sourceOptions.startOffsetTimelineReference) !== null && _a !== void 0 ? _a : bitmovin_player_1.TimelineReferencePoint.End;
|
|
810
870
|
source.options.startOffset = -1;
|
|
811
871
|
source.options.startOffsetTimelineReference = timelineReferencePoint;
|
|
812
|
-
common_1.MKLog.debug(
|
|
872
|
+
common_1.MKLog.debug("Will start playback directly from ".concat(timelineReferencePoint === bitmovin_player_1.TimelineReferencePoint.End ? "live edge" : "beginning", " for live."));
|
|
813
873
|
}
|
|
814
874
|
else {
|
|
815
875
|
source.options.startOffset = -1;
|
|
@@ -825,22 +885,22 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
825
885
|
}
|
|
826
886
|
else {
|
|
827
887
|
this.playStart = sourceConfig.sourceOptions.startOffset;
|
|
828
|
-
common_1.MKLog.debug(
|
|
888
|
+
common_1.MKLog.debug("Will play preroll if available else seek to offset ".concat(this.playStart, " as soon as playback starts!"));
|
|
829
889
|
}
|
|
830
890
|
}
|
|
831
891
|
else {
|
|
832
892
|
if (sourceConfig.sourceOptions.startOffset > 0) {
|
|
833
893
|
if (sourceConfig.registered !== undefined) {
|
|
834
894
|
this.playStart = sourceConfig.sourceOptions.startOffset;
|
|
835
|
-
common_1.MKLog.debug(
|
|
895
|
+
common_1.MKLog.debug("Will play preroll if available else seek to offset ".concat(this.playStart, " as soon as playback starts!"));
|
|
836
896
|
}
|
|
837
897
|
else {
|
|
838
898
|
source.options.startOffset = sourceConfig.sourceOptions.startOffset;
|
|
839
|
-
common_1.MKLog.debug(
|
|
899
|
+
common_1.MKLog.debug("Will start playback directly at offset ".concat(sourceConfig.sourceOptions.startOffset));
|
|
840
900
|
}
|
|
841
901
|
}
|
|
842
902
|
else {
|
|
843
|
-
common_1.MKLog.warn(
|
|
903
|
+
common_1.MKLog.warn("Unsupported startOffset: ".concat(sourceConfig.sourceOptions.startOffset, " specified in sourceOptions!"));
|
|
844
904
|
}
|
|
845
905
|
}
|
|
846
906
|
}
|
|
@@ -853,18 +913,24 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
853
913
|
};
|
|
854
914
|
}
|
|
855
915
|
if (common_1.MKPlatform.isTizenTV() || common_1.MKPlatform.isOperaTV() || common_1.MKPlatform.isComcastX1()) {
|
|
856
|
-
if (
|
|
857
|
-
|
|
916
|
+
if (source.drm) {
|
|
917
|
+
source.drm.immediateLicenseRequest = true;
|
|
918
|
+
if (source.drm.widevine && source.drm.widevine.headers) {
|
|
919
|
+
source.drm.widevine.headers["Content-Type"] = "text/plain";
|
|
920
|
+
}
|
|
921
|
+
}
|
|
922
|
+
if (source.options) {
|
|
923
|
+
source.options.withCredentials = true;
|
|
858
924
|
}
|
|
859
925
|
}
|
|
860
|
-
common_1.MKLog.debug(
|
|
926
|
+
common_1.MKLog.debug("Starting playback with source: ".concat(JSON.stringify(source, null, 4)));
|
|
861
927
|
return this.player.load(source, undefined, disableSeeking);
|
|
862
|
-
}
|
|
863
|
-
reload(start, sourceOptions) {
|
|
928
|
+
};
|
|
929
|
+
MKBitmovinPlayer.prototype.reload = function (start, sourceOptions) {
|
|
864
930
|
if (!this.sourceConfig) {
|
|
865
931
|
return Promise.reject(new Error("Invalid source configuration!"));
|
|
866
932
|
}
|
|
867
|
-
|
|
933
|
+
var sourceConfig = Object.assign({}, this.sourceConfig);
|
|
868
934
|
sourceConfig.sourceOptions = Object.assign({}, sourceOptions);
|
|
869
935
|
if (start !== undefined) {
|
|
870
936
|
if (!this.player.isLive()) {
|
|
@@ -881,29 +947,29 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
881
947
|
}
|
|
882
948
|
}
|
|
883
949
|
return this.load(sourceConfig);
|
|
884
|
-
}
|
|
885
|
-
mute(issuer) {
|
|
950
|
+
};
|
|
951
|
+
MKBitmovinPlayer.prototype.mute = function (issuer) {
|
|
886
952
|
this.player.mute(issuer);
|
|
887
|
-
}
|
|
888
|
-
pause(issuer) {
|
|
953
|
+
};
|
|
954
|
+
MKBitmovinPlayer.prototype.pause = function (issuer) {
|
|
889
955
|
this.player.pause(issuer);
|
|
890
|
-
}
|
|
891
|
-
play(issuer) {
|
|
956
|
+
};
|
|
957
|
+
MKBitmovinPlayer.prototype.play = function (issuer) {
|
|
892
958
|
return this.player.play(issuer);
|
|
893
|
-
}
|
|
894
|
-
preload() {
|
|
959
|
+
};
|
|
960
|
+
MKBitmovinPlayer.prototype.preload = function () {
|
|
895
961
|
this.player.preload();
|
|
896
|
-
}
|
|
897
|
-
removeSubtitle(subtitleID) {
|
|
962
|
+
};
|
|
963
|
+
MKBitmovinPlayer.prototype.removeSubtitle = function (subtitleID) {
|
|
898
964
|
this.player.subtitles.remove(subtitleID);
|
|
899
|
-
}
|
|
900
|
-
seek(time, issuer) {
|
|
965
|
+
};
|
|
966
|
+
MKBitmovinPlayer.prototype.seek = function (time, issuer) {
|
|
901
967
|
if (this.isLive()) {
|
|
902
|
-
|
|
968
|
+
var seekableRange = this.getSeekableRange(enums_1.MKTimeMode.RelativeTime);
|
|
903
969
|
if (time > seekableRange.end) {
|
|
904
970
|
seekableRange = this.getSeekableRange();
|
|
905
971
|
}
|
|
906
|
-
|
|
972
|
+
var seekOffset = time - seekableRange.end;
|
|
907
973
|
seekOffset = seekOffset < this.getMaxTimeShift() ? this.getMaxTimeShift() : seekOffset > 0 ? 0 : seekOffset;
|
|
908
974
|
this.player.timeShift(seekOffset, issuer);
|
|
909
975
|
return true;
|
|
@@ -911,94 +977,94 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
911
977
|
else {
|
|
912
978
|
return this.player.seek(time, issuer);
|
|
913
979
|
}
|
|
914
|
-
}
|
|
915
|
-
seekToLiveEdge(issuer) {
|
|
980
|
+
};
|
|
981
|
+
MKBitmovinPlayer.prototype.seekToLiveEdge = function (issuer) {
|
|
916
982
|
if (this.isLive()) {
|
|
917
983
|
this.player.timeShift(0, issuer);
|
|
918
984
|
}
|
|
919
|
-
}
|
|
920
|
-
setAspectRatio(aspectratio) {
|
|
985
|
+
};
|
|
986
|
+
MKBitmovinPlayer.prototype.setAspectRatio = function (aspectratio) {
|
|
921
987
|
this.player.setAspectRatio(aspectratio);
|
|
922
|
-
}
|
|
923
|
-
setAudio(trackID) {
|
|
988
|
+
};
|
|
989
|
+
MKBitmovinPlayer.prototype.setAudio = function (trackID) {
|
|
924
990
|
this.player.setAudio(trackID);
|
|
925
|
-
}
|
|
926
|
-
setHttpHeaders(headers) {
|
|
991
|
+
};
|
|
992
|
+
MKBitmovinPlayer.prototype.setHttpHeaders = function (headers) {
|
|
927
993
|
this.headers = headers;
|
|
928
|
-
}
|
|
929
|
-
setAudioQuality(audioQualityID) {
|
|
994
|
+
};
|
|
995
|
+
MKBitmovinPlayer.prototype.setAudioQuality = function (audioQualityID) {
|
|
930
996
|
this.player.setAudioQuality(audioQualityID);
|
|
931
|
-
}
|
|
932
|
-
setLogLevel(level) {
|
|
997
|
+
};
|
|
998
|
+
MKBitmovinPlayer.prototype.setLogLevel = function (level) {
|
|
933
999
|
this.player.setLogLevel(level);
|
|
934
|
-
}
|
|
935
|
-
setPlaybackSpeed(speed) {
|
|
1000
|
+
};
|
|
1001
|
+
MKBitmovinPlayer.prototype.setPlaybackSpeed = function (speed) {
|
|
936
1002
|
this.player.setPlaybackSpeed(speed);
|
|
937
|
-
}
|
|
938
|
-
setPosterImage(url, keepPersistent) {
|
|
1003
|
+
};
|
|
1004
|
+
MKBitmovinPlayer.prototype.setPosterImage = function (url, keepPersistent) {
|
|
939
1005
|
this.player.setPosterImage(url, keepPersistent);
|
|
940
|
-
}
|
|
941
|
-
setTargetBufferLevel(type, value, media) {
|
|
1006
|
+
};
|
|
1007
|
+
MKBitmovinPlayer.prototype.setTargetBufferLevel = function (type, value, media) {
|
|
942
1008
|
this.player.buffer.setTargetLevel(type, value, media);
|
|
943
|
-
}
|
|
944
|
-
setVideoElement(videoElement) {
|
|
1009
|
+
};
|
|
1010
|
+
MKBitmovinPlayer.prototype.setVideoElement = function (videoElement) {
|
|
945
1011
|
this.player.setVideoElement(videoElement);
|
|
946
|
-
}
|
|
947
|
-
setVideoQuality(videoQualityID) {
|
|
1012
|
+
};
|
|
1013
|
+
MKBitmovinPlayer.prototype.setVideoQuality = function (videoQualityID) {
|
|
948
1014
|
this.player.setVideoQuality(videoQualityID);
|
|
949
|
-
}
|
|
950
|
-
setViewMode(viewMode, options) {
|
|
951
|
-
|
|
1015
|
+
};
|
|
1016
|
+
MKBitmovinPlayer.prototype.setViewMode = function (viewMode, options) {
|
|
1017
|
+
var viewModeOptions = {};
|
|
952
1018
|
if (options)
|
|
953
1019
|
viewModeOptions;
|
|
954
1020
|
this.player.setViewMode(viewMode, viewModeOptions);
|
|
955
|
-
}
|
|
956
|
-
setVolume(volume, issuer) {
|
|
1021
|
+
};
|
|
1022
|
+
MKBitmovinPlayer.prototype.setVolume = function (volume, issuer) {
|
|
957
1023
|
this.player.setVolume(volume, issuer);
|
|
958
|
-
}
|
|
959
|
-
showAirplayTargetPicker() {
|
|
1024
|
+
};
|
|
1025
|
+
MKBitmovinPlayer.prototype.showAirplayTargetPicker = function () {
|
|
960
1026
|
this.player.showAirplayTargetPicker();
|
|
961
|
-
}
|
|
962
|
-
unload() {
|
|
1027
|
+
};
|
|
1028
|
+
MKBitmovinPlayer.prototype.unload = function () {
|
|
963
1029
|
var _a, _b, _c;
|
|
964
1030
|
(_a = this.subtitleOverlay) === null || _a === void 0 ? void 0 : _a.disable();
|
|
965
1031
|
(_b = this.subtitleOverlay) === null || _b === void 0 ? void 0 : _b.destroy();
|
|
966
1032
|
this.subtitleOverlay = undefined;
|
|
967
1033
|
(_c = this.playerUI) === null || _c === void 0 ? void 0 : _c.release();
|
|
968
|
-
|
|
969
|
-
posters.forEach(poster
|
|
1034
|
+
var posters = document.querySelectorAll('.bitmovinplayer-poster');
|
|
1035
|
+
posters.forEach(function (poster) {
|
|
970
1036
|
poster.remove();
|
|
971
1037
|
});
|
|
972
1038
|
return this.player.unload();
|
|
973
|
-
}
|
|
974
|
-
unmute(issuer) {
|
|
1039
|
+
};
|
|
1040
|
+
MKBitmovinPlayer.prototype.unmute = function (issuer) {
|
|
975
1041
|
this.player.unmute(issuer);
|
|
976
|
-
}
|
|
977
|
-
getCatchupConfig() {
|
|
978
|
-
|
|
1042
|
+
};
|
|
1043
|
+
MKBitmovinPlayer.prototype.getCatchupConfig = function () {
|
|
1044
|
+
var config = this.player.lowlatency.getCatchupConfig();
|
|
979
1045
|
return config;
|
|
980
|
-
}
|
|
981
|
-
getFallbackConfig() {
|
|
982
|
-
|
|
1046
|
+
};
|
|
1047
|
+
MKBitmovinPlayer.prototype.getFallbackConfig = function () {
|
|
1048
|
+
var config = this.player.lowlatency.getFallbackConfig();
|
|
983
1049
|
return config;
|
|
984
|
-
}
|
|
985
|
-
getLatency() {
|
|
1050
|
+
};
|
|
1051
|
+
MKBitmovinPlayer.prototype.getLatency = function () {
|
|
986
1052
|
return this.player.lowlatency.getLatency();
|
|
987
|
-
}
|
|
988
|
-
getTargetLatency() {
|
|
1053
|
+
};
|
|
1054
|
+
MKBitmovinPlayer.prototype.getTargetLatency = function () {
|
|
989
1055
|
return this.player.lowlatency.getTargetLatency();
|
|
990
|
-
}
|
|
991
|
-
setCatchupConfig(config) {
|
|
1056
|
+
};
|
|
1057
|
+
MKBitmovinPlayer.prototype.setCatchupConfig = function (config) {
|
|
992
1058
|
this.player.lowlatency.setCatchupConfig(config);
|
|
993
|
-
}
|
|
994
|
-
setFallbackConfig(config) {
|
|
1059
|
+
};
|
|
1060
|
+
MKBitmovinPlayer.prototype.setFallbackConfig = function (config) {
|
|
995
1061
|
this.player.lowlatency.setFallbackConfig(config);
|
|
996
|
-
}
|
|
997
|
-
setTargetLatency(latency) {
|
|
1062
|
+
};
|
|
1063
|
+
MKBitmovinPlayer.prototype.setTargetLatency = function (latency) {
|
|
998
1064
|
this.player.lowlatency.setTargetLatency(latency);
|
|
999
|
-
}
|
|
1000
|
-
getAdQuartileOffsets(adOffset, adDuration) {
|
|
1001
|
-
|
|
1065
|
+
};
|
|
1066
|
+
MKBitmovinPlayer.prototype.getAdQuartileOffsets = function (adOffset, adDuration) {
|
|
1067
|
+
var quartileOffsets = [];
|
|
1002
1068
|
if (adOffset.start >= 0 && adOffset.end > 0 && adDuration > 0) {
|
|
1003
1069
|
quartileOffsets.push({
|
|
1004
1070
|
quartile: enums_1.MKAdQuartile.FirstQuartile,
|
|
@@ -1014,14 +1080,14 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1014
1080
|
});
|
|
1015
1081
|
}
|
|
1016
1082
|
return quartileOffsets;
|
|
1017
|
-
}
|
|
1018
|
-
emitAdEvents(currentTime) {
|
|
1083
|
+
};
|
|
1084
|
+
MKBitmovinPlayer.prototype.emitAdEvents = function (currentTime) {
|
|
1019
1085
|
var _a, _b;
|
|
1020
1086
|
if (this.adBreakStartedEvent && this.adStartedEvent) {
|
|
1021
|
-
|
|
1087
|
+
var adQuartileOffsetsLength = this.adQuartileOffsets.length;
|
|
1022
1088
|
while (adQuartileOffsetsLength--) {
|
|
1023
1089
|
if (currentTime >= this.adQuartileOffsets[adQuartileOffsetsLength].startOffset) {
|
|
1024
|
-
|
|
1090
|
+
var adQuartileEvent = {
|
|
1025
1091
|
id: (_b = (_a = this.adStartedEvent) === null || _a === void 0 ? void 0 : _a.id) !== null && _b !== void 0 ? _b : "",
|
|
1026
1092
|
quartile: this.adQuartileOffsets[adQuartileOffsetsLength].quartile,
|
|
1027
1093
|
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
@@ -1033,7 +1099,7 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1033
1099
|
}
|
|
1034
1100
|
if (currentTime >= this.adBreakStartedEvent.offset.end) {
|
|
1035
1101
|
if (this.adStartedEvent) {
|
|
1036
|
-
|
|
1102
|
+
var adFinishedEvent = {
|
|
1037
1103
|
id: this.adStartedEvent.id,
|
|
1038
1104
|
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
1039
1105
|
type: enums_1.MKPlayerEvent.AdFinished
|
|
@@ -1042,8 +1108,8 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1042
1108
|
this.adStartedEvent = undefined;
|
|
1043
1109
|
this.adQuartileOffsets = [];
|
|
1044
1110
|
}
|
|
1045
|
-
|
|
1046
|
-
|
|
1111
|
+
var adType = this.adBreakStartedEvent.adType;
|
|
1112
|
+
var adBreakFinishedEvent = {
|
|
1047
1113
|
id: this.adBreakStartedEvent.id,
|
|
1048
1114
|
timestamp: common_1.MKUtils.getCurrentTimestamp(),
|
|
1049
1115
|
type: enums_1.MKPlayerEvent.AdBreakFinished
|
|
@@ -1057,34 +1123,35 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1057
1123
|
this.seekToLiveEdge();
|
|
1058
1124
|
}
|
|
1059
1125
|
else {
|
|
1060
|
-
common_1.MKLog.debug(
|
|
1126
|
+
common_1.MKLog.debug("Will seek to given offset ".concat(this.playStart, " as preroll ended!"));
|
|
1061
1127
|
this.seek(this.playStart);
|
|
1062
1128
|
}
|
|
1063
1129
|
}
|
|
1064
1130
|
else {
|
|
1065
|
-
common_1.MKLog.debug(
|
|
1131
|
+
common_1.MKLog.debug("Will seek to given offset ".concat(this.playStart, " as preroll ended!"));
|
|
1066
1132
|
this.seek(this.playStart);
|
|
1067
1133
|
}
|
|
1068
1134
|
}
|
|
1069
1135
|
}
|
|
1070
1136
|
}
|
|
1071
|
-
}
|
|
1072
|
-
updateAdTrackingList(adUrls) {
|
|
1137
|
+
};
|
|
1138
|
+
MKBitmovinPlayer.prototype.updateAdTrackingList = function (adUrls) {
|
|
1139
|
+
var _this = this;
|
|
1073
1140
|
if (!!adUrls) {
|
|
1074
|
-
|
|
1075
|
-
urlParts.forEach((urlPart)
|
|
1076
|
-
|
|
1077
|
-
if (trackingInfoParts.length > 1 &&
|
|
1078
|
-
|
|
1141
|
+
var urlParts = adUrls.split(" ");
|
|
1142
|
+
urlParts.forEach(function (urlPart) {
|
|
1143
|
+
var trackingInfoParts = urlPart.split("|");
|
|
1144
|
+
if (trackingInfoParts.length > 1 && _this.adStartedEvent) {
|
|
1145
|
+
var offset = parseFloat(trackingInfoParts[0]);
|
|
1079
1146
|
if (isNaN(offset))
|
|
1080
1147
|
offset = 0;
|
|
1081
|
-
|
|
1082
|
-
|
|
1083
|
-
for (
|
|
1148
|
+
var time = _this.adStartedEvent.offset.start + offset;
|
|
1149
|
+
var urls = [];
|
|
1150
|
+
for (var index = 1; index < trackingInfoParts.length; index++) {
|
|
1084
1151
|
urls.push(trackingInfoParts[index]);
|
|
1085
1152
|
}
|
|
1086
1153
|
if (urls.length > 0) {
|
|
1087
|
-
|
|
1154
|
+
_this.adTrackingList.push({
|
|
1088
1155
|
time: time,
|
|
1089
1156
|
urls: urls
|
|
1090
1157
|
});
|
|
@@ -1092,26 +1159,26 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1092
1159
|
}
|
|
1093
1160
|
});
|
|
1094
1161
|
}
|
|
1095
|
-
}
|
|
1096
|
-
notifyAdTracking(currentTime) {
|
|
1097
|
-
|
|
1162
|
+
};
|
|
1163
|
+
MKBitmovinPlayer.prototype.notifyAdTracking = function (currentTime) {
|
|
1164
|
+
var index = this.adTrackingList.length;
|
|
1098
1165
|
while (index--) {
|
|
1099
1166
|
if (currentTime >= this.adTrackingList[index].time && this.adTrackingList[index].urls.length > 0) {
|
|
1100
|
-
this.adTrackingList[index].urls.forEach((url)
|
|
1101
|
-
|
|
1167
|
+
this.adTrackingList[index].urls.forEach(function (url) {
|
|
1168
|
+
var request = new request_1.MKHttpRequest();
|
|
1102
1169
|
request.get(url)
|
|
1103
|
-
.then(()
|
|
1170
|
+
.then(function () {
|
|
1104
1171
|
common_1.MKLog.debug("Ad tracking beacon notified successfully.");
|
|
1105
1172
|
})
|
|
1106
|
-
.catch(()
|
|
1173
|
+
.catch(function () {
|
|
1107
1174
|
common_1.MKLog.warn("Ad tracking beacon failed for url: ", url);
|
|
1108
1175
|
});
|
|
1109
1176
|
});
|
|
1110
1177
|
this.adTrackingList.splice(index, 1);
|
|
1111
1178
|
}
|
|
1112
1179
|
}
|
|
1113
|
-
}
|
|
1114
|
-
companionXMLToJson(xmlString) {
|
|
1180
|
+
};
|
|
1181
|
+
MKBitmovinPlayer.prototype.companionXMLToJson = function (xmlString) {
|
|
1115
1182
|
var obj = {};
|
|
1116
1183
|
if (xmlString.nodeType === 1) {
|
|
1117
1184
|
if (xmlString.attributes.length > 0) {
|
|
@@ -1200,8 +1267,8 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1200
1267
|
}
|
|
1201
1268
|
}
|
|
1202
1269
|
return obj;
|
|
1203
|
-
}
|
|
1204
|
-
processCompanionAds(encodedCompanionAds) {
|
|
1270
|
+
};
|
|
1271
|
+
MKBitmovinPlayer.prototype.processCompanionAds = function (encodedCompanionAds) {
|
|
1205
1272
|
if (!encodedCompanionAds) {
|
|
1206
1273
|
return null;
|
|
1207
1274
|
}
|
|
@@ -1210,7 +1277,7 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1210
1277
|
decodedCompanionAds = common_1.MKUtils.base64Decode(encodedCompanionAds);
|
|
1211
1278
|
}
|
|
1212
1279
|
catch (e) {
|
|
1213
|
-
common_1.MKLog.error(
|
|
1280
|
+
common_1.MKLog.error("Failed to decode the encoded companion ad string. Error: ".concat(e));
|
|
1214
1281
|
return null;
|
|
1215
1282
|
}
|
|
1216
1283
|
var parsedCompanionAds;
|
|
@@ -1218,41 +1285,41 @@ class MKBitmovinPlayer extends common_1.MKEventBase {
|
|
|
1218
1285
|
parsedCompanionAds = new DOMParser().parseFromString(decodedCompanionAds, "text/xml");
|
|
1219
1286
|
}
|
|
1220
1287
|
catch (e) {
|
|
1221
|
-
common_1.MKLog.error(
|
|
1288
|
+
common_1.MKLog.error("Failed to parse companion ad xml string. Error: ".concat(e));
|
|
1222
1289
|
return null;
|
|
1223
1290
|
}
|
|
1224
|
-
|
|
1291
|
+
var companionAdsJSON = this.companionXMLToJson(parsedCompanionAds);
|
|
1225
1292
|
return companionAdsJSON && companionAdsJSON.hasOwnProperty('companionAds') ? companionAdsJSON.companionAds : null;
|
|
1226
|
-
}
|
|
1227
|
-
getAdVerificationData(attributes) {
|
|
1293
|
+
};
|
|
1294
|
+
MKBitmovinPlayer.prototype.getAdVerificationData = function (attributes) {
|
|
1228
1295
|
var _a, _b, _c;
|
|
1229
1296
|
var verificationData;
|
|
1230
|
-
|
|
1231
|
-
|
|
1232
|
-
|
|
1297
|
+
var adVerVendor = (_a = attributes.adVerVendor) !== null && _a !== void 0 ? _a : "";
|
|
1298
|
+
var adVerJS = (_b = attributes.adVerJs) !== null && _b !== void 0 ? _b : "";
|
|
1299
|
+
var adVerParams = (_c = attributes.adVerParams) !== null && _c !== void 0 ? _c : "";
|
|
1233
1300
|
if (adVerVendor && adVerJS && adVerParams) {
|
|
1234
1301
|
verificationData = {
|
|
1235
|
-
adVerVendor,
|
|
1236
|
-
adVerJS,
|
|
1237
|
-
adVerParams
|
|
1302
|
+
adVerVendor: adVerVendor,
|
|
1303
|
+
adVerJS: adVerJS,
|
|
1304
|
+
adVerParams: adVerParams
|
|
1238
1305
|
};
|
|
1239
1306
|
}
|
|
1240
1307
|
return verificationData;
|
|
1241
|
-
}
|
|
1242
|
-
|
|
1243
|
-
|
|
1244
|
-
|
|
1245
|
-
|
|
1246
|
-
|
|
1247
|
-
|
|
1248
|
-
|
|
1249
|
-
|
|
1250
|
-
|
|
1251
|
-
|
|
1252
|
-
|
|
1253
|
-
|
|
1254
|
-
|
|
1255
|
-
|
|
1256
|
-
|
|
1257
|
-
};
|
|
1308
|
+
};
|
|
1309
|
+
MKBitmovinPlayer.DEFAULT_BUFFER_CONFIG = {
|
|
1310
|
+
video: {
|
|
1311
|
+
forwardduration: 20,
|
|
1312
|
+
backwardduration: 12,
|
|
1313
|
+
},
|
|
1314
|
+
audio: {
|
|
1315
|
+
forwardduration: 20,
|
|
1316
|
+
backwardduration: 12,
|
|
1317
|
+
},
|
|
1318
|
+
};
|
|
1319
|
+
MKBitmovinPlayer.DEFAULT_PLAYBACK_CONFIG = {
|
|
1320
|
+
muted: true,
|
|
1321
|
+
autoplay: true
|
|
1322
|
+
};
|
|
1323
|
+
return MKBitmovinPlayer;
|
|
1324
|
+
}(common_1.MKEventBase));
|
|
1258
1325
|
//# sourceMappingURL=MKBitmovinPlayer.js.map
|