@mediakind/mkplayer 1.6.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.
Files changed (116) hide show
  1. package/README.md +6 -6
  2. package/mkplayer.js +1 -1
  3. package/package.json +3 -3
  4. package/types/alias/index.d.ts +1 -1
  5. package/types/classes/common/MKAzukiResponseUtils.js +68 -59
  6. package/types/classes/common/MKAzukiResponseUtils.js.map +1 -1
  7. package/types/classes/common/MKEventBase.js +11 -10
  8. package/types/classes/common/MKEventBase.js.map +1 -1
  9. package/types/classes/common/MKLocalStorage.js +64 -58
  10. package/types/classes/common/MKLocalStorage.js.map +1 -1
  11. package/types/classes/common/MKLog.js +49 -22
  12. package/types/classes/common/MKLog.js.map +1 -1
  13. package/types/classes/common/MKPlatform.js +190 -101
  14. package/types/classes/common/MKPlatform.js.map +1 -1
  15. package/types/classes/common/MKProgramManager.js +37 -32
  16. package/types/classes/common/MKProgramManager.js.map +1 -1
  17. package/types/classes/common/MKSecureUrlManager.js +138 -109
  18. package/types/classes/common/MKSecureUrlManager.js.map +1 -1
  19. package/types/classes/common/MKSubtitleOverlay.js +69 -67
  20. package/types/classes/common/MKSubtitleOverlay.js.map +1 -1
  21. package/types/classes/common/MKThumbnailManager.js +264 -209
  22. package/types/classes/common/MKThumbnailManager.js.map +1 -1
  23. package/types/classes/common/MKUtils.js +164 -97
  24. package/types/classes/common/MKUtils.js.map +1 -1
  25. package/types/classes/error/MKAdobeSessionConcurrencyError.js +6 -5
  26. package/types/classes/error/MKAdobeSessionConcurrencyError.js.map +1 -1
  27. package/types/classes/error/MKAzukiRequestError.js +8 -7
  28. package/types/classes/error/MKAzukiRequestError.js.map +1 -1
  29. package/types/classes/error/MKBitmovinPlayerError.js +31 -12
  30. package/types/classes/error/MKBitmovinPlayerError.js.map +1 -1
  31. package/types/classes/error/MKHttpError.js +4 -3
  32. package/types/classes/error/MKHttpError.js.map +1 -1
  33. package/types/classes/error/MKPlayerError.js +5 -4
  34. package/types/classes/error/MKPlayerError.js.map +1 -1
  35. package/types/classes/error/MKProgramRestrictionError.js +11 -10
  36. package/types/classes/error/MKProgramRestrictionError.js.map +1 -1
  37. package/types/classes/player/MKBitmovinPlayer.js +665 -534
  38. package/types/classes/player/MKBitmovinPlayer.js.map +1 -1
  39. package/types/classes/player/MKPlayer.d.ts +5 -0
  40. package/types/classes/player/MKPlayer.js +790 -526
  41. package/types/classes/player/MKPlayer.js.map +1 -1
  42. package/types/classes/player/MKStubPlayer.d.ts +1 -0
  43. package/types/classes/player/MKStubPlayer.js +367 -0
  44. package/types/classes/player/MKStubPlayer.js.map +1 -0
  45. package/types/classes/request/MKAdobeSessionConcurrencyRequest.js +198 -126
  46. package/types/classes/request/MKAdobeSessionConcurrencyRequest.js.map +1 -1
  47. package/types/classes/request/MKAzukiRequest.js +385 -254
  48. package/types/classes/request/MKAzukiRequest.js.map +1 -1
  49. package/types/classes/request/MKHttpRequest.js +128 -89
  50. package/types/classes/request/MKHttpRequest.js.map +1 -1
  51. package/types/constants/MKAzukiRequestEndpoint.js +24 -24
  52. package/types/constants/MKAzukiRequestEndpoint.js.map +1 -1
  53. package/types/constants/MKConstants.js +1 -1
  54. package/types/enums/MKAnalyticsDataName.d.ts +8 -0
  55. package/types/enums/MKAnalyticsDataName.js +13 -0
  56. package/types/enums/MKAnalyticsDataName.js.map +1 -0
  57. package/types/enums/MKErrorCode.d.ts +1 -0
  58. package/types/enums/MKErrorCode.js +1 -0
  59. package/types/enums/MKErrorCode.js.map +1 -1
  60. package/types/enums/MKPlayerEvent.d.ts +7 -1
  61. package/types/enums/MKPlayerEvent.js +6 -0
  62. package/types/enums/MKPlayerEvent.js.map +1 -1
  63. package/types/enums/MKProgramRestrictionType.js.map +1 -1
  64. package/types/enums/index.d.ts +1 -0
  65. package/types/enums/index.js +3 -1
  66. package/types/enums/index.js.map +1 -1
  67. package/types/interfaces/MKAdVerification.d.ts +5 -0
  68. package/types/interfaces/MKAdVerification.js +3 -0
  69. package/types/interfaces/MKAdVerification.js.map +1 -0
  70. package/types/interfaces/MKAdaptationPlatformConfig.js +1 -1
  71. package/types/interfaces/MKAdaptationPlatformConfig.js.map +1 -1
  72. package/types/interfaces/MKBufferConfig.js +1 -1
  73. package/types/interfaces/MKBufferConfig.js.map +1 -1
  74. package/types/interfaces/MKBufferMediaTypeConfig.js +1 -1
  75. package/types/interfaces/MKBufferMediaTypeConfig.js.map +1 -1
  76. package/types/interfaces/MKDrmConfig.js +1 -1
  77. package/types/interfaces/MKDrmConfig.js.map +1 -1
  78. package/types/interfaces/MKPlayerConfig.d.ts +1 -0
  79. package/types/interfaces/MKRegisteredSource.d.ts +2 -1
  80. package/types/interfaces/events/MKAdVerificationEvent.d.ts +6 -0
  81. package/types/interfaces/events/MKAdVerificationEvent.js +3 -0
  82. package/types/interfaces/events/MKAdVerificationEvent.js.map +1 -0
  83. package/types/interfaces/events/MKAnalyticsDataEvent.d.ts +6 -0
  84. package/types/interfaces/events/MKAnalyticsDataEvent.js +3 -0
  85. package/types/interfaces/events/MKAnalyticsDataEvent.js.map +1 -0
  86. package/types/interfaces/events/MKAudioPlaybackQualityChangedEvent.d.ts +2 -1
  87. package/types/interfaces/events/MKMediaPlaybackQualityChangeEvent.d.ts +3 -3
  88. package/types/interfaces/events/MKVSPPSessionIdEvent.d.ts +4 -0
  89. package/types/interfaces/events/MKVSPPSessionIdEvent.js +3 -0
  90. package/types/interfaces/events/MKVSPPSessionIdEvent.js.map +1 -0
  91. package/types/interfaces/events/MKVideoPlaybackQualityChangedEvent.d.ts +2 -1
  92. package/types/interfaces/events/index.d.ts +3 -0
  93. package/types/interfaces/index.d.ts +2 -1
  94. package/types/src/alias/index.d.ts +1 -1
  95. package/types/src/classes/player/MKPlayer.d.ts +5 -0
  96. package/types/src/classes/player/MKStubPlayer.d.ts +1 -0
  97. package/types/src/enums/MKAnalyticsDataName.d.ts +8 -0
  98. package/types/src/enums/MKErrorCode.d.ts +1 -0
  99. package/types/src/enums/MKPlayerEvent.d.ts +7 -1
  100. package/types/src/enums/index.d.ts +1 -0
  101. package/types/src/interfaces/MKAdVerification.d.ts +5 -0
  102. package/types/src/interfaces/MKPlayerConfig.d.ts +1 -0
  103. package/types/src/interfaces/MKRegisteredSource.d.ts +2 -1
  104. package/types/src/interfaces/events/MKAdVerificationEvent.d.ts +6 -0
  105. package/types/src/interfaces/events/MKAnalyticsDataEvent.d.ts +6 -0
  106. package/types/src/interfaces/events/MKAudioPlaybackQualityChangedEvent.d.ts +2 -1
  107. package/types/src/interfaces/events/MKMediaPlaybackQualityChangeEvent.d.ts +3 -3
  108. package/types/src/interfaces/events/MKVSPPSessionIdEvent.d.ts +4 -0
  109. package/types/src/interfaces/events/MKVideoPlaybackQualityChangedEvent.d.ts +2 -1
  110. package/types/src/interfaces/events/index.d.ts +3 -0
  111. package/types/src/interfaces/index.d.ts +2 -1
  112. package/types/plugins/fmts/MKFMTSConfig.d.ts +0 -10
  113. package/types/plugins/fmts/MKFMTSController.d.ts +0 -39
  114. package/types/plugins/fmts/MKFMTSUtils.d.ts +0 -4
  115. package/types/plugins/fmts/index.d.ts +0 -2
  116. package/types/plugins/omsdk/index.d.ts +0 -0
