@gcorevideo/player 2.7.5 → 2.8.1

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/dist/index.js CHANGED
@@ -12219,6 +12219,7 @@ const DASHJS = /*@__PURE__*/getDefaultExportFromCjs$1(dash_all_minExports);
12219
12219
  const AUTO$1 = -1;
12220
12220
  const { now: now$2 } = Utils;
12221
12221
  const T$2 = 'DashPlayback';
12222
+ // @ts-expect-error
12222
12223
  class DashPlayback extends HTML5Video {
12223
12224
  _levels = null;
12224
12225
  _currentLevel = null;
@@ -12471,24 +12472,29 @@ class DashPlayback extends HTML5Video {
12471
12472
  }
12472
12473
  _updateSettings() {
12473
12474
  if (this._playbackType === Playback.VOD) {
12475
+ // @ts-expect-error
12474
12476
  this.settings.left = ['playpause', 'position', 'duration'];
12475
12477
  }
12476
12478
  else if (this.dvrEnabled) {
12479
+ // @ts-expect-error
12477
12480
  this.settings.left = ['playpause'];
12478
12481
  }
12479
12482
  else {
12483
+ // @ts-expect-error
12480
12484
  this.settings.left = ['playstop'];
12481
12485
  }
12486
+ // @ts-expect-error
12482
12487
  this.settings.seekEnabled = this.isSeekEnabled();
12483
12488
  this.trigger(Events$1.PLAYBACK_SETTINGSUPDATE);
12484
12489
  }
12485
12490
  _onPlaybackError = (event) => {
12486
12491
  // TODO
12492
+ trace(`${T$2} _onPlaybackError`, { event });
12487
12493
  };
12488
12494
  _onDASHJSSError = (event) => {
12495
+ trace(`${T$2} _onDASHJSSError`, { event });
12489
12496
  // TODO
12490
12497
  // only report/handle errors if they are fatal
12491
- // hlsjs should automatically handle non fatal errors
12492
12498
  this._stopTimeUpdateTimer();
12493
12499
  if (event.error === 'capability' && event.event === 'mediasource') {
12494
12500
  // No support for MSE
@@ -12601,7 +12607,10 @@ class DashPlayback extends HTML5Video {
12601
12607
  super._onDurationChange();
12602
12608
  }
12603
12609
  get dvrEnabled() {
12604
- assert.ok(this._dash, 'An instance of dashjs MediaPlayer is required to get the DVR status');
12610
+ if (!this._dash) {
12611
+ trace(`${T$2} dvrEnable no dash player instance`);
12612
+ return false;
12613
+ }
12605
12614
  return (this._dash?.getDVRWindowSize() >= this._minDvrSize &&
12606
12615
  this.getPlaybackType() === Playback.LIVE);
12607
12616
  }
@@ -41303,6 +41312,7 @@ const DEFAULT_RECOVER_ATTEMPTS = 16;
41303
41312
  Events$1.register('PLAYBACK_FRAGMENT_CHANGED');
41304
41313
  Events$1.register('PLAYBACK_FRAGMENT_PARSING_METADATA');
41305
41314
  const T$1 = 'plugins.hls';
41315
+ // @ts-expect-error
41306
41316
  class HlsPlayback extends HTML5Video {
41307
41317
  _ccIsSetup = false;
41308
41318
  _ccTracksUpdated = false;
@@ -41671,14 +41681,18 @@ class HlsPlayback extends HTML5Video {
41671
41681
  }
41672
41682
  _updateSettings() {
41673
41683
  if (this._playbackType === Playback.VOD) {
41684
+ // @ts-expect-error
41674
41685
  this.settings.left = ['playpause', 'position', 'duration'];
41675
41686
  }
41676
41687
  else if (this.dvrEnabled) {
41688
+ // @ts-expect-error
41677
41689
  this.settings.left = ['playpause'];
41678
41690
  }
41679
41691
  else {
41692
+ // @ts-expect-error
41680
41693
  this.settings.left = ['playstop'];
41681
41694
  }
41695
+ // @ts-expect-error
41682
41696
  this.settings.seekEnabled = this.isSeekEnabled();
41683
41697
  this.trigger(Events$1.PLAYBACK_SETTINGSUPDATE);
41684
41698
  }
@@ -42100,18 +42114,18 @@ function buildSourcesPriorityList(sources, priorityTransport = 'auto') {
42100
42114
  }
42101
42115
  }
42102
42116
  function addHls() {
42103
- if (sources.hls && HlsPlayback.canPlay(sources.hls)) {
42117
+ if (sources.hls && HlsPlayback.canPlay(sources.hls, undefined)) {
42104
42118
  msl.push(sources.hls);
42105
42119
  sources.hls = null;
42106
42120
  }
42107
42121
  if (sources.master?.endsWith('.m3u8') &&
42108
- HlsPlayback.canPlay(sources.master)) {
42122
+ HlsPlayback.canPlay(sources.master, undefined)) {
42109
42123
  msl.push(sources.master);
42110
42124
  sources.master = null;
42111
42125
  }
42112
42126
  }
42113
42127
  function addDash() {
42114
- if (sources.dash && DashPlayback.canPlay(sources.dash)) {
42128
+ if (sources.dash && DashPlayback.canPlay(sources.dash, undefined)) {
42115
42129
  msl.push(sources.dash);
42116
42130
  sources.dash = null;
42117
42131
  }
@@ -42138,7 +42152,6 @@ const DEFAULT_OPTIONS = {
42138
42152
  * @beta
42139
42153
  */
42140
42154
  class Player {
42141
- qLevel = null;
42142
42155
  config = DEFAULT_OPTIONS;
42143
42156
  emitter = new EventLite();
42144
42157
  player = null;
@@ -42146,34 +42159,6 @@ class Player {
42146
42159
  rootNode = null;
42147
42160
  tuneInTimerId = null;
42148
42161
  tunedIn = false;
42149
- // get activePlayback(): PlaybackModule | null {
42150
- // if (!this.player?.core.activePlayback) {
42151
- // return null
42152
- // }
42153
- // switch (this.player.core.activePlayback.name) {
42154
- // case 'dash':
42155
- // return 'dash'
42156
- // case 'hls':
42157
- // return 'hls'
42158
- // default:
42159
- // return 'native'
42160
- // }
42161
- // }
42162
- // get activeSource(): string | null {
42163
- // if (!this.player?.core.activePlayback) {
42164
- // return null
42165
- // }
42166
- // return this.player.core.activePlayback.options.src
42167
- // }
42168
- get bitrate() {
42169
- return this.qLevel;
42170
- }
42171
- get hd() {
42172
- return this.player?.core.activePlayback?.isHighDefinitionInUse || false;
42173
- }
42174
- get playbackType() {
42175
- return this.player?.core.activePlayback?.getPlaybackType();
42176
- }
42177
42162
  constructor(config) {
42178
42163
  this.setConfig(config);
42179
42164
  }
@@ -42225,7 +42210,6 @@ class Player {
42225
42210
  clearTimeout(this.tuneInTimerId);
42226
42211
  this.tuneInTimerId = null;
42227
42212
  }
42228
- this.qLevel = null;
42229
42213
  }
42230
42214
  pause() {
42231
42215
  assert.ok(this.player, 'Player not initialized');
@@ -42261,19 +42245,11 @@ class Player {
42261
42245
  }
42262
42246
  initPlayer(coreOptions) {
42263
42247
  trace(`${T} initPlayer`, {
42264
- // coreOptions,
42265
42248
  // TODO selected options
42266
42249
  });
42267
42250
  assert.ok(!this.player, 'Player already initialized');
42268
42251
  const player = new Player$1(coreOptions);
42269
42252
  this.player = player;
42270
- if (player.core.activeContainer) {
42271
- trace(`${T} tuneIn bindBitrateChangeHandler`);
42272
- this.bindBitrateChangeHandler();
42273
- }
42274
- player.core.on(Events$1.CORE_ACTIVE_CONTAINER_CHANGED, () => {
42275
- this.bindBitrateChangeHandler();
42276
- }, null);
42277
42253
  // TODO checks if the whole thing is necessary
42278
42254
  this.tuneInTimerId = globalThis.setTimeout(() => {
42279
42255
  trace(`${T} tuneInTimer`, {
@@ -42402,19 +42378,7 @@ class Player {
42402
42378
  },
42403
42379
  };
42404
42380
  buildCoreOptions(rootNode) {
42405
- // TODO extract
42406
- // const multisources = this.config.multisources
42407
- // const mainSource =
42408
- // this.config.playbackType === 'live'
42409
- // ? multisources.find((ms) => ms.live !== false)
42410
- // : multisources[0]
42411
- // const mediaSources = mainSource
42412
- // ? this.buildMediaSourcesList(mainSource)
42413
- // : []
42414
- // const mainSourceUrl = mediaSources[0];
42415
- // const poster = mainSource?.poster ?? this.config.poster
42416
- // const poster = this.config.poster
42417
- const source = this.selectMediaSource(); // TODO
42381
+ const source = this.selectMediaSource();
42418
42382
  this.rootNode = rootNode;
42419
42383
  const coreOptions = {
42420
42384
  ...this.config.pluginSettings,
@@ -42438,10 +42402,8 @@ class Player {
42438
42402
  },
42439
42403
  parent: rootNode,
42440
42404
  playbackType: this.config.playbackType,
42441
- // poster,
42442
42405
  width: rootNode.clientWidth,
42443
42406
  source: source ? unwrapSource(source) : undefined,
42444
- // sources: mediaSources,
42445
42407
  strings: this.config.strings,
42446
42408
  };
42447
42409
  return coreOptions;
@@ -42451,21 +42413,6 @@ class Player {
42451
42413
  Loader.registerPlayback(DashPlayback);
42452
42414
  Loader.registerPlayback(HlsPlayback);
42453
42415
  }
42454
- bindBitrateChangeHandler() {
42455
- // TODO implement a plugin for the whole thing
42456
- trace(`${T} bindBitrateChangeHandler`, { activeContainer: this.player?.core?.activeContainer?.name });
42457
- const currentPlayback = this.player?.core.activePlayback;
42458
- currentPlayback.on(Events$1.PLAYBACK_LEVELS_AVAILABLE, (levels) => {
42459
- // TODO test
42460
- if (!this.qLevel) {
42461
- this.qLevel = levels[0];
42462
- }
42463
- });
42464
- this.player?.core.activeContainer.on(Events$1.CONTAINER_BITRATE, (bitrate) => {
42465
- trace(`${T} bitrate has changed`, { bitrate });
42466
- this.qLevel = bitrate;
42467
- });
42468
- }
42469
42416
  // Select a single source to play according to the priority transport and the modules support
42470
42417
  selectMediaSource() {
42471
42418
  return buildSourcesPriorityList(buildSourcesSet(this.config.sources), this.config.priorityTransport)[0];
@@ -42594,12 +42541,12 @@ class SentryTracer {
42594
42541
  }
42595
42542
  }
42596
42543
 
42597
- var version$1 = "2.7.5";
42544
+ var version$1 = "2.8.1";
42598
42545
 
42599
42546
  var packages = {
42600
42547
  "": {
42601
42548
  name: "@gcorevideo/player",
42602
- version: "2.7.5",
42549
+ version: "2.8.1",
42603
42550
  license: "Apache-2.0",
42604
42551
  dependencies: {
42605
42552
  "@clappr/core": "^0.11.3",
package/lib/Player.d.ts CHANGED
@@ -1,13 +1,11 @@
1
- import type { PlaybackType, PlayerPlugin } from './types.js';
1
+ import type { PlayerPlugin } from './types.js';
2
2
  import { PlayerConfig, PlayerEvent } from './types.js';
3
- import { QualityLevel } from './playback.types.js';
4
3
  type PlayerEventHandler<T extends PlayerEvent> = () => void;
5
4
  export type PlaybackModule = 'dash' | 'hls' | 'native';
6
5
  /**
7
6
  * @beta
8
7
  */
9
8
  export declare class Player {
10
- private qLevel;
11
9
  private config;
12
10
  private emitter;
13
11
  private player;
@@ -15,9 +13,6 @@ export declare class Player {
15
13
  private rootNode;
16
14
  private tuneInTimerId;
17
15
  private tunedIn;
18
- get bitrate(): QualityLevel | null;
19
- get hd(): any;
20
- get playbackType(): PlaybackType | undefined;
21
16
  constructor(config: PlayerConfig);
22
17
  on<T extends PlayerEvent>(event: T, handler: PlayerEventHandler<T>): void;
23
18
  off<T extends PlayerEvent>(event: T, handler: PlayerEventHandler<T>): void;
@@ -40,7 +35,6 @@ export declare class Player {
40
35
  private events;
41
36
  private buildCoreOptions;
42
37
  private configurePlaybacks;
43
- private bindBitrateChangeHandler;
44
38
  private selectMediaSource;
45
39
  }
46
40
  export {};
@@ -1 +1 @@
1
- {"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../src/Player.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,YAAY,EACZ,YAAY,EACb,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAQtD,OAAO,EAAE,YAAY,EAAE,MAAM,qBAAqB,CAAA;AAIlD,KAAK,kBAAkB,CAAC,CAAC,SAAS,WAAW,IAAI,MAAM,IAAI,CAAA;AAiB3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;AAItD;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAA4B;IAE1C,OAAO,CAAC,MAAM,CAAgC;IAE9C,OAAO,CAAC,OAAO,CAAkB;IAEjC,OAAO,CAAC,MAAM,CAA4B;IAE1C,OAAO,CAAC,KAAK,CAAQ;IAErB,OAAO,CAAC,QAAQ,CAA2B;IAE3C,OAAO,CAAC,aAAa,CAA6C;IAElE,OAAO,CAAC,OAAO,CAAQ;IAuBvB,IAAI,OAAO,IAAI,YAAY,GAAG,IAAI,CAEjC;IAED,IAAI,EAAE,QAEL;IAED,IAAI,YAAY,IAAI,YAAY,GAAG,SAAS,CAE3C;gBAEW,MAAM,EAAE,YAAY;IAIhC,EAAE,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAIlE,GAAG,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAInE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC;IAIvC,OAAO,CAAC,SAAS;IAIX,IAAI,CAAC,aAAa,EAAE,WAAW;IAyBrC,OAAO;IAiBP,KAAK;IAKL,IAAI;IAKJ,MAAM,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAWjD,MAAM,CAAC,IAAI,EAAE,MAAM;IAKnB,IAAI;IAKJ,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY;IAI1C,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY;IAI5C,OAAO,CAAC,UAAU;YAkCJ,MAAM;IA2EpB,OAAO,CAAC,MAAM,CAgDb;IAED,OAAO,CAAC,gBAAgB;IAiDxB,OAAO,CAAC,kBAAkB;IAM1B,OAAO,CAAC,wBAAwB;IAoBhC,OAAO,CAAC,iBAAiB;CAM1B"}
1
+ {"version":3,"file":"Player.d.ts","sourceRoot":"","sources":["../src/Player.ts"],"names":[],"mappings":"AAiBA,OAAO,KAAK,EACV,YAAY,EACb,MAAM,YAAY,CAAA;AAEnB,OAAO,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,YAAY,CAAA;AAWtD,KAAK,kBAAkB,CAAC,CAAC,SAAS,WAAW,IAAI,MAAM,IAAI,CAAA;AAiB3D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,KAAK,GAAG,QAAQ,CAAA;AAItD;;GAEG;AACH,qBAAa,MAAM;IACjB,OAAO,CAAC,MAAM,CAAgC;IAE9C,OAAO,CAAC,OAAO,CAAkB;IAEjC,OAAO,CAAC,MAAM,CAA4B;IAE1C,OAAO,CAAC,KAAK,CAAQ;IAErB,OAAO,CAAC,QAAQ,CAA2B;IAE3C,OAAO,CAAC,aAAa,CAA6C;IAElE,OAAO,CAAC,OAAO,CAAQ;gBAEX,MAAM,EAAE,YAAY;IAIhC,EAAE,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAIlE,GAAG,CAAC,CAAC,SAAS,WAAW,EAAE,KAAK,EAAE,CAAC,EAAE,OAAO,EAAE,kBAAkB,CAAC,CAAC,CAAC;IAInE,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,YAAY,CAAC;IAIvC,OAAO,CAAC,SAAS;IAIX,IAAI,CAAC,aAAa,EAAE,WAAW;IAyBrC,OAAO;IAgBP,KAAK;IAKL,IAAI;IAKJ,MAAM,CAAC,OAAO,EAAE;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE;IAWjD,MAAM,CAAC,IAAI,EAAE,MAAM;IAKnB,IAAI;IAKJ,MAAM,CAAC,cAAc,CAAC,MAAM,EAAE,YAAY;IAI1C,MAAM,CAAC,gBAAgB,CAAC,MAAM,EAAE,YAAY;IAI5C,OAAO,CAAC,UAAU;YAqBJ,MAAM;IA2EpB,OAAO,CAAC,MAAM,CAgDb;IAED,OAAO,CAAC,gBAAgB;IAkCxB,OAAO,CAAC,kBAAkB;IAO1B,OAAO,CAAC,iBAAiB;CAM1B"}
package/lib/Player.js CHANGED
@@ -23,7 +23,6 @@ const DEFAULT_OPTIONS = {
23
23
  * @beta
24
24
  */
25
25
  export class Player {
26
- qLevel = null;
27
26
  config = DEFAULT_OPTIONS;
28
27
  emitter = new EventLite();
29
28
  player = null;
@@ -31,34 +30,6 @@ export class Player {
31
30
  rootNode = null;
32
31
  tuneInTimerId = null;
33
32
  tunedIn = false;
34
- // get activePlayback(): PlaybackModule | null {
35
- // if (!this.player?.core.activePlayback) {
36
- // return null
37
- // }
38
- // switch (this.player.core.activePlayback.name) {
39
- // case 'dash':
40
- // return 'dash'
41
- // case 'hls':
42
- // return 'hls'
43
- // default:
44
- // return 'native'
45
- // }
46
- // }
47
- // get activeSource(): string | null {
48
- // if (!this.player?.core.activePlayback) {
49
- // return null
50
- // }
51
- // return this.player.core.activePlayback.options.src
52
- // }
53
- get bitrate() {
54
- return this.qLevel;
55
- }
56
- get hd() {
57
- return this.player?.core.activePlayback?.isHighDefinitionInUse || false;
58
- }
59
- get playbackType() {
60
- return this.player?.core.activePlayback?.getPlaybackType();
61
- }
62
33
  constructor(config) {
63
34
  this.setConfig(config);
64
35
  }
@@ -110,7 +81,6 @@ export class Player {
110
81
  clearTimeout(this.tuneInTimerId);
111
82
  this.tuneInTimerId = null;
112
83
  }
113
- this.qLevel = null;
114
84
  }
115
85
  pause() {
116
86
  assert.ok(this.player, 'Player not initialized');
@@ -146,19 +116,11 @@ export class Player {
146
116
  }
147
117
  initPlayer(coreOptions) {
148
118
  trace(`${T} initPlayer`, {
149
- // coreOptions,
150
119
  // TODO selected options
151
120
  });
152
121
  assert.ok(!this.player, 'Player already initialized');
153
122
  const player = new PlayerClappr(coreOptions);
154
123
  this.player = player;
155
- if (player.core.activeContainer) {
156
- trace(`${T} tuneIn bindBitrateChangeHandler`);
157
- this.bindBitrateChangeHandler();
158
- }
159
- player.core.on(ClapprEvents.CORE_ACTIVE_CONTAINER_CHANGED, () => {
160
- this.bindBitrateChangeHandler();
161
- }, null);
162
124
  // TODO checks if the whole thing is necessary
163
125
  this.tuneInTimerId = globalThis.setTimeout(() => {
164
126
  trace(`${T} tuneInTimer`, {
@@ -287,19 +249,7 @@ export class Player {
287
249
  },
288
250
  };
289
251
  buildCoreOptions(rootNode) {
290
- // TODO extract
291
- // const multisources = this.config.multisources
292
- // const mainSource =
293
- // this.config.playbackType === 'live'
294
- // ? multisources.find((ms) => ms.live !== false)
295
- // : multisources[0]
296
- // const mediaSources = mainSource
297
- // ? this.buildMediaSourcesList(mainSource)
298
- // : []
299
- // const mainSourceUrl = mediaSources[0];
300
- // const poster = mainSource?.poster ?? this.config.poster
301
- // const poster = this.config.poster
302
- const source = this.selectMediaSource(); // TODO
252
+ const source = this.selectMediaSource();
303
253
  this.rootNode = rootNode;
304
254
  const coreOptions = {
305
255
  ...this.config.pluginSettings,
@@ -323,10 +273,8 @@ export class Player {
323
273
  },
324
274
  parent: rootNode,
325
275
  playbackType: this.config.playbackType,
326
- // poster,
327
276
  width: rootNode.clientWidth,
328
277
  source: source ? unwrapSource(source) : undefined,
329
- // sources: mediaSources,
330
278
  strings: this.config.strings,
331
279
  };
332
280
  return coreOptions;
@@ -336,21 +284,6 @@ export class Player {
336
284
  Loader.registerPlayback(DashPlayback);
337
285
  Loader.registerPlayback(HlsPlayback);
338
286
  }
339
- bindBitrateChangeHandler() {
340
- // TODO implement a plugin for the whole thing
341
- trace(`${T} bindBitrateChangeHandler`, { activeContainer: this.player?.core?.activeContainer?.name });
342
- const currentPlayback = this.player?.core.activePlayback;
343
- currentPlayback.on(ClapprEvents.PLAYBACK_LEVELS_AVAILABLE, (levels) => {
344
- // TODO test
345
- if (!this.qLevel) {
346
- this.qLevel = levels[0];
347
- }
348
- });
349
- this.player?.core.activeContainer.on(ClapprEvents.CONTAINER_BITRATE, (bitrate) => {
350
- trace(`${T} bitrate has changed`, { bitrate });
351
- this.qLevel = bitrate;
352
- });
353
- }
354
287
  // Select a single source to play according to the priority transport and the modules support
355
288
  selectMediaSource() {
356
289
  return buildSourcesPriorityList(buildSourcesSet(this.config.sources), this.config.priorityTransport)[0];
@@ -1,5 +1,5 @@
1
1
  import { HTML5Video, Playback } from '@clappr/core';
2
- import DASHJS, { ErrorEvent as DashErrorEvent, PlaybackErrorEvent as DashPlaybackErrorEvent, type BitrateInfo as DashBitrateInfo, IManifestInfo } from 'dashjs';
2
+ import DASHJS, { type BitrateInfo as DashBitrateInfo, IManifestInfo } from 'dashjs';
3
3
  import { QualityLevel, TimePosition, TimeValue } from '../../playback.types.js';
4
4
  type PlaybackType = typeof Playback.VOD | typeof Playback.LIVE | typeof Playback.AOD | typeof Playback.NO_OP;
5
5
  type PlaylistType = string;
@@ -39,9 +39,9 @@ export default class DashPlayback extends HTML5Video {
39
39
  get _duration(): number;
40
40
  constructor(options: any, i18n: string, playerError?: any);
41
41
  _setup(): void;
42
- render(): import("@clappr/core").UIObject;
42
+ render(): this;
43
43
  _ready(): void;
44
- _setupSrc(): void;
44
+ private _setupSrc;
45
45
  _startTimeUpdateTimer(): void;
46
46
  _stopTimeUpdateTimer(): void;
47
47
  getProgramDateTime(): number;
@@ -53,8 +53,8 @@ export default class DashPlayback extends HTML5Video {
53
53
  seekToLivePoint(): void;
54
54
  _updateDvr(status: boolean): void;
55
55
  _updateSettings(): void;
56
- _onPlaybackError: (event: DashPlaybackErrorEvent) => void;
57
- _onDASHJSSError: (event: DashErrorEvent) => void;
56
+ private _onPlaybackError;
57
+ private _onDASHJSSError;
58
58
  _onTimeUpdate(): void;
59
59
  _onDurationChange(): void;
60
60
  get dvrEnabled(): boolean;
@@ -62,7 +62,7 @@ export default class DashPlayback extends HTML5Video {
62
62
  play(): void;
63
63
  pause(): void;
64
64
  stop(): void;
65
- destroy(): import("@clappr/core").UIObject;
65
+ destroy(): void;
66
66
  _updatePlaybackType(): void;
67
67
  _fillLevels(levels: DashBitrateInfo[]): void;
68
68
  private onLevelSwitch;
@@ -1 +1 @@
1
- {"version":3,"file":"DashPlayback.d.ts","sourceRoot":"","sources":["../../../src/plugins/dash-playback/DashPlayback.ts"],"names":[],"mappings":"AAIA,OAAO,EAAU,UAAU,EAAO,QAAQ,EAAS,MAAM,cAAc,CAAA;AAEvE,OAAO,MAAM,EAAE,EACb,UAAU,IAAI,cAAc,EAC5B,kBAAkB,IAAI,sBAAsB,EAC5C,KAAK,WAAW,IAAI,eAAe,EAEnC,aAAa,EACd,MAAM,QAAQ,CAAA;AAGf,OAAO,EAAe,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAM5F,KAAK,YAAY,GACb,OAAO,QAAQ,CAAC,GAAG,GACnB,OAAO,QAAQ,CAAC,IAAI,GACpB,OAAO,QAAQ,CAAC,GAAG,GACnB,OAAO,QAAQ,CAAC,KAAK,CAAA;AAEzB,KAAK,YAAY,GAAG,MAAM,CAAA;AAE1B,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAID,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,UAAU;IAClD,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAO;IAErC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAO;IAKnC,mCAAmC,EAAE,OAAO,CAAQ;IAEpD,aAAa,EAAE,OAAO,CAAQ;IAI9B,uBAAuB,EAAE,MAAM,CAAI;IASnC,wBAAwB,EAAE,MAAM,CAAI;IAEpC,aAAa,EAAE,YAAY,CAAe;IAG1C,aAAa,EAAE,YAAY,GAAG,IAAI,CAAO;IAGzC,gBAAgB,EAAE,SAAS,CAAI;IAE/B,KAAK,EAAE,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAO;IAE5C,2BAA2B,EAAE,MAAM,CAAI;IAEvC,aAAa,EAAE,SAAS,GAAG,IAAI,CAAO;IAEtC,eAAe,EAAE,YAAY,CAA2B;IAIxD,0BAA0B,EAAE,oBAAoB,GAAG,IAAI,CAAO;IAI9D,wBAAwB,EAAE,oBAAoB,GAAG,IAAI,CAAO;IAE5D,kBAAkB,UAAQ;IAE1B,YAAY,EAAE,aAAa,GAAG,IAAI,CAAO;IAGzC,sBAAsB,EAAE,SAAS,GAAG,IAAI,CAAO;IAE/C,gBAAgB,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,IAAI,CAAO;IAE9D,IAAI,IAAI,WAEP;IAED,IAAI,MAAM,IAAI,YAAY,EAAE,CAE3B;IAED,IAAI,YAAY,IAAI,MAAM,CAMzB;IAED,IAAI,OAAO,YAEV;IAED,IAAI,YAAY,CAAC,EAAE,EAAE,MAAM,EAiC1B;IAED,IAAI,UAAU,WASb;IAED,IAAI,IAAI,WAEP;IAID,IAAI,sBAAsB,WAczB;IAID,IAAI,oBAAoB,WAgBvB;IAED,IAAI,SAAS,WAKZ;gBAEW,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,GAAG;IAOzD,MAAM;IAyEN,MAAM;IAMN,MAAM;IAMN,SAAS;IAIT,qBAAqB;IAQrB,oBAAoB;IAMpB,kBAAkB;IAOlB,WAAW,IAAI,SAAS;IAQxB,cAAc,IAAI,SAAS;IAU3B,kBAAkB,IAAI,SAAS;IAI/B,cAAc,CAAC,UAAU,EAAE,MAAM;IAejC,IAAI,CAAC,IAAI,EAAE,SAAS;IAgBpB,eAAe;IAIf,UAAU,CAAC,MAAM,EAAE,OAAO;IAK1B,eAAe;IAaf,gBAAgB,UAAW,sBAAsB,UAEhD;IAED,eAAe,UAAW,cAAc,UAwGvC;IAED,aAAa;IAqBb,iBAAiB;IAWjB,IAAI,UAAU,YASb;IAED,WAAW;IAmBX,IAAI;IAUJ,KAAK;IAWL,IAAI;IASJ,OAAO;IAkBP,mBAAmB;IAYnB,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE;IAarC,OAAO,CAAC,aAAa;IAMrB,eAAe;IAIf,aAAa;CAGd"}
1
+ {"version":3,"file":"DashPlayback.d.ts","sourceRoot":"","sources":["../../../src/plugins/dash-playback/DashPlayback.ts"],"names":[],"mappings":"AAIA,OAAO,EAAU,UAAU,EAAO,QAAQ,EAAS,MAAM,cAAc,CAAA;AAEvE,OAAO,MAAM,EAAE,EAGb,KAAK,WAAW,IAAI,eAAe,EAEnC,aAAa,EACd,MAAM,QAAQ,CAAA;AAGf,OAAO,EAAE,YAAY,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,yBAAyB,CAAA;AAM/E,KAAK,YAAY,GACb,OAAO,QAAQ,CAAC,GAAG,GACnB,OAAO,QAAQ,CAAC,IAAI,GACpB,OAAO,QAAQ,CAAC,GAAG,GACnB,OAAO,QAAQ,CAAC,KAAK,CAAA;AAEzB,KAAK,YAAY,GAAG,MAAM,CAAA;AAE1B,KAAK,oBAAoB,GAAG;IAC1B,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACf,CAAA;AAKD,MAAM,CAAC,OAAO,OAAO,YAAa,SAAQ,UAAU;IAClD,OAAO,EAAE,YAAY,EAAE,GAAG,IAAI,CAAO;IAErC,aAAa,EAAE,MAAM,GAAG,IAAI,CAAO;IAKnC,mCAAmC,EAAE,OAAO,CAAQ;IAEpD,aAAa,EAAE,OAAO,CAAQ;IAI9B,uBAAuB,EAAE,MAAM,CAAI;IASnC,wBAAwB,EAAE,MAAM,CAAI;IAEpC,aAAa,EAAE,YAAY,CAAe;IAG1C,aAAa,EAAE,YAAY,GAAG,IAAI,CAAO;IAGzC,gBAAgB,EAAE,SAAS,CAAI;IAE/B,KAAK,EAAE,MAAM,CAAC,gBAAgB,GAAG,IAAI,CAAO;IAE5C,2BAA2B,EAAE,MAAM,CAAI;IAEvC,aAAa,EAAE,SAAS,GAAG,IAAI,CAAO;IAEtC,eAAe,EAAE,YAAY,CAA2B;IAIxD,0BAA0B,EAAE,oBAAoB,GAAG,IAAI,CAAO;IAI9D,wBAAwB,EAAE,oBAAoB,GAAG,IAAI,CAAO;IAE5D,kBAAkB,UAAQ;IAE1B,YAAY,EAAE,aAAa,GAAG,IAAI,CAAO;IAGzC,sBAAsB,EAAE,SAAS,GAAG,IAAI,CAAO;IAE/C,gBAAgB,EAAE,UAAU,CAAC,OAAO,WAAW,CAAC,GAAG,IAAI,CAAO;IAE9D,IAAI,IAAI,WAEP;IAED,IAAI,MAAM,IAAI,YAAY,EAAE,CAE3B;IAED,IAAI,YAAY,IAAI,MAAM,CAMzB;IAED,IAAI,OAAO,YAEV;IAED,IAAI,YAAY,CAAC,EAAE,EAAE,MAAM,EAiC1B;IAED,IAAI,UAAU,WASb;IAED,IAAI,IAAI,WAEP;IAID,IAAI,sBAAsB,WAczB;IAID,IAAI,oBAAoB,WAgBvB;IAED,IAAI,SAAS,WAKZ;gBAEW,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,CAAC,EAAE,GAAG;IAOzD,MAAM;IAyEN,MAAM;IAMN,MAAM;YAMW,SAAS;IAI1B,qBAAqB;IAQrB,oBAAoB;IAMpB,kBAAkB;IAOlB,WAAW,IAAI,SAAS;IAQxB,cAAc,IAAI,SAAS;IAU3B,kBAAkB,IAAI,SAAS;IAI/B,cAAc,CAAC,UAAU,EAAE,MAAM;IAejC,IAAI,CAAC,IAAI,EAAE,SAAS;IAgBpB,eAAe;IAIf,UAAU,CAAC,MAAM,EAAE,OAAO;IAKjB,eAAe;IAgBxB,OAAO,CAAC,gBAAgB,CAGvB;IAED,OAAO,CAAC,eAAe,CAwGtB;IAED,aAAa;IAqBb,iBAAiB;IAWjB,IAAI,UAAU,YASb;IAED,WAAW;IAmBX,IAAI;IAUJ,KAAK;IAWL,IAAI;IASJ,OAAO;IAkBP,mBAAmB;IAYnB,WAAW,CAAC,MAAM,EAAE,eAAe,EAAE;IAarC,OAAO,CAAC,aAAa;IAMrB,eAAe;IAIf,aAAa;CAGd"}
@@ -8,6 +8,7 @@ import { trace } from '../../trace/index.js';
8
8
  const AUTO = -1;
9
9
  const { now } = Utils;
10
10
  const T = 'DashPlayback';
11
+ // @ts-expect-error
11
12
  export default class DashPlayback extends HTML5Video {
12
13
  _levels = null;
13
14
  _currentLevel = null;
@@ -260,24 +261,29 @@ export default class DashPlayback extends HTML5Video {
260
261
  }
261
262
  _updateSettings() {
262
263
  if (this._playbackType === Playback.VOD) {
264
+ // @ts-expect-error
263
265
  this.settings.left = ['playpause', 'position', 'duration'];
264
266
  }
265
267
  else if (this.dvrEnabled) {
268
+ // @ts-expect-error
266
269
  this.settings.left = ['playpause'];
267
270
  }
268
271
  else {
272
+ // @ts-expect-error
269
273
  this.settings.left = ['playstop'];
270
274
  }
275
+ // @ts-expect-error
271
276
  this.settings.seekEnabled = this.isSeekEnabled();
272
277
  this.trigger(Events.PLAYBACK_SETTINGSUPDATE);
273
278
  }
274
279
  _onPlaybackError = (event) => {
275
280
  // TODO
281
+ trace(`${T} _onPlaybackError`, { event });
276
282
  };
277
283
  _onDASHJSSError = (event) => {
284
+ trace(`${T} _onDASHJSSError`, { event });
278
285
  // TODO
279
286
  // only report/handle errors if they are fatal
280
- // hlsjs should automatically handle non fatal errors
281
287
  this._stopTimeUpdateTimer();
282
288
  if (event.error === 'capability' && event.event === 'mediasource') {
283
289
  // No support for MSE
@@ -390,7 +396,10 @@ export default class DashPlayback extends HTML5Video {
390
396
  super._onDurationChange();
391
397
  }
392
398
  get dvrEnabled() {
393
- assert.ok(this._dash, 'An instance of dashjs MediaPlayer is required to get the DVR status');
399
+ if (!this._dash) {
400
+ trace(`${T} dvrEnable no dash player instance`);
401
+ return false;
402
+ }
394
403
  return (this._dash?.getDVRWindowSize() >= this._minDvrSize &&
395
404
  this.getPlaybackType() === Playback.LIVE);
396
405
  }
@@ -63,10 +63,10 @@ export default class HlsPlayback extends HTML5Video {
63
63
  bindCustomListeners(): void;
64
64
  unbindCustomListeners(): void;
65
65
  _onFragmentParsingMetadata(evt: HlsEvents.FRAG_PARSING_METADATA, data: FragParsingMetadataData): void;
66
- render(): import("@clappr/core").UIObject;
66
+ render(): this;
67
67
  _ready(): void;
68
68
  _recover(evt: HlsEvents.ERROR, data: HlsErrorData, error: ErrorInfo): void;
69
- _setupSrc(srcUrl: string): void;
69
+ private _setupSrc;
70
70
  _startTimeUpdateTimer(): void;
71
71
  _stopTimeUpdateTimer(): void;
72
72
  getProgramDateTime(): string | null;
@@ -87,7 +87,7 @@ export default class HlsPlayback extends HTML5Video {
87
87
  play(): void;
88
88
  pause(): void;
89
89
  stop(): void;
90
- destroy(): import("@clappr/core").UIObject;
90
+ destroy(): void;
91
91
  private _updatePlaybackType;
92
92
  private _fillLevels;
93
93
  private _onLevelUpdated;
@@ -1 +1 @@
1
- {"version":3,"file":"HlsPlayback.d.ts","sourceRoot":"","sources":["../../../src/plugins/hls-playback/HlsPlayback.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"HlsPlayback.d.ts","sourceRoot":"","sources":["../../../src/plugins/hls-playback/HlsPlayback.ts"],"names":[],"mappings":"AAIA,OAAO,EAAU,UAAU,EAAqC,MAAM,cAAc,CAAC;AAErF,OAAO,KAAK,EAAE,EACZ,SAAS,EAET,KAAK,YAAY,EAEjB,KAAK,eAAe,EACpB,KAAK,cAAc,EACnB,KAAK,uBAAuB,EAG5B,KAAK,kBAAkB,EACxB,MAAM,QAAQ,CAAC;AAEhB,OAAO,EAAE,YAAY,EAAgB,MAAM,yBAAyB,CAAC;AAErE,OAAO,EAAE,YAAY,EAAE,MAAM,aAAa,CAAC;AAwC3C,KAAK,SAAS,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;AAGzC,MAAM,CAAC,OAAO,OAAO,WAAY,SAAQ,UAAU;IACjD,OAAO,CAAC,UAAU,CAAS;IAE3B,OAAO,CAAC,gBAAgB,CAAS;IAEjC,OAAO,CAAC,gBAAgB,CAAyB;IAEjD,OAAO,CAAC,aAAa,CAAuB;IAE5C,OAAO,CAAC,mCAAmC,CAAS;IAEpD,OAAO,CAAC,8BAA8B,CAAK;IAE3C,OAAO,CAAC,cAAc,CAAS;IAE/B,OAAO,CAAC,IAAI,CAAsB;IAElC,OAAO,CAAC,aAAa,CAAS;IAE9B,OAAO,CAAC,aAAa,CAAuB;IAE5C,OAAO,CAAC,eAAe,CAA6B;IAEpD,OAAO,CAAC,OAAO,CAA+B;IAE9C,OAAO,CAAC,0BAA0B,CAAgC;IAElE,OAAO,CAAC,wBAAwB,CAAgC;IAEhE,OAAO,CAAC,eAAe,CAAS;IAEhC,OAAO,CAAC,uBAAuB,CAAK;IAEpC,OAAO,CAAC,aAAa,CAA8C;IAEnE,OAAO,CAAC,aAAa,CAA6B;IAElD,OAAO,CAAC,wBAAwB,CAAK;IAErC,OAAO,CAAC,gBAAgB,CAAuB;IAE/C,OAAO,CAAC,yBAAyB,CAAK;IAEtC,OAAO,CAAC,yBAAyB,CAAS;IAE1C,OAAO,CAAC,uBAAuB,CAAS;IAExC,OAAO,CAAC,sBAAsB,CAAuB;IAErD,OAAO,CAAC,gBAAgB,CAAwB;IAEhD,IAAI,IAAI,WAEP;IAED,IAAI,gBAAgB;;MAEnB;IAED,IAAI,MAAM,mBAET;IAED,IAAI,YAAY,IAQK,MAAM,CAN1B;IAED,IAAI,OAAO,YAEV;IAED,IAAI,YAAY,CAAC,EAAE,EAAE,MAAM,EAS1B;IAED,IAAI,OAAO,WAGV;IAED,IAAI,sBAAsB,SAIzB;IAED,IAAI,UAAU,WAMb;IAED,IAAI,IAAI,WAEP;IAID,IAAI,sBAAsB,WAWzB;IAID,IAAI,oBAAoB,WAWvB;IAED,IAAI,SAAS,WAEZ;IAmBD,IAAI,2BAA2B,WAM9B;IAED,IAAI,iBAAiB,kBAEpB;IAED,IAAI,cAAc;;MAEjB;IAED,IAAI,eAAe,QAElB;IAED,IAAI,WAAW,QAEd;IAED,IAAI,gBAAgB,kBAWnB;IAED,MAAM,KAAK,KAAK,iBAEf;gBAEW,GAAG,IAAI,EAAE,GAAG,EAAE;IAO1B,gBAAgB;IA2ChB,MAAM;IAON,mBAAmB;IAYnB,kBAAkB;IAUlB,eAAe;IAOf,gBAAgB;IAiChB,mBAAmB;IASnB,qBAAqB;IASrB,0BAA0B,CAAC,GAAG,EAAE,SAAS,CAAC,qBAAqB,EAAE,IAAI,EAAE,uBAAuB;IAK9F,MAAM;IAMN,MAAM;IASN,QAAQ,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY,EAAE,KAAK,EAAE,SAAS;YAqBlD,SAAS;IAE1B,qBAAqB;IAUrB,oBAAoB;IAQpB,kBAAkB;IAOlB,WAAW;IAIX,cAAc;IAUd,kBAAkB;IAIlB,cAAc,CAAC,UAAU,EAAE,MAAM;IAQjC,IAAI,CAAC,IAAI,EAAE,MAAM;IAWjB,eAAe;IAIf,UAAU,CAAC,MAAM,EAAE,OAAO;IAK1B,eAAe;IAiBf,aAAa,CAAC,GAAG,EAAE,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,YAAY;IA6EtD,YAAY,CAAC,IAAI,EAAE,YAAY;IAQ/B,aAAa;IAab,iBAAiB;IAUjB,WAAW;IA0BX,IAAI,CAAC,GAAG,EAAE,MAAM;IAMhB,IAAI;IASJ,KAAK;IAUL,IAAI;IAQJ,OAAO;IAMP,OAAO,CAAC,mBAAmB;IAa3B,OAAO,CAAC,WAAW;IAanB,OAAO,CAAC,eAAe;IAgIvB,kBAAkB,CAAC,GAAG,EAAE,SAAS,CAAC,YAAY,EAAE,IAAI,EAAE,eAAe;IAMrE,iBAAiB,CAAC,GAAG,EAAE,SAAS,CAAC,WAAW,EAAE,IAAI,EAAE,cAAc;IAIlE,iBAAiB;IAYjB,cAAc,CAAC,GAAG,EAAE,SAAS,CAAC,eAAe,EAAE,IAAI,EAAE,kBAAkB;IAsBvE,IAAI,UAAU,YAMb;IAED,eAAe;IAIf,aAAa;CAGd"}
@@ -12,6 +12,7 @@ const DEFAULT_RECOVER_ATTEMPTS = 16;
12
12
  Events.register('PLAYBACK_FRAGMENT_CHANGED');
13
13
  Events.register('PLAYBACK_FRAGMENT_PARSING_METADATA');
14
14
  const T = 'plugins.hls';
15
+ // @ts-expect-error
15
16
  export default class HlsPlayback extends HTML5Video {
16
17
  _ccIsSetup = false;
17
18
  _ccTracksUpdated = false;
@@ -380,14 +381,18 @@ export default class HlsPlayback extends HTML5Video {
380
381
  }
381
382
  _updateSettings() {
382
383
  if (this._playbackType === Playback.VOD) {
384
+ // @ts-expect-error
383
385
  this.settings.left = ['playpause', 'position', 'duration'];
384
386
  }
385
387
  else if (this.dvrEnabled) {
388
+ // @ts-expect-error
386
389
  this.settings.left = ['playpause'];
387
390
  }
388
391
  else {
392
+ // @ts-expect-error
389
393
  this.settings.left = ['playstop'];
390
394
  }
395
+ // @ts-expect-error
391
396
  this.settings.seekEnabled = this.isSeekEnabled();
392
397
  this.trigger(Events.PLAYBACK_SETTINGSUPDATE);
393
398
  }
@@ -51,18 +51,18 @@ export function buildSourcesPriorityList(sources, priorityTransport = 'auto') {
51
51
  }
52
52
  }
53
53
  function addHls() {
54
- if (sources.hls && HlsPlayback.canPlay(sources.hls)) {
54
+ if (sources.hls && HlsPlayback.canPlay(sources.hls, undefined)) {
55
55
  msl.push(sources.hls);
56
56
  sources.hls = null;
57
57
  }
58
58
  if (sources.master?.endsWith('.m3u8') &&
59
- HlsPlayback.canPlay(sources.master)) {
59
+ HlsPlayback.canPlay(sources.master, undefined)) {
60
60
  msl.push(sources.master);
61
61
  sources.master = null;
62
62
  }
63
63
  }
64
64
  function addDash() {
65
- if (sources.dash && DashPlayback.canPlay(sources.dash)) {
65
+ if (sources.dash && DashPlayback.canPlay(sources.dash, undefined)) {
66
66
  msl.push(sources.dash);
67
67
  sources.dash = null;
68
68
  }