@gcorevideo/player 2.17.0 → 2.18.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 (69) hide show
  1. package/dist/index.js +182 -109
  2. package/dist/player.d.ts +150 -24
  3. package/docs/api/player.containersize.md +19 -0
  4. package/docs/api/player.dashsettings.md +2 -0
  5. package/docs/api/player.errorlevel.md +1 -0
  6. package/docs/api/player.langtag.md +6 -0
  7. package/docs/api/player.md +57 -22
  8. package/docs/api/player.mediatransport.md +1 -0
  9. package/docs/api/player.playbackerror.code.md +2 -0
  10. package/docs/api/player.playbackerror.description.md +2 -0
  11. package/docs/api/player.playbackerror.level.md +2 -0
  12. package/docs/api/player.playbackerror.md +43 -4
  13. package/docs/api/player.playbackerror.message.md +2 -0
  14. package/docs/api/player.playbackerror.origin.md +21 -0
  15. package/docs/api/player.playbackerror.scope.md +16 -0
  16. package/docs/api/player.playbackerrorcode.md +4 -3
  17. package/docs/api/player.playbackmodule.md +1 -0
  18. package/docs/api/player.player.isdvrinuse.md +24 -0
  19. package/docs/api/player.player.isplaying.md +1 -1
  20. package/docs/api/player.player.md +15 -1
  21. package/docs/api/player.player.off.md +4 -4
  22. package/docs/api/player.player.on.md +5 -5
  23. package/docs/api/player.player.resize.md +3 -6
  24. package/docs/api/player.playercomponenttype.md +16 -0
  25. package/docs/api/player.playerdebugsettings.md +1 -1
  26. package/docs/api/player.playerdebugtag.md +1 -0
  27. package/docs/api/player.playerevent.md +96 -0
  28. package/docs/api/player.playereventhandler.md +3 -2
  29. package/docs/api/player.playereventparams.md +20 -0
  30. package/docs/api/player.playermediasourcedesc.md +1 -1
  31. package/docs/api/player.playermediasourcedesc.mimetype.md +1 -1
  32. package/docs/api/player.qualitylevel.bitrate.md +16 -0
  33. package/docs/api/player.qualitylevel.height.md +16 -0
  34. package/docs/api/player.qualitylevel.level.md +16 -0
  35. package/docs/api/player.qualitylevel.md +104 -7
  36. package/docs/api/player.qualitylevel.width.md +16 -0
  37. package/docs/api/player.timeposition.current.md +16 -0
  38. package/docs/api/player.timeposition.md +65 -7
  39. package/docs/api/player.timeposition.total.md +16 -0
  40. package/docs/api/player.timevalue.md +1 -1
  41. package/docs/api/player.translationsettings.md +7 -1
  42. package/docs/api/player.transportpreference.md +1 -0
  43. package/lib/Player.d.ts +30 -14
  44. package/lib/Player.d.ts.map +1 -1
  45. package/lib/Player.js +72 -65
  46. package/lib/internal.types.d.ts +3 -5
  47. package/lib/internal.types.d.ts.map +1 -1
  48. package/lib/playback/dash-playback/DashPlayback.d.ts +2 -0
  49. package/lib/playback/dash-playback/DashPlayback.d.ts.map +1 -1
  50. package/lib/playback/dash-playback/DashPlayback.js +37 -25
  51. package/lib/playback/hls-playback/HlsPlayback.d.ts +3 -0
  52. package/lib/playback/hls-playback/HlsPlayback.d.ts.map +1 -1
  53. package/lib/playback/hls-playback/HlsPlayback.js +33 -18
  54. package/lib/playback.types.d.ts +65 -6
  55. package/lib/playback.types.d.ts.map +1 -1
  56. package/lib/playback.types.js +10 -0
  57. package/lib/types.d.ts +54 -5
  58. package/lib/types.d.ts.map +1 -1
  59. package/lib/types.js +31 -2
  60. package/package.json +1 -1
  61. package/src/Player.ts +109 -78
  62. package/src/internal.types.ts +3 -2
  63. package/src/playback/dash-playback/DashPlayback.ts +64 -35
  64. package/src/playback/hls-playback/HlsPlayback.ts +46 -22
  65. package/src/playback.types.ts +65 -5
  66. package/src/types.ts +56 -6
  67. package/temp/player.api.json +611 -87
  68. package/tsconfig.tsbuildinfo +1 -1
  69. package/dist/DashPlayback-BRJzl8D8.js +0 -901
