@mediakind/mkplayer 1.0.15 → 1.0.17

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 (67) hide show
  1. package/README.md +8 -2
  2. package/dist/LabelConfig.d.ts +4 -0
  3. package/dist/MKPlayer.d.ts +1 -2
  4. package/dist/MKPlayerConfiguration.d.ts +2 -2
  5. package/dist/MKStream.d.ts +7 -1
  6. package/dist/URLHelper.d.ts +1 -0
  7. package/dist/events/UrlType.d.ts +4 -0
  8. package/dist/lib/LabelConfig.d.ts +4 -0
  9. package/dist/lib/LabelConfig.js +3 -0
  10. package/dist/lib/LabelConfig.js.map +1 -0
  11. package/dist/lib/MKPlayer.d.ts +1 -2
  12. package/dist/lib/MKPlayer.js +39 -35
  13. package/dist/lib/MKPlayer.js.map +1 -1
  14. package/dist/lib/MKPlayerConfiguration.d.ts +2 -2
  15. package/dist/lib/MKStream.d.ts +7 -1
  16. package/dist/lib/MKStream.js +20 -1
  17. package/dist/lib/MKStream.js.map +1 -1
  18. package/dist/lib/URLHelper.d.ts +1 -0
  19. package/dist/lib/URLHelper.js +19 -0
  20. package/dist/lib/URLHelper.js.map +1 -1
  21. package/dist/lib/events/UrlType.d.ts +4 -0
  22. package/dist/lib/events/UrlType.js +9 -0
  23. package/dist/lib/events/UrlType.js.map +1 -0
  24. package/dist/lib-esm/LabelConfig.d.ts +4 -0
  25. package/dist/lib-esm/LabelConfig.js +2 -0
  26. package/dist/lib-esm/LabelConfig.js.map +1 -0
  27. package/dist/lib-esm/MKPlayer.d.ts +1 -2
  28. package/dist/lib-esm/MKPlayer.js +39 -35
  29. package/dist/lib-esm/MKPlayer.js.map +1 -1
  30. package/dist/lib-esm/MKPlayerConfiguration.d.ts +2 -2
  31. package/dist/lib-esm/MKStream.d.ts +7 -1
  32. package/dist/lib-esm/MKStream.js +20 -1
  33. package/dist/lib-esm/MKStream.js.map +1 -1
  34. package/dist/lib-esm/URLHelper.d.ts +1 -0
  35. package/dist/lib-esm/URLHelper.js +19 -0
  36. package/dist/lib-esm/URLHelper.js.map +1 -1
  37. package/dist/lib-esm/events/UrlType.d.ts +4 -0
  38. package/dist/lib-esm/events/UrlType.js +6 -0
  39. package/dist/lib-esm/events/UrlType.js.map +1 -0
  40. package/dist/mkplayer.js +1 -1
  41. package/doc/assets/js/search.json +1 -1
  42. package/doc/classes/mkplayer.html +22 -16
  43. package/doc/enums/mkevent.html +6 -0
  44. package/doc/enums/urltype.html +180 -0
  45. package/doc/globals.html +8 -0
  46. package/doc/index.html +14 -2
  47. package/doc/interfaces/bufferlevel.html +6 -0
  48. package/doc/interfaces/labelconfig.html +198 -0
  49. package/doc/interfaces/mkplayereventcallback.html +6 -0
  50. package/doc/interfaces/subtitletrack.html +6 -0
  51. package/index.html +11 -11
  52. package/multi-camera.html +1 -1
  53. package/package.json +1 -1
  54. package/src/LabelConfig.ts +14 -0
  55. package/src/MKPlayer.ts +37 -36
  56. package/src/MKPlayerConfiguration.ts +2 -2
  57. package/src/MKStream.ts +27 -1
  58. package/src/URLHelper.ts +17 -1
  59. package/src/events/UrlType.ts +7 -0
  60. package/dist/events/RequestType.d.ts +0 -4
  61. package/dist/lib/events/RequestType.d.ts +0 -4
  62. package/dist/lib/events/RequestType.js +0 -9
  63. package/dist/lib/events/RequestType.js.map +0 -1
  64. package/dist/lib-esm/events/RequestType.d.ts +0 -4
  65. package/dist/lib-esm/events/RequestType.js +0 -6
  66. package/dist/lib-esm/events/RequestType.js.map +0 -1
  67. package/src/events/RequestType.ts +0 -5
