@mediakind/mkplayer 1.0.14 → 1.0.16

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 (61) hide show
  1. package/README.md +15 -1
  2. package/dist/LabelConfig.d.ts +4 -0
  3. package/dist/MKPlayer.d.ts +3 -1
  4. package/dist/MKPlayerConfiguration.d.ts +2 -0
  5. package/dist/MKStream.d.ts +7 -1
  6. package/dist/URLHelper.d.ts +5 -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 +3 -1
  12. package/dist/lib/MKPlayer.js +75 -16
  13. package/dist/lib/MKPlayer.js.map +1 -1
  14. package/dist/lib/MKPlayerConfiguration.d.ts +2 -0
  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 +5 -0
  19. package/dist/lib/URLHelper.js +70 -0
  20. package/dist/lib/URLHelper.js.map +1 -0
  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 +3 -1
  28. package/dist/lib-esm/MKPlayer.js +75 -16
  29. package/dist/lib-esm/MKPlayer.js.map +1 -1
  30. package/dist/lib-esm/MKPlayerConfiguration.d.ts +2 -0
  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 +5 -0
  35. package/dist/lib-esm/URLHelper.js +67 -0
  36. package/dist/lib-esm/URLHelper.js.map +1 -0
  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 +23 -20
  43. package/doc/enums/mkevent.html +4 -1
  44. package/doc/enums/urltype.html +180 -0
  45. package/doc/globals.html +6 -2
  46. package/doc/index.html +19 -2
  47. package/doc/interfaces/bufferlevel.html +4 -1
  48. package/doc/interfaces/labelconfig.html +198 -0
  49. package/doc/interfaces/mkplayereventcallback.html +4 -1
  50. package/doc/interfaces/subtitletrack.html +4 -1
  51. package/index.html +58 -19
  52. package/multi-camera.html +1 -1
  53. package/package.json +3 -3
  54. package/src/LabelConfig.ts +14 -0
  55. package/src/MKPlayer.ts +77 -24
  56. package/src/MKPlayerConfiguration.ts +7 -0
  57. package/src/MKStream.ts +27 -1
  58. package/src/URLHelper.ts +79 -0
  59. package/src/events/UrlType.ts +7 -0
  60. package/doc/interfaces/mkplayerconfiguration.html +0 -290
  61. package/mkplayer-ui.js +0 -12052
package/README.md CHANGED
@@ -23,7 +23,15 @@ var mkPlayerConfiguration = {
23
23
  debug: true,
24
24
  autoplay: true,
25
25
  muted: true,
26
- key: 'YOUR-KEY'
26
+ key: 'YOUR-KEY',
27
+
28
+ refreshToken: (type) => {
29
+ if (type === 'master') {
30
+ return 'hdnts=1234566787888'
31
+ }else if (type === 'variant') {
32
+ return 'hdnts=jadfjahdfjahdsfjh'
33
+ }
34
+ },
27
35
  };
28
36
 
29
37
  var playerContainer = document.getElementById('player');
@@ -45,6 +53,12 @@ let mkStream = {
45
53
  customData3: 'customData3',
46
54
  customData4: 'customData4',
47
55
  customData5: 'customData5',
56
+
57
+ // Optional label config
58
+ labelConfig: {
59
+ audio: {'en': 'English', 'mis': 'Audio Descriptions'},
60
+ captions: {'ENG': 'English', 'GER': 'German'},
61
+ }
48
62
  }
49
63
 
50
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
+ }
@@ -5,6 +5,7 @@ import { BufferLevel } from './BufferLevel';
5
5
  import { MKPlayerEventCallback } from './events/MKPlayerEventCallback';