package/dist/player.d.ts CHANGED
@@ -16,17 +16,30 @@ import { setTracer } from '@gcorevideo/utils';
16
16
  import { trace } from '@gcorevideo/utils';
17
17
 
18
18
  /**
19
+ * Dimensions of the player container DOM element.
20
+ * @beta
21
+ */
22
+ export declare type ContainerSize = {
23
+ width: number;
24
+ height: number;
25
+ };
26
+
27
+ /**
28
+ * A plain JS object that must conform to the DASH.js settings schema.
19
29
  * @beta
20
30
  * {@link https://cdn.dashjs.org/latest/jsdoc/module-Settings.html | DASH.js settings}
21
31
  */
22
32
  export declare type DashSettings = Record<string, unknown>;
23
33
 
24
34
  /**
35
+ * Levels of severity of errors. Non-fatal errors usually can be ignored.
25
36
  * @beta
26
37
  */
27
38
  export declare type ErrorLevel = 'FATAL' | 'WARN' | 'INFO';
28
39
 
29
40
  /**
41
+ * An ISO 639-1 language code.
42
+ * @example `pt`
30
43
  * @beta
31
44
  */
32
45
  export declare type LangTag = string;
@@ -36,30 +49,67 @@ export { Logger }
36
49
  export { LogTracer }
37
50
 
38
51
  /**
52
+ * Media delivery protocol
39
53
  * @beta
40
54
  */
41
55
  export declare type MediaTransport = 'dash' | 'hls';
42
56
 
43
57
  /**
58
+ * An error occurred during the playback.
44
59
  * @beta
45
60
  */
46
61
  export declare interface PlaybackError {
62
+ /**
63
+ * Error code.
64
+ */
47
65
  code: PlaybackErrorCode;
66
+ /**
67
+ * Detailed description of the error.
68
+ */
48
69
  description: string;
70
+ /**
71
+ * Level of severity of the error.
72
+ */
49
73
  level: ErrorLevel;
74
+ /**
75
+ * Error message. Non-fatal usually can be ignored.
76
+ */
50
77
  message: string;
78
+ /**
79
+ * Exact component that originated the error.
80
+ * @example
81
+ * - 'core'
82
+ * - 'dash'
83
+ * - 'media_control'
84
+ */
85
+ origin: string;
86
+ /**
87
+ * Component subsystem of the error origin
88
+ */
89
+ scope: PlayerComponentType;
51
90
  }
52
91
 
53
92
  /**
93
+ * Codes of errors occurring within the playback component.
54
94
  * @beta
55
95
  */
56
96
  export declare enum PlaybackErrorCode {
97
+ /**
98
+ * An unknown or uncategorised error.
99
+ */
57
100
  Generic = 0,
101
+ /**
102
+ * The media source is not available. Typically a network error.
103
+ */
58
104
  MediaSourceUnavailable = 1,
105
+ /**
106
+ * The media source is not accessible due to some protection policy.
107
+ */
59
108
  MediaSourceAccessDenied = 3
60
109
  }
61
110
 
62
111
  /**
112
+ * Module to perform the playback.
63
113
  * @beta
64
114
  */
65
115
  export declare type PlaybackModule = 'dash' | 'hls' | 'html5_video';
@@ -72,11 +122,11 @@ export declare type PlaybackType = 'live' | 'vod';
72
122
 