@@ -8,14 +8,41 @@ var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, ge
8
8
  step((generator = generator.apply(thisArg, _arguments || [])).next());
9
9
  });
10
10
  };
11
+ var __generator = (this && this.__generator) || function (thisArg, body) {
12
+ var _ = { label: 0, sent: function() { if (t[0] & 1) throw t[1]; return t[1]; }, trys: [], ops: [] }, f, y, t, g;
13
+ return g = { next: verb(0), "throw": verb(1), "return": verb(2) }, typeof Symbol === "function" && (g[Symbol.iterator] = function() { return this; }), g;
14
+ function verb(n) { return function (v) { return step([n, v]); }; }
15
+ function step(op) {
16
+ if (f) throw new TypeError("Generator is already executing.");
17
+ while (g && (g = 0, op[0] && (_ = 0)), _) try {
18
+ 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;
19
+ if (y = 0, t) op = [op[0] & 2, t.value];
20
+ switch (op[0]) {
21
+ case 0: case 1: t = op; break;
22
+ case 4: _.label++; return { value: op[1], done: false };
23
+ case 5: _.label++; y = op[1]; op = [0]; continue;
24
+ case 7: op = _.ops.pop(); _.trys.pop(); continue;
25
+ default:
26
+ if (!(t = _.trys, t = t.length > 0 && t[t.length - 1]) && (op[0] === 6 || op[0] === 2)) { _ = 0; continue; }
27
+ if (op[0] === 3 && (!t || (op[1] > t[0] && op[1] < t[3]))) { _.label = op[1]; break; }
28
+ if (op[0] === 6 && _.label < t[1]) { _.label = t[1]; t = op; break; }
29
+ if (t && _.label < t[2]) { _.label = t[2]; _.ops.push(op); break; }
30
+ if (t[2]) _.ops.pop();
31
+ _.trys.pop(); continue;
32
+ }
33
+ op = body.call(thisArg, _);
34
+ } catch (e) { op = [6, e]; y = 0; } finally { f = t = 0; }
35
+ if (op[0] & 5) throw op[1]; return { value: op[0] ? op[1] : void 0, done: true };
36
+ }
37
+ };
11
38
  Object.defineProperty(exports, "__esModule", { value: true });