package/README.md CHANGED
@@ -26,9 +26,9 @@ var mkPlayerConfiguration = {
26
26
  key: 'YOUR-KEY',
27
27
 
28
28
  refreshToken: (type) => {
29
- if (type === 'master') {
29
+ if (type === 'primary') {
30
30
  return 'hdnts=1234566787888'
31
- }else if (type === 'variant') {
31
+ }else if (type === 'secondary') {
32
32
  return 'hdnts=jadfjahdfjahdsfjh'
33
33
  }
34
34
  },
@@ -53,6 +53,12 @@ let mkStream = {
53
53
  customData3: 'customData3',
54
54
  customData4: 'customData4',
55
55
  customData5: 'customData5',
56
+
57
+ // Optional label config
58
+ labelConfig: {
59
+ audio: {'en': 'English', 'mis': 'Audio Descriptions'},
60
+ captions: {'ENG': 'English', 'GER': 'German'},
61
+ }
56
62
  }
57
63
 
58
64
  mkPlayer.load(mkStream).then(function() {
@@ -0,0 +1,4 @@
1
+ export interface LabelConfig {
2
+ audio?: Map<string, string>;
3
+ captions?: Map<string, string>;
4
+ }
@@ -23,10 +23,9 @@ export declare class MKPlayer {
23
23
  unmute(): void;
24
24
  setVolume(volume: number): void;
25
25
  version(): string;
26
- private static selectUrl;
26
+ private selectUrl;
27
27
  private static getRandomInt;
28
28
  private static makeId;
29
29
  private static mapEvent;
30
30
  private manipulateMasterPlaylist;
31
- private appendToken;
32
31
  }
@@ -1,4 +1,4 @@
1
- import { RequestType } from './events/RequestType';
1
+ import { UrlType } from './events/UrlType';
2
2
  export interface MKPlayerConfiguration {
3
3
  debug: boolean;
4
4
  autoplay: boolean;
@@ -7,5 +7,5 @@ export interface MKPlayerConfiguration {
7
7
  ui: boolean;
8
8
  targetLatency: number;
9
9
  key: string;
10
- refreshToken?: (type: RequestType) => string;
10
+ refreshToken?: (type: UrlType) => string;
11
11
  }
@@ -1,4 +1,5 @@
1
1
  import { SubtitleTrack } from './SubtitleTrack';
2
+ import { LabelConfig } from './LabelConfig';
2
3
  export declare class MKStream {
3
4
  private readonly _assetIdentifier;
4
5
  private readonly _primaryUrl?;
@@ -12,7 +13,9 @@ export declare class MKStream {
12
13
  private readonly _customData3;
13
14
  private readonly _customData4;
14
15
  private readonly _customData5;
15
- constructor(primaryUrl: string, assetIdentifier: string, subtitleTracks?: SubtitleTrack[], poster?: string, secondaryUrl?: string, cdnFailoverPercent?: number, userId?: string, customData1?: string, customData2?: string, customData3?: string, customData4?: string, customData5?: string);
16
+ private readonly _labelConfig;
17
+ private _didFailOver;
18
+ constructor(primaryUrl: string, assetIdentifier: string, subtitleTracks?: SubtitleTrack[], poster?: string, secondaryUrl?: string, cdnFailoverPercent?: number, userId?: string, customData1?: string, customData2?: string, customData3?: string, customData4?: string, customData5?: string, labelConfig?: LabelConfig);
16
19
  get cdnFailoverPercent(): number;
17
20
  get primaryUrl(): string;
18
21
  get secondaryUrl(): string;
@@ -25,4 +28,7 @@ export declare class MKStream {
25
28
  get customData4(): string;
26
29
  get customData5(): string;
27
30
  get userId(): string;
31
+ get labelConfig(): LabelConfig;
32
+ get didFailOver(): boolean;
33
+ set didFailOver(value: boolean);
28
34
  }
@@ -1,4 +1,5 @@
1
1
  export declare class URLHelper {
2
2
  static appendQueryParametersToUrl(url: string, parameters: Map<string, string>): string;
3
3
  static removeUrlParameter(url: string, parameter: string): string;
4
+ static appendToken(url: string, token: string): string;
4
5
  }
@@ -0,0 +1,4 @@
1
+ export declare enum UrlType {
2
+ Primary = "primary",
3
+ Secondary = "secondary"
4
+ }
@@ -0,0 +1,4 @@
1
+ export interface LabelConfig {
2
+ audio?: Map<string, string>;
3
+ captions?: Map<string, string>;
4
+ }
@@ -0,0 +1,3 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ //# sourceMappingURL=LabelConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LabelConfig.js","sourceRoot":"","sources":["../../src/LabelConfig.ts"],"names":[],"mappings":""}
@@ -23,10 +23,9 @@ export declare class MKPlayer {
23
23
  unmute(): void;
24
24
  setVolume(volume: number): void;
25
25
  version(): string;
26
- private static selectUrl;
26
+ private selectUrl;
27
27
  private static getRandomInt;
28
28
  private static makeId;
29
29
  private static mapEvent;
30
30
  private manipulateMasterPlaylist;
31
- private appendToken;
32
31
  }
@@ -5,7 +5,7 @@ var bitmovin_player_1 = require("bitmovin-player");
5
5
  var bitmovin_player_ui_1 = require("bitmovin-player-ui");
6
6
  var MKEvent_1 = require("./events/MKEvent");
7
7
  var Logger_1 = require("./Logger");
8
- var RequestType_1 = require("./events/RequestType");
8
+ var UrlType_1 = require("./events/UrlType");
9
9
  var URLHelper_1 = require("./URLHelper");
10
10
  var MKPlayer = (function () {
11
11
  function MKPlayer(containerElement, mkPlayerConfiguration) {
@@ -28,18 +28,12 @@ var MKPlayer = (function () {
28
28
  },
29
29
  network: {
30
30
  preprocessHttpRequest: function (type, request) {
31
- if (type === 'manifest/hls/master') {
31
+ if (type === 'manifest/hls/master' || type === 'manifest/hls/variant') {
32
32
  if (typeof mkPlayerConfiguration.refreshToken === 'function') {
33
- var token = mkPlayerConfiguration.refreshToken(RequestType_1.RequestType.Master);
34
- console.log('[MKPlayer] Appending master token: ' + token);
35
- request.url = _this.appendToken(request.url, token);
36
- }
37
- }
38
- else if (type === 'manifest/hls/variant') {
39
- if (typeof mkPlayerConfiguration.refreshToken === 'function') {
40
- var token = mkPlayerConfiguration.refreshToken(RequestType_1.RequestType.Variant);
41
- console.log('[MKPlayer] Appending variant token: ' + token);
42
- request.url = _this.appendToken(request.url, token);
33
+ var urlType = _this.stream.didFailOver ? UrlType_1.UrlType.Secondary : UrlType_1.UrlType.Primary;
34
+ var token = mkPlayerConfiguration.refreshToken(urlType);
35
+ console.log('[MKPlayer] Appending ' + urlType + ' token: ' + token);
36
+ request.url = URLHelper_1.URLHelper.appendToken(request.url, token);
43
37
  }
44
38
  }
45
39
  return Promise.resolve(request);
@@ -95,9 +89,10 @@ var MKPlayer = (function () {
95
89
  return this.player.destroy();
96
90
  };
97
91
  MKPlayer.prototype.load = function (stream) {
92
+ var _this = this;
98
93
  var playerSource;
99
94
  this.stream = stream;
100
- var url = MKPlayer.selectUrl(stream);
95
+ var url = this.selectUrl();
101
96
  if (url.includes('.m3u8')) {
102
97
  playerSource = {
103
98
  hls: url,
@@ -116,6 +111,27 @@ var MKPlayer = (function () {
116
111
  if (stream.poster) {
117
112
  playerSource.poster = stream.poster;
118
113
  }
114
+ playerSource.labeling = {
115
+ hls: {
116
+ tracks: function (track) {
117
+ if (_this.stream.labelConfig && _this.stream.labelConfig.audio && _this.stream.labelConfig.audio[track.lang]) {
118
+ return _this.stream.labelConfig.audio[track.lang];
119
+ }
120
+ else {
121
+ return track.lang;
122
+ }
123
+ },
124
+ subtitles: function (track) {
125
+ console.log(track);
126
+ if (_this.stream.labelConfig && _this.stream.labelConfig.captions && _this.stream.labelConfig.captions[track.lang]) {
127
+ return _this.stream.labelConfig.captions[track.lang];
128
+ }
129
+ else {
130
+ return track.lang;
131
+ }
132
+ },
133
+ },
134
+ };
119
135
  if (stream.assetIdentifier) {
120
136
  playerSource.analytics = {
121
137
  videoId: stream.assetIdentifier,
@@ -177,17 +193,19 @@ var MKPlayer = (function () {
177
193
  this.player.setVolume(volume);
178
194
  };
179
195
  MKPlayer.prototype.version = function () {
180
- return '1.0.15';
196
+ return '1.0.16';
181
197
  };
182
- MKPlayer.selectUrl = function (source) {
198
+ MKPlayer.prototype.selectUrl = function () {
183
199
  var rand = MKPlayer.getRandomInt(99);
184
- if (source.cdnFailoverPercent && source.secondaryUrl && rand < source.cdnFailoverPercent) {
185
- Logger_1.Logger.log('[MKPlayer] selecting secondary source url - ' + source.secondaryUrl);
186
- return source.secondaryUrl;
200
+ if (this.stream.cdnFailoverPercent && this.stream.secondaryUrl && rand < this.stream.cdnFailoverPercent) {
201
+ Logger_1.Logger.log('[MKPlayer] selecting secondary source url - ' + this.stream.secondaryUrl);
202
+ this.stream.didFailOver = true;
203
+ return this.stream.secondaryUrl;
187
204
  }
188
205
  else {
189
- Logger_1.Logger.log('[MKPlayer] selecting primary source url - ' + source.primaryUrl);
190
- return source.primaryUrl;
206
+ Logger_1.Logger.log('[MKPlayer] selecting primary source url - ' + this.stream.primaryUrl);
207
+ this.stream.didFailOver = false;
208
+ return this.stream.primaryUrl;
191
209
  }
192
210
  };
193
211
  MKPlayer.getRandomInt = function (max) {
@@ -259,26 +277,12 @@ var MKPlayer = (function () {
259
277
  + 'DEFAULT=YES,'
260
278
  + 'AUTOSELECT=YES,'
261
279
  + 'FORCED=NO,'
262
- + 'LANGUAGE="' + track.language + '",GROUP-ID="subs",'
280
+ + 'LANGUAGE="' + track.language + '",GROUP-ID="Subtitles",'
263
281
  + 'URI="' + track.url + '"');
264
282
  });
265
283
  }
266
284
  return body;
267
285
  };
268
- MKPlayer.prototype.appendToken = function (url, token) {
269
- var splitted = token.split('=');
270
- if (splitted && splitted.length >= 2) {
271
- var key = splitted[0];
272
- var value = splitted[1];
273
- var params = new Map();
274
- params.set(key, value);
275
- var updatedUrl = URLHelper_1.URLHelper.appendQueryParametersToUrl(url, params);
276
- return updatedUrl;
277
- }
278
- else {
279
- return url;
280
- }
281
- };
282
286
  return MKPlayer;
283
287
  }());
284
288
  exports.MKPlayer = MKPlayer;
@@ -1 +1 @@
1
- {"version":3,"file":"MKPlayer.js","sourceRoot":"","sources":["../../src/MKPlayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"MKPlayer.js","sourceRoot":"","sources":["../../src/MKPlayer.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,4 @@
1
- import { RequestType } from './events/RequestType';
1
+ import { UrlType } from './events/UrlType';
2
2
  export interface MKPlayerConfiguration {
3
3
  debug: boolean;
4
4
  autoplay: boolean;
@@ -7,5 +7,5 @@ export interface MKPlayerConfiguration {
7
7
  ui: boolean;
8
8
  targetLatency: number;
9
9
  key: string;
10
- refreshToken?: (type: RequestType) => string;
10
+ refreshToken?: (type: UrlType) => string;
11
11
  }
@@ -1,4 +1,5 @@
1
1
  import { SubtitleTrack } from './SubtitleTrack';
2
+ import { LabelConfig } from './LabelConfig';
2
3
  export declare class MKStream {
3
4
  private readonly _assetIdentifier;
4
5
  private readonly _primaryUrl?;
@@ -12,7 +13,9 @@ export declare class MKStream {
12
13
  private readonly _customData3;
13
14
  private readonly _customData4;
14
15
  private readonly _customData5;
15
- constructor(primaryUrl: string, assetIdentifier: string, subtitleTracks?: SubtitleTrack[], poster?: string, secondaryUrl?: string, cdnFailoverPercent?: number, userId?: string, customData1?: string, customData2?: string, customData3?: string, customData4?: string, customData5?: string);
16
+ private readonly _labelConfig;
17
+ private _didFailOver;
18
+ constructor(primaryUrl: string, assetIdentifier: string, subtitleTracks?: SubtitleTrack[], poster?: string, secondaryUrl?: string, cdnFailoverPercent?: number, userId?: string, customData1?: string, customData2?: string, customData3?: string, customData4?: string, customData5?: string, labelConfig?: LabelConfig);
16
19
  get cdnFailoverPercent(): number;
17
20
  get primaryUrl(): string;
18
21
  get secondaryUrl(): string;
@@ -25,4 +28,7 @@ export declare class MKStream {
25
28
  get customData4(): string;
26
29
  get customData5(): string;
27
30
  get userId(): string;
31
+ get labelConfig(): LabelConfig;
32
+ get didFailOver(): boolean;
33
+ set didFailOver(value: boolean);
28
34
  }
@@ -2,8 +2,9 @@
2
2
  Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.MKStream = void 0;
4
4
  var MKStream = (function () {
5
- function MKStream(primaryUrl, assetIdentifier, subtitleTracks, poster, secondaryUrl, cdnFailoverPercent, userId, customData1, customData2, customData3, customData4, customData5) {
5
+ function MKStream(primaryUrl, assetIdentifier, subtitleTracks, poster, secondaryUrl, cdnFailoverPercent, userId, customData1, customData2, customData3, customData4, customData5, labelConfig) {
6
6
  this._cdnFailoverPercent = 0;
7
+ this._didFailOver = false;
7
8
  this._cdnFailoverPercent = cdnFailoverPercent;
8
9
  this._secondaryUrl = secondaryUrl;
9
10
  this._primaryUrl = primaryUrl;
@@ -16,6 +17,7 @@ var MKStream = (function () {
16
17
  this._customData3 = customData3;
17
18
  this._customData4 = customData4;
18
19
  this._customData5 = customData5;
20
+ this._labelConfig = labelConfig;
19
21
  }
20
22
  Object.defineProperty(MKStream.prototype, "cdnFailoverPercent", {
21
23
  get: function () {
@@ -101,6 +103,23 @@ var MKStream = (function () {
101
103
  enumerable: false,
102
104
  configurable: true
103
105
  });
106
+ Object.defineProperty(MKStream.prototype, "labelConfig", {
107
+ get: function () {
108
+ return this._labelConfig;
109
+ },
110
+ enumerable: false,
111
+ configurable: true
112
+ });
113
+ Object.defineProperty(MKStream.prototype, "didFailOver", {
114
+ get: function () {
115
+ return this._didFailOver;
116
+ },
117
+ set: function (value) {
118
+ this._didFailOver = value;
119
+ },
120
+ enumerable: false,
121
+ configurable: true
122
+ });
104
123
  return MKStream;
105
124
  }());
106
125
  exports.MKStream = MKStream;
@@ -1 +1 @@
1
- {"version":3,"file":"MKStream.js","sourceRoot":"","sources":["../../src/MKStream.ts"],"names":[],"mappings":";;;AAKA;IAwBE,kBAAY,UAAkB,EAAE,eAAuB,EAAE,cAAgC,EAAE,MAAe,EAAE,YAAqB,EAAE,kBAA2B,EAAE,MAAe,EAAE,WAAoB,EAAE,WAAoB,EAAE,WAAoB,EAAE,WAAoB,EAAE,WAAoB;QAnB5Q,wBAAmB,GAAW,CAAC,CAAC;QAoB/C,IAAI,CAAC,mBAAmB,GAAG,kBAAkB,CAAC;QAC9C,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IAClC,CAAC;IAKD,sBAAW,wCAAkB;aAA7B;YACE,OAAO,IAAI,CAAC,mBAAmB,CAAC;QAClC,CAAC;;;OAAA;IAKD,sBAAW,gCAAU;aAArB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;;;OAAA;IAKD,sBAAW,kCAAY;aAAvB;YACE,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;;;OAAA;IAKD,sBAAW,oCAAc;aAAzB;YACE,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;;;OAAA;IAKD,sBAAW,qCAAe;aAA1B;YACE,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;;;OAAA;IAKD,sBAAW,4BAAM;aAAjB;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,4BAAM;aAAjB;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;;;OAAA;IACH,eAAC;AAAD,CAAC,AA1HD,IA0HC;AA1HY,4BAAQ"}
1
+ {"version":3,"file":"MKStream.js","sourceRoot":"","sources":["../../src/MKStream.ts"],"names":[],"mappings":";;;AAMA;IA2BE,kBAAY,UAAkB,EAAE,eAAuB,EAAE,cAAgC,EAAE,MAAe,EAAE,YAAqB,EAAE,kBAA2B,EAAE,MAAe,EAAE,WAAoB,EAAE,WAAoB,EAAE,WAAoB,EAAE,WAAoB,EAAE,WAAoB,EAAE,WAAyB;QAtBvS,wBAAmB,GAAW,CAAC,CAAC;QASzC,iBAAY,GAAY,KAAK,CAAC;QAcpC,IAAI,CAAC,mBAAmB,GAAG,kBAAkB,CAAC;QAC9C,IAAI,CAAC,aAAa,GAAG,YAAY,CAAC;QAClC,IAAI,CAAC,WAAW,GAAG,UAAU,CAAC;QAC9B,IAAI,CAAC,gBAAgB,GAAG,eAAe,CAAC;QACxC,IAAI,CAAC,eAAe,GAAG,cAAc,CAAC;QACtC,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,OAAO,GAAG,MAAM,CAAC;QACtB,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;QAChC,IAAI,CAAC,YAAY,GAAG,WAAW,CAAC;IAClC,CAAC;IAKD,sBAAW,wCAAkB;aAA7B;YACE,OAAO,IAAI,CAAC,mBAAmB,CAAC;QAClC,CAAC;;;OAAA;IAKD,sBAAW,gCAAU;aAArB;YACE,OAAO,IAAI,CAAC,WAAW,CAAC;QAC1B,CAAC;;;OAAA;IAKD,sBAAW,kCAAY;aAAvB;YACE,OAAO,IAAI,CAAC,aAAa,CAAC;QAC5B,CAAC;;;OAAA;IAKD,sBAAW,oCAAc;aAAzB;YACE,OAAO,IAAI,CAAC,eAAe,CAAC;QAC9B,CAAC;;;OAAA;IAKD,sBAAW,qCAAe;aAA1B;YACE,OAAO,IAAI,CAAC,gBAAgB,CAAC;QAC/B,CAAC;;;OAAA;IAKD,sBAAW,4BAAM;aAAjB;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,4BAAM;aAAjB;YACE,OAAO,IAAI,CAAC,OAAO,CAAC;QACtB,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;;;OAAA;IAKD,sBAAW,iCAAW;aAAtB;YACE,OAAO,IAAI,CAAC,YAAY,CAAC;QAC3B,CAAC;aAKD,UAAuB,KAAc;YACnC,IAAI,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,CAAC;;;OAPA;IAQH,eAAC;AAAD,CAAC,AAnJD,IAmJC;AAnJY,4BAAQ"}
@@ -1,4 +1,5 @@
1
1
  export declare class URLHelper {
2
2
  static appendQueryParametersToUrl(url: string, parameters: Map<string, string>): string;
3
3
  static removeUrlParameter(url: string, parameter: string): string;
4
+ static appendToken(url: string, token: string): string;
4
5
  }
@@ -45,6 +45,25 @@ var URLHelper = (function () {
45
45
  }
46
46
  return url;
47
47
  };
48
+ URLHelper.appendToken = function (url, token) {
49
+ if (token) {
50
+ var split = token.split('=');
51
+ if (split && split.length >= 2) {
52
+ var key = split[0];
53
+ var value = split[1];
54
+ var params = new Map();
55
+ params.set(key, value);
56
+ var updatedUrl = URLHelper.appendQueryParametersToUrl(url, params);
57
+ return updatedUrl;
58
+ }
59
+ else {
60
+ return url;
61
+ }
62
+ }
63
+ else {
64
+ return url;
65
+ }
66
+ };
48
67
  return URLHelper;
49
68
  }());
50
69
  exports.URLHelper = URLHelper;
@@ -1 +1 @@
1
- {"version":3,"file":"URLHelper.js","sourceRoot":"","sources":["../../src/URLHelper.ts"],"names":[],"mappings":";;;AAAA;IAAA;IA8DA,CAAC;IA7De,oCAA0B,GAAxC,UAAyC,GAAW,EAAE,UAA+B;QAEnF,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,qBAAqB,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,UAAU,EAAE;YACd,UAAU,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,GAAG;gBAE1B,IAAI,CAAC,qBAAqB,EAAE;oBAE1B,WAAW,IAAI,GAAG,CAAC;oBACnB,qBAAqB,GAAG,IAAI,CAAC;iBAC9B;qBAAM;oBAEL,WAAW,IAAI,GAAG,CAAC;iBACpB;gBAGD,WAAW,IAAI,GAAG,CAAC;gBAGnB,IAAI,KAAK,IAAI,IAAI,EAAE;oBACjB,WAAW,IAAI,GAAG,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;iBAChD;YACL,CAAC,CAAC,CAAC;SACF;QACH,OAAO,GAAG,GAAG,WAAW,CAAC;IAC3B,CAAC;IAEa,4BAAkB,GAAhC,UAAiC,GAAW,EAAE,SAAiB;QAC7D,IAAI,QAAQ,GAAa,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAExC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;YAExB,IAAI,OAAO,GAAW,QAAQ,CAAC,KAAK,EAAE,CAAC;YAGvC,IAAI,WAAW,GAAW,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE7C,IAAI,MAAM,GAAW,kBAAkB,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;YACzD,IAAI,KAAK,GAAa,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAGjD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG;gBAEnC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC1C,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACpB;aACF;YAGD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,GAAG,GAAG,OAAO,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACvC;iBAAM;gBACL,GAAG,GAAG,OAAO,CAAC;aACf;SACF;QAED,OAAO,GAAG,CAAC;IAEb,CAAC;IACH,gBAAC;AAAD,CAAC,AA9DD,IA8DC;AA9DY,8BAAS"}
1
+ {"version":3,"file":"URLHelper.js","sourceRoot":"","sources":["../../src/URLHelper.ts"],"names":[],"mappings":";;;AAAA;IAAA;IA8EA,CAAC;IA7Ee,oCAA0B,GAAxC,UAAyC,GAAW,EAAE,UAA+B;QAEnF,IAAI,WAAW,GAAG,EAAE,CAAC;QACrB,IAAI,qBAAqB,GAAG,GAAG,CAAC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC;QAElD,IAAI,UAAU,EAAE;YACd,UAAU,CAAC,OAAO,CAAC,UAAC,KAAK,EAAE,GAAG;gBAE1B,IAAI,CAAC,qBAAqB,EAAE;oBAE1B,WAAW,IAAI,GAAG,CAAC;oBACnB,qBAAqB,GAAG,IAAI,CAAC;iBAC9B;qBAAM;oBAEL,WAAW,IAAI,GAAG,CAAC;iBACpB;gBAGD,WAAW,IAAI,GAAG,CAAC;gBAGnB,IAAI,KAAK,IAAI,IAAI,EAAE;oBACjB,WAAW,IAAI,GAAG,GAAG,kBAAkB,CAAC,KAAK,CAAC,CAAC;iBAChD;YACL,CAAC,CAAC,CAAC;SACF;QACH,OAAO,GAAG,GAAG,WAAW,CAAC;IAC3B,CAAC;IAEa,4BAAkB,GAAhC,UAAiC,GAAW,EAAE,SAAiB;QAC7D,IAAI,QAAQ,GAAa,GAAG,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;QAExC,IAAI,QAAQ,CAAC,MAAM,IAAI,CAAC,EAAE;YAExB,IAAI,OAAO,GAAW,QAAQ,CAAC,KAAK,EAAE,CAAC;YAGvC,IAAI,WAAW,GAAW,QAAQ,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;YAE7C,IAAI,MAAM,GAAW,kBAAkB,CAAC,SAAS,CAAC,GAAG,GAAG,CAAC;YACzD,IAAI,KAAK,GAAa,WAAW,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;YAGjD,KAAK,IAAI,CAAC,GAAG,KAAK,CAAC,MAAM,EAAE,CAAC,EAAE,GAAG,CAAC,GAAG;gBAEnC,IAAI,KAAK,CAAC,CAAC,CAAC,CAAC,WAAW,CAAC,MAAM,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE;oBAC1C,KAAK,CAAC,MAAM,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC;iBACpB;aACF;YAGD,IAAI,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE;gBACpB,GAAG,GAAG,OAAO,GAAG,GAAG,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;aACvC;iBAAM;gBACL,GAAG,GAAG,OAAO,CAAC;aACf;SACF;QACD,OAAO,GAAG,CAAC;IACb,CAAC;IAEa,qBAAW,GAAzB,UAA0B,GAAW,EAAE,KAAa;QAClD,IAAI,KAAK,EAAE;YACT,IAAI,KAAK,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC;YAC7B,IAAI,KAAK,IAAI,KAAK,CAAC,MAAM,IAAI,CAAC,EAAE;gBAC9B,IAAI,GAAG,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACnB,IAAI,KAAK,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC;gBACrB,IAAI,MAAM,GAAG,IAAI,GAAG,EAAkB,CAAC;gBACvC,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;gBACvB,IAAI,UAAU,GAAG,SAAS,CAAC,0BAA0B,CAAC,GAAG,EAAE,MAAM,CAAC,CAAC;gBACnE,OAAO,UAAU,CAAC;aACnB;iBAAM;gBACL,OAAO,GAAG,CAAC;aACZ;SACF;aAAM;YACL,OAAO,GAAG,CAAC;SACZ;IACH,CAAC;IACH,gBAAC;AAAD,CAAC,AA9ED,IA8EC;AA9EY,8BAAS"}
@@ -0,0 +1,4 @@
1
+ export declare enum UrlType {
2
+ Primary = "primary",
3
+ Secondary = "secondary"
4
+ }
@@ -0,0 +1,9 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.UrlType = void 0;
4
+ var UrlType;
5
+ (function (UrlType) {
6
+ UrlType["Primary"] = "primary";
7
+ UrlType["Secondary"] = "secondary";
8
+ })(UrlType = exports.UrlType || (exports.UrlType = {}));
9
+ //# sourceMappingURL=UrlType.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"UrlType.js","sourceRoot":"","sources":["../../../src/events/UrlType.ts"],"names":[],"mappings":";;;AAGA,IAAY,OAGX;AAHD,WAAY,OAAO;IACjB,8BAAmB,CAAA;IACnB,kCAAuB,CAAA;AACzB,CAAC,EAHW,OAAO,GAAP,eAAO,KAAP,eAAO,QAGlB"}
@@ -0,0 +1,4 @@
1
+ export interface LabelConfig {
2
+ audio?: Map<string, string>;
3
+ captions?: Map<string, string>;
4
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=LabelConfig.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LabelConfig.js","sourceRoot":"","sources":["../../src/LabelConfig.ts"],"names":[],"mappings":""}
@@ -23,10 +23,9 @@ export declare class MKPlayer {
23
23
  unmute(): void;
24
24
  setVolume(volume: number): void;
25
25
  version(): string;
26
- private static selectUrl;
26
+ private selectUrl;
27
27
  private static getRandomInt;
28
28
  private static makeId;
29
29
  private static mapEvent;
30
30
  private manipulateMasterPlaylist;
31
- private appendToken;
32
31
  }
@@ -2,7 +2,7 @@ import { BufferType, LogLevel, MediaType, Player, PlayerEvent, } from 'bitmovin-
2
2
  import { UIFactory } from 'bitmovin-player-ui';
3
3
  import { MKEvent } from './events/MKEvent';
4
4
  import { Logger } from './Logger';
5
- import { RequestType } from './events/RequestType';
5
+ import { UrlType } from './events/UrlType';
6
6
  import { URLHelper } from './URLHelper';
7
7
  var MKPlayer = (function () {
8
8
  function MKPlayer(containerElement, mkPlayerConfiguration) {
@@ -25,18 +25,12 @@ var MKPlayer = (function () {
25
25
  },
26
26
  network: {
27
27
  preprocessHttpRequest: function (type, request) {
28
- if (type === 'manifest/hls/master') {
28
+ if (type === 'manifest/hls/master' || type === 'manifest/hls/variant') {
29
29
  if (typeof mkPlayerConfiguration.refreshToken === 'function') {
30
- var token = mkPlayerConfiguration.refreshToken(RequestType.Master);
31
- console.log('[MKPlayer] Appending master token: ' + token);
32
- request.url = _this.appendToken(request.url, token);
33
- }
34
- }
35
- else if (type === 'manifest/hls/variant') {
36
- if (typeof mkPlayerConfiguration.refreshToken === 'function') {
37
- var token = mkPlayerConfiguration.refreshToken(RequestType.Variant);
38
- console.log('[MKPlayer] Appending variant token: ' + token);
39
- request.url = _this.appendToken(request.url, token);
30
+ var urlType = _this.stream.didFailOver ? UrlType.Secondary : UrlType.Primary;
31
+ var token = mkPlayerConfiguration.refreshToken(urlType);
32
+ console.log('[MKPlayer] Appending ' + urlType + ' token: ' + token);
33
+ request.url = URLHelper.appendToken(request.url, token);
40
34
  }
41
35
  }
42
36
  return Promise.resolve(request);
@@ -92,9 +86,10 @@ var MKPlayer = (function () {
92
86
  return this.player.destroy();
93
87
  };
94
88
  MKPlayer.prototype.load = function (stream) {
89
+ var _this = this;
95
90
  var playerSource;
96
91
  this.stream = stream;
97
- var url = MKPlayer.selectUrl(stream);
92
+ var url = this.selectUrl();
98
93
  if (url.includes('.m3u8')) {
99
94
  playerSource = {
100
95
  hls: url,
@@ -113,6 +108,27 @@ var MKPlayer = (function () {
113
108
  if (stream.poster) {
114
109
  playerSource.poster = stream.poster;
115
110
  }
111
+ playerSource.labeling = {
112
+ hls: {
113
+ tracks: function (track) {
114
+ if (_this.stream.labelConfig && _this.stream.labelConfig.audio && _this.stream.labelConfig.audio[track.lang]) {
115
+ return _this.stream.labelConfig.audio[track.lang];
116
+ }
117
+ else {
118
+ return track.lang;
119
+ }
120
+ },
121
+ subtitles: function (track) {
122
+ console.log(track);
123
+ if (_this.stream.labelConfig && _this.stream.labelConfig.captions && _this.stream.labelConfig.captions[track.lang]) {
124
+ return _this.stream.labelConfig.captions[track.lang];
125
+ }
126
+ else {
127
+ return track.lang;
128
+ }
129
+ },
130
+ },
131
+ };
116
132
  if (stream.assetIdentifier) {
117
133
  playerSource.analytics = {
118
134
  videoId: stream.assetIdentifier,
@@ -174,17 +190,19 @@ var MKPlayer = (function () {
174
190
  this.player.setVolume(volume);
175
191
  };
176
192
  MKPlayer.prototype.version = function () {
177
- return '1.0.15';
193
+ return '1.0.16';
178
194
  };
179
- MKPlayer.selectUrl = function (source) {
195
+ MKPlayer.prototype.selectUrl = function () {
180
196
  var rand = MKPlayer.getRandomInt(99);
181
- if (source.cdnFailoverPercent && source.secondaryUrl && rand < source.cdnFailoverPercent) {
182
- Logger.log('[MKPlayer] selecting secondary source url - ' + source.secondaryUrl);
183
- return source.secondaryUrl;
197
+ if (this.stream.cdnFailoverPercent && this.stream.secondaryUrl && rand < this.stream.cdnFailoverPercent) {
198
+ Logger.log('[MKPlayer] selecting secondary source url - ' + this.stream.secondaryUrl);
199
+ this.stream.didFailOver = true;
200
+ return this.stream.secondaryUrl;
184
201
  }
185
202
  else {
186
- Logger.log('[MKPlayer] selecting primary source url - ' + source.primaryUrl);
187
- return source.primaryUrl;
203
+ Logger.log('[MKPlayer] selecting primary source url - ' + this.stream.primaryUrl);
204
+ this.stream.didFailOver = false;
205
+ return this.stream.primaryUrl;
188
206
  }
189
207
  };
190
208
  MKPlayer.getRandomInt = function (max) {
@@ -256,26 +274,12 @@ var MKPlayer = (function () {
256
274
  + 'DEFAULT=YES,'
257
275
  + 'AUTOSELECT=YES,'
258
276
  + 'FORCED=NO,'
259
- + 'LANGUAGE="' + track.language + '",GROUP-ID="subs",'
277
+ + 'LANGUAGE="' + track.language + '",GROUP-ID="Subtitles",'
260
278
  + 'URI="' + track.url + '"');
261
279
  });
262
280
  }
263
281
  return body;
264
282
  };
265
- MKPlayer.prototype.appendToken = function (url, token) {
266
- var splitted = token.split('=');
267
- if (splitted && splitted.length >= 2) {
268
- var key = splitted[0];
269
- var value = splitted[1];
270
- var params = new Map();
271
- params.set(key, value);
272
- var updatedUrl = URLHelper.appendQueryParametersToUrl(url, params);
273
- return updatedUrl;
274
- }
275
- else {
276
- return url;
277
- }
278
- };
279
283
  return MKPlayer;
280
284
  }());
281
285
  export { MKPlayer };