73
123
  /**
74
124
  * The main component to use in the application code.
125
+ * @beta
75
126
  * @remarks
76
127
  * The Player object provides very basic API to control playback.
77
128
  * To build a sophisticated UI, use the plugins framework to tap into the Clappr core.
78
129
  * {@link https://github.com/clappr/clappr/wiki/Architecture}
79
- * @beta
80
130
  */
81
131
  export declare class Player {
82
132
  private config;
@@ -89,16 +139,16 @@ export declare class Player {
89
139
  constructor(config: PlayerConfig);
90
140
  /**
91
141
  * Adds a listener to a player event
92
- * @param event - See {@link PlayerEvent}
93
- * @param handler - See {@link PlayerEventHandler}
142
+ * @param event - event type, see {@link PlayerEvent}
143
+ * @param handler - a callback function to handle the event
94
144
  */
95
- on<T extends PlayerEvent>(event: T, handler: PlayerEventHandler<T>): void;
145
+ on<E extends PlayerEvent>(event: E, handler: PlayerEventHandler<E>): void;
96
146
  /**
97
147
  * Removes a previously added event listener
98
148
  * @param event - See {@link PlayerEvent}
99
- * @param handler - See {@link PlayerEventHandler}
149
+ * @param handler - a callback attached earlier to that event type
100
150
  */
101
- off<T extends PlayerEvent>(event: T, handler: PlayerEventHandler<T>): void;
151
+ off<E extends PlayerEvent>(event: E, handler: PlayerEventHandler<E>): void;
102
152
  /**
103
153
  * Configures the player.
104
154
  *
@@ -163,7 +213,13 @@ export declare class Player {
163
213
  */
164
214
  isDvrEnabled(): boolean;
165
215
  /**
166
- * Indicates the playing state of the player.
216
+ * Indicates whether DVR is in use.
217
+ * @remarks
218
+ * DVR mode, if it is enabled, is triggered we a user seeks behind the live edge.
219
+ */
220
+ isDvrInUse(): boolean;
221
+ /**
222
+ * Indicates the playing state.
167
223
  */
168
224
  isPlaying(): boolean;
169
225
  /**
@@ -186,13 +242,10 @@ export declare class Player {
186
242
  * Resizes the player container element and everything within it.
187
243
  * @param newSize - new size of the player
188
244
  * @remarks
189
- * Use this method when the player itself does not detect the change in size of its container element.
245
+ * Use this method when the player itself does not detect properly the change in size of its container element.
190
246
  * It can be a case for orientation change on some mobile devices.
191
247
  */
192
- resize(newSize: {
193
- width: number;
194
- height: number;
195
- }): void;
248
+ resize(newSize: ContainerSize): void;
196
249
  /**
197
250
  * Seeks to the given time.
198
251
  * @param time - time to seek to in seconds (since the beginning of the stream)
@@ -238,13 +291,21 @@ export declare class Player {
238
291
  private setConfig;
239
292
  private initPlayer;
240
293
  private tuneIn;
294
+ private safeTriggerEvent;
241
295
  private events;
242
296
  private buildCoreOptions;
243
297
  private configurePlaybacks;
244
298
  private buildMediaSourcesList;
245
299
  private bindContainerEventListeners;
300
+ private bindSizeManagementListeners;
246
301
  }
247
302
 
303
+ /**
304
+ * Subsystems of a player component.
305
+ * @beta
306
+ */
307
+ export declare type PlayerComponentType = 'container' | 'core' | 'playback';
308
+
248
309
  /**
249
310
  * Configuration options for the player
250
311
  *
@@ -341,12 +402,13 @@ export declare interface PlayerConfig extends Record<string, unknown> {
341
402
  }
342
403
 
343
404
  /**
344
- * @remarks true is equivalent to 'all', false is equivalent to 'none'
405
+ * @remarks `true` is equivalent to `'all'`, `false` is equivalent to `'none'`
345
406
  * @beta
346
407
  */
347
408
  export declare type PlayerDebugSettings = PlayerDebugTag | boolean;
348
409
 
349
410
  /**
411
+ * Debug output category selector
350
412
  * @beta
351
413
  */
352
414
  export declare type PlayerDebugTag = 'all' | 'clappr' | 'dash' | 'hls' | 'none';
@@ -356,6 +418,20 @@ export declare type PlayerDebugTag = 'all' | 'clappr' | 'dash' | 'hls' | 'none';
356
418
  * @beta
357
419
  */
358
420
  export declare enum PlayerEvent {
421
+ /**
422
+ * Playback has reached the end of the media.
423
+ */
424
+ Ended = "ended",
425
+ /**
426
+ * An error occurred.
427
+ * Parameters: {@link PlaybackError}
428
+ */
429
+ Error = "error",
430
+ /**
431
+ * The player has switched to or from the fullscreen mode.
432
+ * Parameters:`boolean` isFullscreen
433
+ */
434
+ Fullscreen = "fullscreen",
359
435
  /**
360
436
  * The player is ready to use.
361
437
  */
@@ -368,20 +444,45 @@ export declare enum PlayerEvent {
368
444
  * Playback has been paused.
369
445
  */
370
446
  Pause = "pause",
447
+ /**
448
+ * The player's container has been resized.
449
+ * Parameters: {@link ContainerSize}
450
+ */
451
+ Resize = "resize",
452
+ /**
453
+ * The player is seeking to a new position.
454
+ */
455
+ Seek = "seek",
371
456
  /**
372
457
  * Playback has been stopped.
373
458
  */
374
459
  Stop = "stop",
375
460
  /**
376
- * Playback has reached the end of the media.
461
+ * The current playback time has changed.
462
+ * Parameters: {@link TimePosition}
377
463
  */
378
- Ended = "ended"
464
+ TimeUpdate = "timeupdate",
465
+ /**
466
+ * The volume has changed.
467
+ * Parameters: `number` volume in the range 0..1
468
+ */
469
+ VolumeUpdate = "volumeupdate"
379
470
  }
380
471
 
381
472
  /**
473
+ * Type of a listener callback function for a player event.
474
+ * See the description of the event parameters in {@link PlayerEvent}.
382
475
  * @beta
383
476
  */
384
- export declare type PlayerEventHandler<T extends PlayerEvent> = () => void;
477
+ export declare type PlayerEventHandler<E extends PlayerEvent> = (...args: PlayerEventParams<E>) => void;
478
+
479
+ /**
480
+ * @beta
481
+ */
482
+ export declare type PlayerEventParams<E extends PlayerEvent> = E extends PlayerEvent.Seek ? [number] : E extends PlayerEvent.VolumeUpdate ? [number] : E extends PlayerEvent.TimeUpdate ? [TimePosition] : E extends PlayerEvent.Resize ? [{
483
+ width: number;
484
+ height: number;
485
+ }] : E extends PlayerEvent.Fullscreen ? [boolean] : E extends PlayerEvent.Error ? [PlaybackError] : [];
385
486
 
386
487
  /**
387
488
  * A media source to fetch the media data from
@@ -399,7 +500,8 @@ export declare type PlayerMediaSource = string | PlayerMediaSourceDesc;
399
500
  */
400
501
  export declare interface PlayerMediaSourceDesc {
401
502
  /**
402
- * The MIME type of the media source (e.g. "video/mp4", "application/x-mpegURL")
503
+ * The MIME type of the media source (e.g. `"video/mp4"`, `"application/x-mpegURL"`).
504
+ * Necessary if the type cannot be detected from file extension of the source URL.
403
505
  */
404
506
  mimeType?: string;
405
507
  /**
@@ -418,14 +520,27 @@ export declare type PlayerPlugin = {
418
520
  };
419
521
 
420
522
  /**
523
+ * A level of quality within a media source.
421
524
  * @beta
422
525
  */
423
- export declare type QualityLevel = {
526
+ export declare interface QualityLevel {
527
+ /**
528
+ * Zero-based index of the quality level.
529
+ */
424
530
  level: number;
531
+ /**
532
+ * Width of the video, pixels.
533
+ */
425
534
  width: number;
535
+ /**
536
+ * Height of the video, pixels.
537
+ */
426
538
  height: number;
539
+ /**
540
+ * Bitrate of the video, bps.
541
+ */
427
542
  bitrate: number;
428
- };
543
+ }
429
544
 
430
545
  export { reportError_2 as reportError }
431
546
 
@@ -434,13 +549,19 @@ export { SentryTracer }
434
549
  export { setTracer }
435
550
 
436
551
  /**
437
- * For the plugin development
552
+ * Current playback time and total duration of the media.
438
553
  * @beta
439
554
  */
440
- export declare type TimePosition = {
555
+ export declare interface TimePosition {
556
+ /**
557
+ * Current playback time, 0..duration, seconds.
558
+ */
441
559
  current: TimeValue;
560
+ /**
561
+ * Total duration of the media, seconds.
562
+ */
442
563
  total: TimeValue;
443
- };
564
+ }
444
565
 
445
566
  /**
446
567
  * For the plugin development
@@ -460,7 +581,6 @@ export declare type TimeUpdate = TimePosition & {
460
581
 
461
582
  /**
462
583
  * Playback time in seconds since the beginning of the stream (or a segment for the live streams)
463
- * For the plugin development
464
584
  * @beta
465
585
  */
466
586
  export declare type TimeValue = number;
@@ -473,7 +593,12 @@ export { trace }
473
593
  export declare type TranslationKey = string;
474
594
 
475
595
  /**
476
- * [language][key] =\> string
596
+ * Localization strings for the player UI.
597
+ * @remarks
598
+ * The keys are language codes, and the values are objects with keys being the translation keys and values being the translations.
599
+ *
600
+ * This dictionary is used to localize the player UI, including the error messages and is shared across all the player components (including the plugins).
601
+ *
477
602
  * @example
478
603
  * ```
479
604
  * {
@@ -494,6 +619,7 @@ export declare type TranslationKey = string;
494
619
  export declare type TranslationSettings = Partial<Record<LangTag, Record<TranslationKey, string>>>;
495
620
 
496
621
  /**
622
+ * Preferred media delivery protocol
497
623
  * @beta
498
624
  */
499
625
  export declare type TransportPreference = MediaTransport;
@@ -0,0 +1,19 @@
1
+ <!-- Do not edit this file. It is automatically generated by API Documenter. -->
2
+
3
+ [Home](./index.md) &gt; [@gcorevideo/player](./player.md) &gt; [ContainerSize](./player.containersize.md)
4
+
5
+ ## ContainerSize type
6
+
7
+ > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
+ >
9
+
10
+ Dimensions of the player container DOM element.
11
+
12
+ **Signature:**
13
+
14
+ ```typescript
15
+ export type ContainerSize = {
16
+ width: number;
17
+ height: number;
18
+ };
19
+ ```
@@ -7,6 +7,8 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
+ A plain JS object that must conform to the DASH.js settings schema.
11
+
10
12
  [DASH.js settings](https://cdn.dashjs.org/latest/jsdoc/module-Settings.html)
11
13
 
12
14
  **Signature:**
@@ -7,6 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
+ Levels of severity of errors. Non-fatal errors usually can be ignored.
10
11
 
11
12
  **Signature:**
12
13
 
@@ -7,9 +7,15 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
+ An ISO 639-1 language code.
10
11
 
11
12
  **Signature:**
12
13
 
13
14
  ```typescript
14
15
  export type LangTag = string;
15
16
  ```
17
+
18
+ ## Example
19
+
20
+ `pt`
21
+
@@ -56,7 +56,7 @@ Description
56
56
 
57
57
  </td><td>
58
58
 
59
- **_(BETA)_**
59
+ **_(BETA)_** Codes of errors occurring within the playback component.
60
60
 
61
61
 
62
62
  </td></tr>
@@ -119,7 +119,7 @@ Description
119
119
 
120
120
  </td><td>
121
121
 
122
- **_(BETA)_**
122
+ **_(BETA)_** An error occurred during the playback.
123
123
 
124
124
 
125
125
  </td></tr>
@@ -144,6 +144,28 @@ Description
144
144
  **_(BETA)_** Describes a media source with its MIME type and URL.
145
145
 
146
146
 
147
+ </td></tr>
148
+ <tr><td>
149
+
150
+ [QualityLevel](./player.qualitylevel.md)
151
+
152
+
153
+ </td><td>
154
+
155
+ **_(BETA)_** A level of quality within a media source.
156
+
157
+
158
+ </td></tr>
159
+ <tr><td>
160
+
161
+ [TimePosition](./player.timeposition.md)
162
+
163
+
164
+ </td><td>
165
+
166
+ **_(BETA)_** Current playback time and total duration of the media.
167
+
168
+
147
169
  </td></tr>
148
170
  </tbody></table>
149
171
 
@@ -162,12 +184,25 @@ Description
162
184
  </th></tr></thead>
163
185
  <tbody><tr><td>
164
186
 
187
+ [ContainerSize](./player.containersize.md)
188
+
189
+
190
+ </td><td>
191
+
192
+ **_(BETA)_** Dimensions of the player container DOM element.
193
+
194
+
195
+ </td></tr>
196
+ <tr><td>
197
+
165
198
  [DashSettings](./player.dashsettings.md)
166
199
 
167
200
 
168
201
  </td><td>
169
202
 
170
- **_(BETA)_** [DASH.js settings](https://cdn.dashjs.org/latest/jsdoc/module-Settings.html)
203
+ **_(BETA)_** A plain JS object that must conform to the DASH.js settings schema.
204
+
205
+ [DASH.js settings](https://cdn.dashjs.org/latest/jsdoc/module-Settings.html)
171
206
 
172
207
 
173
208
  </td></tr>
@@ -178,7 +213,7 @@ Description
178
213
 
179
214
  </td><td>
180
215
 
181
- **_(BETA)_**
216
+ **_(BETA)_** Levels of severity of errors. Non-fatal errors usually can be ignored.
182
217
 
183
218
 
184
219
  </td></tr>
@@ -189,7 +224,7 @@ Description
189
224
 
190
225
  </td><td>
191
226
 
192
- **_(BETA)_**
227
+ **_(BETA)_** An ISO 639-1 language code.
193
228
 
194
229
 
195
230
  </td></tr>
@@ -200,7 +235,7 @@ Description
200
235
 
201
236
  </td><td>
202
237
 
203
- **_(BETA)_**
238
+ **_(BETA)_** Media delivery protocol
204
239
 
205
240
 
206
241
  </td></tr>
@@ -211,7 +246,7 @@ Description
211
246
 
212
247
  </td><td>
213
248
 
214
- **_(BETA)_**
249
+ **_(BETA)_** Module to perform the playback.
215
250
 
216
251
 
217
252
  </td></tr>
@@ -228,18 +263,18 @@ Description
228
263
  </td></tr>
229
264
  <tr><td>
230
265
 
231
- [PlayerDebugSettings](./player.playerdebugsettings.md)
266
+ [PlayerComponentType](./player.playercomponenttype.md)
232
267
 
233
268
 
234
269
  </td><td>
235
270
 
236
- **_(BETA)_**
271
+ **_(BETA)_** Subsystems of a player component.
237
272
 
238
273
 
239
274
  </td></tr>
240
275
  <tr><td>
241
276
 
242
- [PlayerDebugTag](./player.playerdebugtag.md)
277
+ [PlayerDebugSettings](./player.playerdebugsettings.md)
243
278
 
244
279
 
245
280
  </td><td>
@@ -250,29 +285,29 @@ Description
250
285
  </td></tr>
251
286
  <tr><td>
252
287
 
253
- [PlayerEventHandler](./player.playereventhandler.md)
288
+ [PlayerDebugTag](./player.playerdebugtag.md)
254
289
 
255
290
 
256
291
  </td><td>
257
292
 
258
- **_(BETA)_**
293
+ **_(BETA)_** Debug output category selector
259
294
 
260
295
 
261
296
  </td></tr>
262
297
  <tr><td>
263
298
 
264
- [PlayerMediaSource](./player.playermediasource.md)
299
+ [PlayerEventHandler](./player.playereventhandler.md)
265
300
 
266
301
 
267
302
  </td><td>
268
303
 
269
- **_(BETA)_** A media source to fetch the media data from
304
+ **_(BETA)_** Type of a listener callback function for a player event. See the description of the event parameters in [PlayerEvent](./player.playerevent.md)<!-- -->.
270
305
 
271
306
 
272
307
  </td></tr>
273
308
  <tr><td>
274
309
 
275
- [PlayerPlugin](./player.playerplugin.md)
310
+ [PlayerEventParams](./player.playereventparams.md)
276
311
 
277
312
 
278
313
  </td><td>
@@ -283,23 +318,23 @@ Description
283
318
  </td></tr>
284
319
  <tr><td>
285
320
 
286
- [QualityLevel](./player.qualitylevel.md)
321
+ [PlayerMediaSource](./player.playermediasource.md)
287
322
 
288
323
 
289
324
  </td><td>
290
325
 
291
- **_(BETA)_**
326
+ **_(BETA)_** A media source to fetch the media data from
292
327
 
293
328
 
294
329
  </td></tr>
295
330
  <tr><td>
296
331
 
297
- [TimePosition](./player.timeposition.md)
332
+ [PlayerPlugin](./player.playerplugin.md)
298
333
 
299
334
 
300
335
  </td><td>
301
336
 
302
- **_(BETA)_** For the plugin development
337
+ **_(BETA)_**
303
338
 
304
339
 
305
340
  </td></tr>
@@ -332,7 +367,7 @@ Description
332
367
 
333
368
  </td><td>
334
369
 
335
- **_(BETA)_** Playback time in seconds since the beginning of the stream (or a segment for the live streams) For the plugin development
370
+ **_(BETA)_** Playback time in seconds since the beginning of the stream (or a segment for the live streams)
336
371
 
337
372
 
338
373
  </td></tr>
@@ -354,7 +389,7 @@ Description
354
389
 
355
390
  </td><td>
356
391
 
357
- **_(BETA)_** \[language\]\[key\] =<!-- -->&gt; string
392
+ **_(BETA)_** Localization strings for the player UI.
358
393
 
359
394
 
360
395
  </td></tr>
@@ -365,7 +400,7 @@ Description
365
400
 
366
401
  </td><td>
367
402
 
368
- **_(BETA)_**
403
+ **_(BETA)_** Preferred media delivery protocol
369
404
 
370
405
 
371
406
  </td></tr>
@@ -7,6 +7,7 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
+ Media delivery protocol
10
11
 
11
12
  **Signature:**
12
13
 
@@ -7,6 +7,8 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
+ Error code.
11
+
10
12
  **Signature:**
11
13
 
12
14
  ```typescript
@@ -7,6 +7,8 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
+ Detailed description of the error.
11
+
10
12
  **Signature:**
11
13
 
12
14
  ```typescript
@@ -7,6 +7,8 @@
7
7
  > This API is provided as a beta preview for developers and may change based on feedback that we receive. Do not use this API in a production environment.
8
8
  >
9
9
 
10
+ Level of severity of the error.
11
+
10
12
  **Signature:**
11
13
 
12
14
  ```typescript