12
39
  exports.MKThumbnailManager = void 0;
13
- const MKLog_1 = require("./MKLog");
14
- const request_1 = require("../request");
15
- const constants_1 = require("../../constants");
16
- const error_1 = require("../error");
17
- class MKThumbnailManager {
18
- constructor() {
40
+ var MKLog_1 = require("./MKLog");
41
+ var request_1 = require("../request");
42
+ var constants_1 = require("../../constants");
43
+ var error_1 = require("../error");
44
+ var MKThumbnailManager = exports.MKThumbnailManager = (function () {
45
+ function MKThumbnailManager() {
19
46
  this.httpRequest = new request_1.MKHttpRequest();
20
47
  this.manifestUrl = "";
21
48
  this.imageMediaPlaylists = [];
@@ -25,276 +52,304 @@ class MKThumbnailManager {
25
52
  this.targetDuration = 0;
26
53
  this.retryCount = 0;
27
54
  }
28
- getThumbnail(time) {
55
+ MKThumbnailManager.prototype.getThumbnail = function (time) {
29
56
  if (!this.isEnabled) {
30
57
  MKLog_1.MKLog.warn("[MKThumbnailManager] Thumbnails not enabled or available yet!");
31
58
  return null;
32
59
  }
33
- const index = this.thumbnails.findIndex((thumbnail) => {
60
+ var index = this.thumbnails.findIndex(function (thumbnail) {
34
61
  return (time >= thumbnail.start && time <= thumbnail.end);
35
62
  });
36
63
  if (index >= 0) {
37
64
  return this.thumbnails[index];
38
65
  }
39
66
  return null;
40
- }
41
- enable(manifestUrl) {
67
+ };
68
+ MKThumbnailManager.prototype.enable = function (manifestUrl, headers) {
69
+ var _this = this;
42
70
  if (this.isEnabled) {
43
71
  this.disable();
44
72
  }
45
73
  this.manifestUrl = manifestUrl;
74
+ this.headers = headers;
46
75
  this.fetchImageMediaPlaylists()
47
- .then(() => {
48
- if (this.imageMediaPlaylists.length > 0 && this.imageMediaPlaylists[0]) {
49
- this.fetchAndProcessImageMediaPlaylist(this.imageMediaPlaylists[0])
50
- .then(() => {
51
- this.isEnabled = true;
76
+ .then(function () {
77
+ if (_this.imageMediaPlaylists.length > 0 && _this.imageMediaPlaylists[0]) {
78
+ _this.fetchAndProcessImageMediaPlaylist(_this.imageMediaPlaylists[0])
79
+ .then(function () {
80
+ _this.isEnabled = true;
52
81
  MKLog_1.MKLog.debug("[MKThumbnailManager] Ready to serve thumbnails.");
53
82
  })
54
- .catch(() => {
83
+ .catch(function () {
55
84
  MKLog_1.MKLog.warn("[MKThumbnailManager] Failed to get images from playlist!");
56
85
  });
57
86
  }
58
87
  })
59
- .catch(() => {
88
+ .catch(function () {
60
89
  MKLog_1.MKLog.warn("[MKThumbnailManager] Failed to get image media playlist from master manifest!");
61
90
  });
62
- }
63
- disable() {
91
+ };
92
+ MKThumbnailManager.prototype.disable = function () {
64
93
  if (this.reloadPlaylistTimer) {
65
94
  clearTimeout(this.reloadPlaylistTimer);
66
95
  this.reloadPlaylistTimer = undefined;
67
96
  }
68
97
  this.httpRequest.cancelRequest();
69
98
  this.manifestUrl = "";
99
+ this.headers = undefined;
70
100
  this.imageMediaPlaylists = [];
71
101
  this.thumbnails = [];
72
102
  this.isEnabled = false;
73
103
  this.currentPlaylistData = "";
74
104
  this.targetDuration = 0;
75
105
  this.retryCount = 0;
76
- }
77
- fetchAndProcessImageMediaPlaylist(playlist) {
78
- return __awaiter(this, void 0, void 0, function* () {
79
- try {
80
- if (!!playlist.uri) {
81
- const playlistData = yield this.fetchManifest(playlist.uri);
82
- if (!!playlistData) {
83
- let tilesPlaylist = false;
84
- let tilesInfo = {
85
- duration: 0,
86
- width: 0,
87
- height: 0,
88
- rows: 0,
89
- columns: 0
90
- };
91
- let startTime = 0;
92
- let endTime = 0;
93
- let mediaDuration = 0;
94
- let thumbnails = [];
95
- let reloadPlaylist = true;
96
- let reloadPlaylistTimerTimeout = 0;
97
- if (this.currentPlaylistData !== playlistData) {
98
- this.currentPlaylistData = playlistData;
99
- const manifestLines = playlistData.split(/\n+/m);
100
- manifestLines.forEach((line) => {
101
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
102
- if (line.startsWith("#EXT-X-TARGETDURATION")) {
103
- this.targetDuration = parseInt((_a = line.split(":")[1]) !== null && _a !== void 0 ? _a : "0", 10);
104
- }
105
- if (line === "#EXT-X-PLAYLIST-TYPE:VOD" || line === "#EXT-X-ENDLIST") {
106
- reloadPlaylist = false;
107
- reloadPlaylistTimerTimeout = 0;
108
- }
109
- if (line.startsWith("#EXTINF")) {
110
- startTime = endTime;
111
- mediaDuration = parseFloat((_b = line.split(":")[1]) !== null && _b !== void 0 ? _b : "0.0");
112
- endTime = parseFloat((endTime + mediaDuration).toFixed(3));
113
- if (reloadPlaylist) {
114
- reloadPlaylistTimerTimeout = mediaDuration;
106
+ };
107
+ MKThumbnailManager.prototype.setHttpHeaders = function (headers) {
108
+ this.headers = headers !== null && headers !== void 0 ? headers : undefined;
109
+ };
110
+ MKThumbnailManager.prototype.fetchAndProcessImageMediaPlaylist = function (playlist) {
111
+ return __awaiter(this, void 0, void 0, function () {
112
+ var playlistData, tilesPlaylist_1, tilesInfo_1, startTime_1, endTime_1, mediaDuration_1, thumbnails_1, reloadPlaylist_1, reloadPlaylistTimerTimeout_1, manifestLines, error_2, errorCode;
113
+ var _this = this;
114
+ return __generator(this, function (_a) {
115
+ switch (_a.label) {
116
+ case 0:
117
+ _a.trys.push([0, 4, , 5]);
118
+ if (!!!playlist.uri) return [3, 2];
119
+ return [4, this.fetchManifest(playlist.uri)];
120
+ case 1:
121
+ playlistData = _a.sent();
122
+ if (!!playlistData) {
123
+ tilesPlaylist_1 = false;
124
+ tilesInfo_1 = {
125
+ duration: 0,
126
+ width: 0,
127
+ height: 0,
128
+ rows: 0,
129
+ columns: 0
130
+ };
131
+ startTime_1 = 0;
132
+ endTime_1 = 0;
133
+ mediaDuration_1 = 0;
134
+ thumbnails_1 = [];
135
+ reloadPlaylist_1 = true;
136
+ reloadPlaylistTimerTimeout_1 = 0;
137
+ if (this.currentPlaylistData !== playlistData) {
138
+ this.currentPlaylistData = playlistData;
139
+ manifestLines = playlistData.split(/\n+/m);
140
+ manifestLines.forEach(function (line) {
141
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
142
+ if (line.startsWith("#EXT-X-TARGETDURATION")) {
143
+ _this.targetDuration = parseInt((_a = line.split(":")[1]) !== null && _a !== void 0 ? _a : "0", 10);
115
144
  }
116
- }
117
- if (line.startsWith("#EXT-X-TILES")) {
118
- tilesPlaylist = true;
119
- tilesInfo.duration = line.includes("DURATION=") ? parseFloat((_d = (_c = line.split("DURATION=")[1]) === null || _c === void 0 ? void 0 : _c.split(",")[0]) !== null && _d !== void 0 ? _d : "0.0") : 0.0;
120
- let resolution = line.includes("RESOLUTION=") ? (_f = (_e = line.split("RESOLUTION=")[1]) === null || _e === void 0 ? void 0 : _e.split(",")[0]) !== null && _f !== void 0 ? _f : "" : "";
121
- if (!!resolution && resolution.includes("x")) {
122
- tilesInfo.width = parseInt((_g = resolution.split("x")[0]) !== null && _g !== void 0 ? _g : "0", 10);
123
- tilesInfo.height = parseInt((_h = resolution.split("x")[1]) !== null && _h !== void 0 ? _h : "0", 10);
145
+ if (line === "#EXT-X-PLAYLIST-TYPE:VOD" || line === "#EXT-X-ENDLIST") {
146
+ reloadPlaylist_1 = false;
147
+ reloadPlaylistTimerTimeout_1 = 0;
124
148
  }
125
- let layout = line.includes("LAYOUT=") ? (_k = (_j = line.split("LAYOUT=")[1]) === null || _j === void 0 ? void 0 : _j.split(",")[0]) !== null && _k !== void 0 ? _k : "" : "";
126
- if (!!layout && layout.includes("x")) {
127
- tilesInfo.columns = parseInt((_l = layout.split("x")[0]) !== null && _l !== void 0 ? _l : "0", 10);
128
- tilesInfo.rows = parseInt((_m = layout.split("x")[1]) !== null && _m !== void 0 ? _m : "0", 10);
149
+ if (line.startsWith("#EXTINF")) {
150
+ startTime_1 = endTime_1;
151
+ mediaDuration_1 = parseFloat((_b = line.split(":")[1]) !== null && _b !== void 0 ? _b : "0.0");
152
+ endTime_1 = parseFloat((endTime_1 + mediaDuration_1).toFixed(3));
153
+ if (reloadPlaylist_1) {
154
+ reloadPlaylistTimerTimeout_1 = mediaDuration_1;
155
+ }
129
156
  }
130
- }
131
- if (!line.startsWith("#")) {
132
- if (tilesPlaylist) {
133
- let tileImageStartTime = startTime;
134
- tileLoop: for (let row = 0; row < tilesInfo.rows; row++) {
135
- for (let col = 0; col < tilesInfo.columns; col++) {
136
- let tileImageEndTime = parseFloat((tileImageStartTime + tilesInfo.duration).toFixed(3));
137
- const thumbnail = {
138
- end: tileImageEndTime,
139
- height: tilesInfo.height,
140
- start: tileImageStartTime,
141
- text: "",
142
- url: new URL(line, this.manifestUrl).toString(),
143
- width: tilesInfo.width,
144
- x: col * tilesInfo.width,
145
- y: row * tilesInfo.height
146
- };
147
- thumbnails.push(thumbnail);
148
- tileImageStartTime = tileImageEndTime;
149
- if (tileImageEndTime >= endTime) {
150
- break tileLoop;
157
+ if (line.startsWith("#EXT-X-TILES")) {
158
+ tilesPlaylist_1 = true;
159
+ tilesInfo_1.duration = line.includes("DURATION=") ? parseFloat((_d = (_c = line.split("DURATION=")[1]) === null || _c === void 0 ? void 0 : _c.split(",")[0]) !== null && _d !== void 0 ? _d : "0.0") : 0.0;
160
+ var resolution = line.includes("RESOLUTION=") ? (_f = (_e = line.split("RESOLUTION=")[1]) === null || _e === void 0 ? void 0 : _e.split(",")[0]) !== null && _f !== void 0 ? _f : "" : "";
161
+ if (!!resolution && resolution.includes("x")) {
162
+ tilesInfo_1.width = parseInt((_g = resolution.split("x")[0]) !== null && _g !== void 0 ? _g : "0", 10);
163
+ tilesInfo_1.height = parseInt((_h = resolution.split("x")[1]) !== null && _h !== void 0 ? _h : "0", 10);
164
+ }
165
+ var layout = line.includes("LAYOUT=") ? (_k = (_j = line.split("LAYOUT=")[1]) === null || _j === void 0 ? void 0 : _j.split(",")[0]) !== null && _k !== void 0 ? _k : "" : "";
166
+ if (!!layout && layout.includes("x")) {
167
+ tilesInfo_1.columns = parseInt((_l = layout.split("x")[0]) !== null && _l !== void 0 ? _l : "0", 10);
168
+ tilesInfo_1.rows = parseInt((_m = layout.split("x")[1]) !== null && _m !== void 0 ? _m : "0", 10);
169
+ }
170
+ }
171
+ if (!line.startsWith("#")) {
172
+ if (tilesPlaylist_1) {
173
+ var tileImageStartTime = startTime_1;
174
+ tileLoop: for (var row = 0; row < tilesInfo_1.rows; row++) {
175
+ for (var col = 0; col < tilesInfo_1.columns; col++) {
176
+ var tileImageEndTime = parseFloat((tileImageStartTime + tilesInfo_1.duration).toFixed(3));
177
+ var thumbnail = {
178
+ end: tileImageEndTime,
179
+ height: tilesInfo_1.height,
180
+ start: tileImageStartTime,
181
+ text: "",
182
+ url: new URL(line, _this.manifestUrl).toString(),
183
+ width: tilesInfo_1.width,
184
+ x: col * tilesInfo_1.width,
185
+ y: row * tilesInfo_1.height
186
+ };
187
+ thumbnails_1.push(thumbnail);
188
+ tileImageStartTime = tileImageEndTime;
189
+ if (tileImageEndTime >= endTime_1) {
190
+ break tileLoop;
191
+ }
151
192
  }
152
193
  }
153
194
  }
195
+ else {
196
+ var thumbnail = {
197
+ end: endTime_1,
198
+ height: playlist.height,
199
+ start: startTime_1,
200
+ text: "",
201
+ url: new URL(line, _this.manifestUrl).toString(),
202
+ width: playlist.width,
203
+ x: 0,
204
+ y: 0
205
+ };
206
+ thumbnails_1.push(thumbnail);
207
+ }
154
208
  }
155
- else {
156
- const thumbnail = {
157
- end: endTime,
158
- height: playlist.height,
159
- start: startTime,
160
- text: "",
161
- url: new URL(line, this.manifestUrl).toString(),
162
- width: playlist.width,
163
- x: 0,
164
- y: 0
165
- };
166
- thumbnails.push(thumbnail);
167
- }
209
+ });
210
+ if (thumbnails_1.length > 0) {
211
+ this.thumbnails = thumbnails_1;
168
212
  }
169
- });
170
- if (thumbnails.length > 0) {
171
- this.thumbnails = thumbnails;
213
+ }
214
+ else {
215
+ reloadPlaylistTimerTimeout_1 = (this.targetDuration / 2);
216
+ }
217
+ if (reloadPlaylist_1 && reloadPlaylistTimerTimeout_1 > 0) {
218
+ this.reloadImageMediaPlaylist(playlist, reloadPlaylistTimerTimeout_1);
172
219
  }
173
220
  }
174
221
  else {
175
- reloadPlaylistTimerTimeout = (this.targetDuration / 2);
222
+ throw new Error("Invalid image playlist data.");
176
223
  }
177
- if (reloadPlaylist && reloadPlaylistTimerTimeout > 0) {
178
- this.reloadImageMediaPlaylist(playlist, reloadPlaylistTimerTimeout);
224
+ return [3, 3];
225
+ case 2: throw new Error("Invalid image playlist url.");
226
+ case 3: return [3, 5];
227
+ case 4:
228
+ error_2 = _a.sent();
229
+ if (error_2 instanceof error_1.MKHttpError) {
230
+ if (error_2.code === constants_1.MKCustomError.HttpAbort.code) {
231
+ return [2];
232
+ }
233
+ errorCode = parseInt(error_2.code);
234
+ if (errorCode >= 400 || errorCode <= 599) {
235
+ this.refetchAndProcessImageMediaPlaylistOnError(playlist);
236
+ }
179
237
  }
180
- }
181
- else {
182
- throw new Error("Invalid image playlist data.");
183
- }
184
- }
185
- else {
186
- throw new Error("Invalid image playlist url.");
187
- }
188
- }
189
- catch (error) {
190
- if (error instanceof error_1.MKHttpError) {
191
- if (error.code === constants_1.MKCustomError.HttpAbort.code) {
192
- return;
193
- }
194
- const errorCode = parseInt(error.code);
195
- if (errorCode >= 400 || errorCode <= 599) {
196
- this.refetchAndProcessImageMediaPlaylistOnError(playlist);
197
- }
198
- }
199
- else {
200
- throw error;
238
+ else {
239
+ throw error_2;
240
+ }
241
+ return [3, 5];
242
+ case 5: return [2];
201
243
  }
202
- }
244
+ });
203
245
  });
204
- }
205
- reloadImageMediaPlaylist(playlist, timeout) {
206
- const timeoutSeconds = timeout * 1000;
246
+ };
247
+ MKThumbnailManager.prototype.reloadImageMediaPlaylist = function (playlist, timeout) {
248
+ var _this = this;
249
+ var timeoutSeconds = timeout * 1000;
207
250
  if (this.reloadPlaylistTimer) {
208
251
  clearTimeout(this.reloadPlaylistTimer);
209
252
  this.reloadPlaylistTimer = undefined;
210
253
  }
211
- this.reloadPlaylistTimer = setTimeout(() => {
212
- this.fetchAndProcessImageMediaPlaylist(playlist)
213
- .catch(() => {
254
+ this.reloadPlaylistTimer = setTimeout(function () {
255
+ _this.fetchAndProcessImageMediaPlaylist(playlist)
256
+ .catch(function () {
214
257
  MKLog_1.MKLog.warn("[MKThumbnailManager] Failed to get images from playlist!");
215
258
  });
216
259
  }, timeoutSeconds);
217
- }
218
- refetchAndProcessImageMediaPlaylistOnError(playlist) {
260
+ };
261
+ MKThumbnailManager.prototype.refetchAndProcessImageMediaPlaylistOnError = function (playlist) {
219
262
  if (this.retryCount < MKThumbnailManager.PLAYLIST_MAX_RETRY_COUNT) {
220
263
  this.retryCount++;
221
- const retryAfter = this.retryCount * 2;
222
- MKLog_1.MKLog.warn(`[MKThumbnailManager] Playlist retry attempt: ${this.retryCount} in ${retryAfter} seconds.`);
264
+ var retryAfter = this.retryCount * 2;
265
+ MKLog_1.MKLog.warn("[MKThumbnailManager] Playlist retry attempt: ".concat(this.retryCount, " in ").concat(retryAfter, " seconds."));
223
266
  this.reloadImageMediaPlaylist(playlist, retryAfter);
224
267
  }
225
268
  else {
226
- MKLog_1.MKLog.warn(`[MKThumbnailManager] Reached max retry limit for playlist with URL: ${playlist.uri}`);
269
+ MKLog_1.MKLog.warn("[MKThumbnailManager] Reached max retry limit for playlist with URL: ".concat(playlist.uri));
227
270
  this.disable();
228
271
  }
229
- }
230
- fetchImageMediaPlaylists() {
231
- return __awaiter(this, void 0, void 0, function* () {
232
- try {
233
- this.imageMediaPlaylists = [];
234
- const manifestData = yield this.fetchManifest(this.manifestUrl);
235
- if (!!manifestData) {
236
- const manifestLines = manifestData.split(/\n+/m);
237
- manifestLines.forEach((line) => {
238
- var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
239
- if (!!line && line.trim().startsWith("#EXT-X-IMAGE-STREAM-INF")) {
240
- const playlistInfo = line.trim();
241
- const bandwidth = playlistInfo.includes("BANDWIDTH=") ? parseInt((_b = (_a = playlistInfo.split("BANDWIDTH=")[1]) === null || _a === void 0 ? void 0 : _a.split(",")[0]) !== null && _b !== void 0 ? _b : "0", 10) : 0;
242
- const averageBandwidth = playlistInfo.includes("AVERAGE-BANDWIDTH=") ? parseInt((_d = (_c = playlistInfo.split("AVERAGE-BANDWIDTH=")[1]) === null || _c === void 0 ? void 0 : _c.split(",")[0]) !== null && _d !== void 0 ? _d : "0", 10) : 0;
243
- const resolution = playlistInfo.includes("RESOLUTION=") ? (_f = (_e = playlistInfo.split("RESOLUTION=")[1]) === null || _e === void 0 ? void 0 : _e.split(",")[0]) !== null && _f !== void 0 ? _f : "" : "";
244
- let width = 0;
245
- let height = 0;
246
- if (!!resolution && resolution.includes("x")) {
247
- width = parseInt((_g = resolution.split("x")[0]) !== null && _g !== void 0 ? _g : "0", 10);
248
- height = parseInt((_h = resolution.split("x")[1]) !== null && _h !== void 0 ? _h : "0", 10);
249
- }
250
- const codecs = playlistInfo.includes("CODECS=") ? JSON.parse((_k = (_j = playlistInfo.split("CODECS=")[1]) === null || _j === void 0 ? void 0 : _j.split(",")[0]) !== null && _k !== void 0 ? _k : "") : "";
251
- const uri = new URL(playlistInfo.includes("URI=") ? JSON.parse((_m = (_l = playlistInfo.split("URI=")[1]) === null || _l === void 0 ? void 0 : _l.split(",")[0]) !== null && _m !== void 0 ? _m : "") : "", this.manifestUrl).toString();
252
- const imagePlaylist = {
253
- bandwidth: bandwidth,
254
- averageBandwidth: averageBandwidth,
255
- resolution: resolution,
256
- width: width,
257
- height: height,
258
- codecs: codecs,
259
- uri: uri
260
- };
261
- this.imageMediaPlaylists.push(imagePlaylist);
272
+ };
273
+ MKThumbnailManager.prototype.fetchImageMediaPlaylists = function () {
274
+ return __awaiter(this, void 0, void 0, function () {
275
+ var manifestData, manifestLines, error_3;
276
+ var _this = this;
277
+ return __generator(this, function (_a) {
278
+ switch (_a.label) {
279
+ case 0:
280
+ _a.trys.push([0, 2, , 3]);
281
+ this.imageMediaPlaylists = [];
282
+ return [4, this.fetchManifest(this.manifestUrl)];
283
+ case 1:
284
+ manifestData = _a.sent();
285
+ if (!!manifestData) {
286
+ manifestLines = manifestData.split(/\n+/m);
287
+ manifestLines.forEach(function (line) {
288
+ var _a, _b, _c, _d, _e, _f, _g, _h, _j, _k, _l, _m;
289
+ if (!!line && line.trim().startsWith("#EXT-X-IMAGE-STREAM-INF")) {
290
+ var playlistInfo = line.trim();
291
+ var bandwidth = playlistInfo.includes("BANDWIDTH=") ? parseInt((_b = (_a = playlistInfo.split("BANDWIDTH=")[1]) === null || _a === void 0 ? void 0 : _a.split(",")[0]) !== null && _b !== void 0 ? _b : "0", 10) : 0;
292
+ var averageBandwidth = playlistInfo.includes("AVERAGE-BANDWIDTH=") ? parseInt((_d = (_c = playlistInfo.split("AVERAGE-BANDWIDTH=")[1]) === null || _c === void 0 ? void 0 : _c.split(",")[0]) !== null && _d !== void 0 ? _d : "0", 10) : 0;
293
+ var resolution = playlistInfo.includes("RESOLUTION=") ? (_f = (_e = playlistInfo.split("RESOLUTION=")[1]) === null || _e === void 0 ? void 0 : _e.split(",")[0]) !== null && _f !== void 0 ? _f : "" : "";
294
+ var width = 0;
295
+ var height = 0;
296
+ if (!!resolution && resolution.includes("x")) {
297
+ width = parseInt((_g = resolution.split("x")[0]) !== null && _g !== void 0 ? _g : "0", 10);
298
+ height = parseInt((_h = resolution.split("x")[1]) !== null && _h !== void 0 ? _h : "0", 10);
299
+ }
300
+ var codecs = playlistInfo.includes("CODECS=") ? JSON.parse((_k = (_j = playlistInfo.split("CODECS=")[1]) === null || _j === void 0 ? void 0 : _j.split(",")[0]) !== null && _k !== void 0 ? _k : "") : "";
301
+ var uri = new URL(playlistInfo.includes("URI=") ? JSON.parse((_m = (_l = playlistInfo.split("URI=")[1]) === null || _l === void 0 ? void 0 : _l.split(",")[0]) !== null && _m !== void 0 ? _m : "") : "", _this.manifestUrl).toString();
302
+ var imagePlaylist = {
303
+ bandwidth: bandwidth,
304
+ averageBandwidth: averageBandwidth,
305
+ resolution: resolution,
306
+ width: width,
307
+ height: height,
308
+ codecs: codecs,
309
+ uri: uri
310
+ };
311
+ _this.imageMediaPlaylists.push(imagePlaylist);
312
+ }
313
+ });
262
314
  }
263
- });
264
- }
265
- else {
266
- throw new Error("Invalid manfiest data.");
267
- }
268
- }
269
- catch (error) {
270
- if (error instanceof error_1.MKHttpError && error.code === constants_1.MKCustomError.HttpAbort.code) {
271
- return;
315
+ else {
316
+ throw new Error("Invalid manfiest data.");
317
+ }
318
+ return [3, 3];
319
+ case 2:
320
+ error_3 = _a.sent();
321
+ if (error_3 instanceof error_1.MKHttpError && error_3.code === constants_1.MKCustomError.HttpAbort.code) {
322
+ return [2];
323
+ }
324
+ throw error_3;
325
+ case 3: return [2];
272
326
  }
273
- throw error;
274
- }
327
+ });
275
328
  });
276
- }
277
- fetchManifest(manifestUrl) {
278
- return __awaiter(this, void 0, void 0, function* () {
279
- return this.httpRequest.get(manifestUrl)
280
- .then((response) => {
281
- if (!response.ok) {
282
- throw new error_1.MKHttpError({
283
- code: response.status.toString(),
284
- message: constants_1.MKCustomError.Http.message
285
- });
286
- }
287
- return response.text();
288
- })
289
- .then((responseText) => {
290
- return responseText.replace(/\r\n|\r(?=[^\n]|$)/gm, '\n').trim();
291
- })
292
- .catch((error) => {
293
- throw error;
329
+ };
330
+ MKThumbnailManager.prototype.fetchManifest = function (manifestUrl) {
331
+ return __awaiter(this, void 0, void 0, function () {
332
+ return __generator(this, function (_a) {
333
+ return [2, this.httpRequest.get(manifestUrl, { headers: this.headers })
334
+ .then(function (response) {
335
+ if (!response.ok) {
336
+ throw new error_1.MKHttpError({
337
+ code: response.status.toString(),
338
+ message: constants_1.MKCustomError.Http.message
339
+ });
340
+ }
341
+ return response.text();
342
+ })
343
+ .then(function (responseText) {
344
+ return responseText.replace(/\r\n|\r(?=[^\n]|$)/gm, '\n').trim();
345
+ })
346
+ .catch(function (error) {
347
+ throw error;
348
+ })];
294
349
  });
295
350
  });
296
- }
297
- }
298
- exports.MKThumbnailManager = MKThumbnailManager;
299
- MKThumbnailManager.PLAYLIST_MAX_RETRY_COUNT = 3;
351
+ };
352
+ MKThumbnailManager.PLAYLIST_MAX_RETRY_COUNT = 3;
353
+ return MKThumbnailManager;
354
+ }());
300
355
  //# sourceMappingURL=MKThumbnailManager.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"MKThumbnailManager.js","sourceRoot":"","sources":["../../../../../src/classes/common/MKThumbnailManager.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MKThumbnailManager.js","sourceRoot":"","sources":["../../../../../src/classes/common/MKThumbnailManager.ts"],"names":[],"mappings":"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"}