6
6
  export declare class MKPlayer {
7
7
  private player;
8
+ private stream;
8
9
  constructor(containerElement: HTMLElement, mkPlayerConfiguration: MKPlayerConfiguration);
9
10
  play(): Promise<void>;
10
11
  pause(): void;
@@ -22,8 +23,9 @@ export declare class MKPlayer {
22
23
  unmute(): void;
23
24
  setVolume(volume: number): void;
24
25
  version(): string;
25
- private static selectUrl;
26
+ private selectUrl;
26
27
  private static getRandomInt;
27
28
  private static makeId;
28
29
  private static mapEvent;
30
+ private manipulateMasterPlaylist;
29
31
  }
@@ -1,3 +1,4 @@
1
+ import { UrlType } from './events/UrlType';
1
2
  export interface MKPlayerConfiguration {
2
3
  debug: boolean;
3
4
  autoplay: boolean;
@@ -6,4 +7,5 @@ export interface MKPlayerConfiguration {
6
7
  ui: boolean;
7
8
  targetLatency: number;
8
9
  key: string;
10
+ refreshToken?: (type: UrlType) => string;
9
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
  }
@@ -0,0 +1,5 @@
1
+ export declare class URLHelper {
2
+ static appendQueryParametersToUrl(url: string, parameters: Map<string, string>): string;
3
+ static removeUrlParameter(url: string, parameter: string): string;
4
+ static appendToken(url: string, token: string): string;
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":""}
@@ -5,6 +5,7 @@ import { BufferLevel } from './BufferLevel';
5
5
  import { MKPlayerEventCallback } from './events/MKPlayerEventCallback';
6
6
  export declare class MKPlayer {
7
7
  private player;
8
+ private stream;
8
9
  constructor(containerElement: HTMLElement, mkPlayerConfiguration: MKPlayerConfiguration);
9
10
  play(): Promise<void>;
10
11
  pause(): void;
@@ -22,8 +23,9 @@ export declare class MKPlayer {
22
23
  unmute(): void;
23
24
  setVolume(volume: number): void;
24
25
  version(): string;
25
- private static selectUrl;
26
+ private selectUrl;
26
27
  private static getRandomInt;
27
28
  private static makeId;
28
29
  private static mapEvent;
30
+ private manipulateMasterPlaylist;
29
31
  }
@@ -5,8 +5,11 @@ 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 UrlType_1 = require("./events/UrlType");
9
+ var URLHelper_1 = require("./URLHelper");
8
10
  var MKPlayer = (function () {
9
11
  function MKPlayer(containerElement, mkPlayerConfiguration) {
12
+ var _this = this;
10
13
  var playerConfig = {
11
14
  key: mkPlayerConfiguration.key,
12
15
  playback: {
@@ -16,18 +19,34 @@ var MKPlayer = (function () {
16
19
  analytics: {
17
20
  key: '1c45ae9c-345e-4462-95e2-3e8faccd64f1',
18
21
  },
19
- location: {
20
- ui: 'mkplayer-ui.js',
21
- ui_css: 'mkplayer-ui.min.css',
22
+ ui: {
23
+ disableAutoHideWhenHovered: true,
22
24
  },
23
25
  logs: {
24
26
  level: bitmovin_player_1.LogLevel.OFF,
25
27
  bitmovin: false,
26
28
  },
29
+ network: {
30
+ preprocessHttpRequest: function (type, request) {
31
+ if (type === 'manifest/hls/master' || type === 'manifest/hls/variant') {
32
+ if (typeof mkPlayerConfiguration.refreshToken === 'function') {
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);
37
+ }
38
+ }
39
+ return Promise.resolve(request);
40
+ },
41
+ preprocessHttpResponse: function (type, response) {
42
+ if (type === 'manifest/hls/master') {
43
+ var body = _this.manipulateMasterPlaylist(response.body);
44
+ response.body = body;
45
+ }
46
+ return Promise.resolve(response);
47
+ },
48
+ },
27
49
  };
28
- if (mkPlayerConfiguration.ui === false) {
29
- playerConfig.ui = false;
30
- }
31
50
  if (mkPlayerConfiguration.targetLatency > 0) {
32
51
  playerConfig.live = {
33
52
  lowLatency: {
@@ -51,7 +70,7 @@ var MKPlayer = (function () {
51
70
  bitmovin_player_ui_1.UIFactory.buildDefaultSmallScreenUI(player);
52
71
  }
53
72
  else {
54
- bitmovin_player_ui_1.UIFactory.buildDefaultUI(player);
73
+ bitmovin_player_ui_1.UIFactory.buildDefaultUI(player, playerConfig.ui);
55
74
  }
56
75
  }
57
76
  if (mkPlayerConfiguration.debug) {
@@ -70,8 +89,10 @@ var MKPlayer = (function () {
70
89
  return this.player.destroy();
71
90
  };
72
91
  MKPlayer.prototype.load = function (stream) {
92
+ var _this = this;
73
93
  var playerSource;
74
- var url = MKPlayer.selectUrl(stream);
94
+ this.stream = stream;
95
+ var url = this.selectUrl();
75
96
  if (url.includes('.m3u8')) {
76
97
  playerSource = {
77
98
  hls: url,
@@ -90,6 +111,27 @@ var MKPlayer = (function () {
90
111
  if (stream.poster) {
91
112
  playerSource.poster = stream.poster;
92
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
+ };
93
135
  if (stream.assetIdentifier) {
94
136
  playerSource.analytics = {
95
137
  videoId: stream.assetIdentifier,
@@ -102,7 +144,7 @@ var MKPlayer = (function () {
102
144
  customData6: this.version(),
103
145
  };
104
146
  }
105
- if (stream.subtitleTracks) {
147
+ if (stream.subtitleTracks && !stream.subtitleTracks[0].url.includes('.m3u8')) {
106
148
  playerSource.subtitleTracks = stream.subtitleTracks.map(function (track) { return ({
107
149
  lang: track.language,
108
150
  url: track.url,
@@ -151,17 +193,19 @@ var MKPlayer = (function () {
151
193
  this.player.setVolume(volume);
152
194
  };
153
195
  MKPlayer.prototype.version = function () {
154
- return '1.0.13';
196
+ return '1.0.16';
155
197
  };
156
- MKPlayer.selectUrl = function (source) {
198
+ MKPlayer.prototype.selectUrl = function () {
157
199
  var rand = MKPlayer.getRandomInt(99);
158
- if (source.cdnFailoverPercent && source.secondaryUrl && rand < source.cdnFailoverPercent) {
159
- Logger_1.Logger.log('[MKPlayer] selecting secondary source url - ' + source.secondaryUrl);
160
- 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;
161
204
  }
162
205
  else {
163
- Logger_1.Logger.log('[MKPlayer] selecting primary source url - ' + source.primaryUrl);
164
- 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;
165
209
  }
166
210
  };
167
211
  MKPlayer.getRandomInt = function (max) {
@@ -224,6 +268,21 @@ var MKPlayer = (function () {
224
268
  }
225
269
  return playerEventType;
226
270
  };
271
+ MKPlayer.prototype.manipulateMasterPlaylist = function (response) {
272
+ var body = response;
273
+ if (this.stream.subtitleTracks && this.stream.subtitleTracks[0].url.includes('.m3u8')) {
274
+ this.stream.subtitleTracks.forEach(function (track) {
275
+ body = body.concat('\n#EXT-X-MEDIA:TYPE=SUBTITLES,'
276
+ + 'NAME="' + track.language + '",'
277
+ + 'DEFAULT=YES,'
278
+ + 'AUTOSELECT=YES,'
279
+ + 'FORCED=NO,'
280
+ + 'LANGUAGE="' + track.language + '",GROUP-ID="Subtitles",'
281
+ + 'URI="' + track.url + '"');
282
+ });
283
+ }
284
+ return body;
285
+ };
227
286
  return MKPlayer;
228
287
  }());
229
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,3 +1,4 @@
1
+ import { UrlType } from './events/UrlType';
1
2
  export interface MKPlayerConfiguration {
2
3
  debug: boolean;
3
4
  autoplay: boolean;
@@ -6,4 +7,5 @@ export interface MKPlayerConfiguration {
6
7
  ui: boolean;
7
8
  targetLatency: number;
8
9
  key: string;
10
+ refreshToken?: (type: UrlType) => string;
9
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"}
@@ -0,0 +1,5 @@
1
+ export declare class URLHelper {
2
+ static appendQueryParametersToUrl(url: string, parameters: Map<string, string>): string;
3
+ static removeUrlParameter(url: string, parameter: string): string;
4
+ static appendToken(url: string, token: string): string;
5
+ }
@@ -0,0 +1,70 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.URLHelper = void 0;
4
+ var URLHelper = (function () {
5
+ function URLHelper() {
6
+ }
7
+ URLHelper.appendQueryParametersToUrl = function (url, parameters) {
8
+ var queryString = '';
9
+ var queryStringHasStarted = url.indexOf('?') >= 0;
10
+ if (parameters) {
11
+ parameters.forEach(function (value, key) {
12
+ if (!queryStringHasStarted) {
13
+ queryString += '?';
14
+ queryStringHasStarted = true;
15
+ }
16
+ else {
17
+ queryString += '&';
18
+ }
19
+ queryString += key;
20
+ if (value != null) {
21
+ queryString += '=' + encodeURIComponent(value);
22
+ }
23
+ });
24
+ }
25
+ return url + queryString;
26
+ };
27
+ URLHelper.removeUrlParameter = function (url, parameter) {
28
+ var urlParts = url.split('?');
29
+ if (urlParts.length >= 2) {
30
+ var urlBase = urlParts.shift();
31
+ var queryString = urlParts.join('?');
32
+ var prefix = encodeURIComponent(parameter) + '=';
33
+ var parts = queryString.split(/[&;]/g);
34
+ for (var i = parts.length; i-- > 0;) {
35
+ if (parts[i].lastIndexOf(prefix, 0) !== -1) {
36
+ parts.splice(i, 1);
37
+ }
38
+ }
39
+ if (parts.length > 0) {
40
+ url = urlBase + '?' + parts.join('&');
41
+ }
42
+ else {
43
+ url = urlBase;
44
+ }
45
+ }
46
+ return url;
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
+ };
67
+ return URLHelper;
68
+ }());
69
+ exports.URLHelper = URLHelper;
70
+ //# sourceMappingURL=URLHelper.js.map
@@ -0,0 +1 @@
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":""}
@@ -5,6 +5,7 @@ import { BufferLevel } from './BufferLevel';
5
5
  import { MKPlayerEventCallback } from './events/MKPlayerEventCallback';
6
6
  export declare class MKPlayer {
7
7
  private player;
8
+ private stream;
8
9
  constructor(containerElement: HTMLElement, mkPlayerConfiguration: MKPlayerConfiguration);
9
10
  play(): Promise<void>;
10
11
  pause(): void;
@@ -22,8 +23,9 @@ export declare class MKPlayer {
22
23
  unmute(): void;
23
24
  setVolume(volume: number): void;
24
25
  version(): string;
25
- private static selectUrl;
26
+ private selectUrl;
26
27
  private static getRandomInt;
27
28
  private static makeId;
28
29
  private static mapEvent;
30
+ private manipulateMasterPlaylist;
29
31
  }