@gcorevideo/player 2.22.1 → 2.22.3
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/core.js +1 -1
- package/dist/index.css +1427 -1427
- package/dist/index.js +111 -33
- package/dist/player.d.ts +243 -95
- package/dist/plugins/index.css +350 -350
- package/dist/plugins/index.js +111 -33
- package/docs/api/player.bottomgear.additem.md +95 -0
- package/docs/api/player.bottomgear.md +63 -19
- package/docs/api/player.bottomgear.refresh.md +5 -1
- package/docs/api/player.clapprnerdstats.md +0 -2
- package/docs/api/player.clicktopause.md +1 -1
- package/docs/api/player.closedcaptions.md +2 -2
- package/docs/api/player.closedcaptionspluginsettings.md +5 -0
- package/docs/api/player.errorscreen.md +18 -4
- package/docs/api/player.errorscreenpluginsettings.md +1 -4
- package/docs/api/player.errorscreensettings.md +15 -0
- package/docs/api/{player.mediacontrolevents.md → player.gearevents.md} +7 -7
- package/docs/api/player.levelselector.events.md +0 -1
- package/docs/api/player.levelselector.md +1 -1
- package/docs/api/player.md +33 -36
- package/docs/api/{player.bottomgear.setcontent.md → player.mediacontrol.handlecustomarea.md} +5 -9
- package/docs/api/player.mediacontrol.md +15 -1
- package/docs/api/player.mediacontrol.putelement.md +2 -2
- package/docs/api/player.mediacontrol.toggleelement.md +2 -4
- package/docs/api/player.mediacontrolelement.md +1 -1
- package/docs/api/player.playbackrate.md +22 -3
- package/docs/api/{player.gearoptionsitem.md → player.playbackrateoption.md} +6 -4
- package/docs/api/player.playbackratesettings.md +20 -0
- package/docs/api/player.sourcecontroller._constructor_.md +49 -0
- package/docs/api/player.sourcecontroller.md +70 -7
- package/docs/api/player.spinnerevents.md +1 -4
- package/docs/api/player.spinnerthreebounce._constructor_.md +0 -3
- package/docs/api/player.spinnerthreebounce.hide.md +0 -3
- package/docs/api/player.spinnerthreebounce.md +6 -9
- package/docs/api/player.spinnerthreebounce.show.md +2 -5
- package/lib/index.plugins.d.ts +1 -0
- package/lib/index.plugins.d.ts.map +1 -1
- package/lib/index.plugins.js +1 -0
- package/lib/internal.types.d.ts +5 -0
- package/lib/internal.types.d.ts.map +1 -1
- package/lib/playback.types.d.ts +0 -5
- package/lib/playback.types.d.ts.map +1 -1
- package/lib/plugins/bottom-gear/BottomGear.d.ts +35 -13
- package/lib/plugins/bottom-gear/BottomGear.d.ts.map +1 -1
- package/lib/plugins/bottom-gear/BottomGear.js +35 -3
- package/lib/plugins/click-to-pause/ClickToPause.d.ts +1 -1
- package/lib/plugins/click-to-pause/ClickToPause.d.ts.map +1 -1
- package/lib/plugins/click-to-pause/ClickToPause.js +3 -2
- package/lib/plugins/error-screen/ErrorScreen.d.ts +29 -4
- package/lib/plugins/error-screen/ErrorScreen.d.ts.map +1 -1
- package/lib/plugins/error-screen/ErrorScreen.js +17 -2
- package/lib/plugins/media-control/MediaControl.d.ts +0 -11
- package/lib/plugins/media-control/MediaControl.d.ts.map +1 -1
- package/lib/plugins/media-control/MediaControl.js +0 -12
- package/lib/plugins/source-controller/SourceController.d.ts +40 -4
- package/lib/plugins/source-controller/SourceController.d.ts.map +1 -1
- package/lib/plugins/source-controller/SourceController.js +41 -4
- package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.d.ts +9 -6
- package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.d.ts.map +1 -1
- package/lib/plugins/spinner-three-bounce/SpinnerThreeBounce.js +11 -6
- package/lib/plugins/subtitles/ClosedCaptions.d.ts +7 -7
- package/lib/plugins/subtitles/ClosedCaptions.d.ts.map +1 -1
- package/lib/plugins/subtitles/ClosedCaptions.js +2 -2
- package/package.json +1 -1
- package/src/index.plugins.ts +1 -0
- package/src/internal.types.ts +6 -0
- package/src/playback.types.ts +0 -5
- package/src/plugins/bottom-gear/BottomGear.ts +35 -16
- package/src/plugins/click-to-pause/ClickToPause.ts +3 -2
- package/src/plugins/error-screen/ErrorScreen.ts +30 -4
- package/src/plugins/media-control/MediaControl.ts +0 -12
- package/src/plugins/source-controller/SourceController.ts +41 -4
- package/src/plugins/spinner-three-bounce/SpinnerThreeBounce.ts +11 -6
- package/src/plugins/subtitles/ClosedCaptions.ts +8 -9
- package/temp/player.api.json +260 -299
- package/tsconfig.tsbuildinfo +1 -1
- package/assets/bottom-gear/bottomgear copy.ejs +0 -10
- package/docs/api/player.bottomgear.getelement.md +0 -56
- package/docs/api/player.gearitemelement.md +0 -18
- package/docs/api/player.subtitlespluginsettings.md +0 -18
- package/docs/api/player.texttrackitem.id.md +0 -11
- package/docs/api/player.texttrackitem.md +0 -87
- package/docs/api/player.texttrackitem.name.md +0 -11
- package/docs/api/player.texttrackitem.track.md +0 -11
package/docs/api/player.md
CHANGED
|
@@ -72,7 +72,7 @@ Description
|
|
|
72
72
|
|
|
73
73
|
</td><td>
|
|
74
74
|
|
|
75
|
-
**_(BETA)_** `PLUGIN` that adds
|
|
75
|
+
**_(BETA)_** `PLUGIN` that adds a button to extend the media controls UI with extra options.
|
|
76
76
|
|
|
77
77
|
|
|
78
78
|
</td></tr>
|
|
@@ -105,7 +105,7 @@ Description
|
|
|
105
105
|
|
|
106
106
|
</td><td>
|
|
107
107
|
|
|
108
|
-
**_(BETA)_** `PLUGIN` that
|
|
108
|
+
**_(BETA)_** A small `PLUGIN` that toggles the playback state on click over the video container
|
|
109
109
|
|
|
110
110
|
|
|
111
111
|
</td></tr>
|
|
@@ -160,7 +160,7 @@ Description
|
|
|
160
160
|
|
|
161
161
|
</td><td>
|
|
162
162
|
|
|
163
|
-
|
|
163
|
+
`PLUGIN` that displays fatal errors nicely in the overlay on top of the player.
|
|
164
164
|
|
|
165
165
|
|
|
166
166
|
</td></tr>
|
|
@@ -314,7 +314,7 @@ Description
|
|
|
314
314
|
|
|
315
315
|
</td><td>
|
|
316
316
|
|
|
317
|
-
|
|
317
|
+
`PLUGIN` that is managing the automatic failover between media sources.
|
|
318
318
|
|
|
319
319
|
|
|
320
320
|
</td></tr>
|
|
@@ -325,7 +325,7 @@ Description
|
|
|
325
325
|
|
|
326
326
|
</td><td>
|
|
327
327
|
|
|
328
|
-
|
|
328
|
+
`PLUGIN` that shows a pending operation indicator when playback is buffering or in a similar state.
|
|
329
329
|
|
|
330
330
|
|
|
331
331
|
</td></tr>
|
|
@@ -379,12 +379,12 @@ Description
|
|
|
379
379
|
</th></tr></thead>
|
|
380
380
|
<tbody><tr><td>
|
|
381
381
|
|
|
382
|
-
[
|
|
382
|
+
[GearEvents](./player.gearevents.md)
|
|
383
383
|
|
|
384
384
|
|
|
385
385
|
</td><td>
|
|
386
386
|
|
|
387
|
-
**_(BETA)_**
|
|
387
|
+
**_(BETA)_** Events triggered by the plugin
|
|
388
388
|
|
|
389
389
|
|
|
390
390
|
</td></tr>
|
|
@@ -417,7 +417,7 @@ A top-level event on the player object
|
|
|
417
417
|
|
|
418
418
|
</td><td>
|
|
419
419
|
|
|
420
|
-
|
|
420
|
+
Custom events emitted by the plugin
|
|
421
421
|
|
|
422
422
|
|
|
423
423
|
</td></tr>
|
|
@@ -615,15 +615,6 @@ A level of quality within a media source.
|
|
|
615
615
|
**_(BETA)_** Plugin settings
|
|
616
616
|
|
|
617
617
|
|
|
618
|
-
</td></tr>
|
|
619
|
-
<tr><td>
|
|
620
|
-
|
|
621
|
-
[TextTrackItem](./player.texttrackitem.md)
|
|
622
|
-
|
|
623
|
-
|
|
624
|
-
</td><td>
|
|
625
|
-
|
|
626
|
-
|
|
627
618
|
</td></tr>
|
|
628
619
|
<tr><td>
|
|
629
620
|
|
|
@@ -669,6 +660,8 @@ Description
|
|
|
669
660
|
|
|
670
661
|
</td><td>
|
|
671
662
|
|
|
663
|
+
**_(BETA)_** Configuration options for the [ClosedCaptions](./player.closedcaptions.md) plugin.
|
|
664
|
+
|
|
672
665
|
|
|
673
666
|
</td></tr>
|
|
674
667
|
<tr><td>
|
|
@@ -733,60 +726,73 @@ Levels of severity of errors. Non-fatal errors usually can be ignored.
|
|
|
733
726
|
|
|
734
727
|
</td><td>
|
|
735
728
|
|
|
736
|
-
|
|
729
|
+
Configuration options for the [ErrorScreen](./player.errorscreen.md) plugin.
|
|
737
730
|
|
|
738
731
|
|
|
739
732
|
</td></tr>
|
|
740
733
|
<tr><td>
|
|
741
734
|
|
|
742
|
-
[
|
|
735
|
+
[ErrorScreenSettings](./player.errorscreensettings.md)
|
|
743
736
|
|
|
744
737
|
|
|
745
738
|
</td><td>
|
|
746
739
|
|
|
740
|
+
Settings for the [ErrorScreen](./player.errorscreen.md) plugin.
|
|
741
|
+
|
|
747
742
|
|
|
748
743
|
</td></tr>
|
|
749
744
|
<tr><td>
|
|
750
745
|
|
|
751
|
-
[
|
|
746
|
+
[LangTag](./player.langtag.md)
|
|
752
747
|
|
|
753
748
|
|
|
754
749
|
</td><td>
|
|
755
750
|
|
|
756
|
-
|
|
751
|
+
An ISO 639-1 language code.
|
|
757
752
|
|
|
758
753
|
|
|
759
754
|
</td></tr>
|
|
760
755
|
<tr><td>
|
|
761
756
|
|
|
762
|
-
[
|
|
757
|
+
[MediaControlElement](./player.mediacontrolelement.md)
|
|
763
758
|
|
|
764
759
|
|
|
765
760
|
</td><td>
|
|
766
761
|
|
|
767
|
-
|
|
762
|
+
**_(BETA)_** Media control elements, mount points for additional plugins
|
|
768
763
|
|
|
769
764
|
|
|
770
765
|
</td></tr>
|
|
771
766
|
<tr><td>
|
|
772
767
|
|
|
773
|
-
[
|
|
768
|
+
[PlaybackModule](./player.playbackmodule.md)
|
|
774
769
|
|
|
775
770
|
|
|
776
771
|
</td><td>
|
|
777
772
|
|
|
778
|
-
|
|
773
|
+
Module to perform the playback.
|
|
779
774
|
|
|
780
775
|
|
|
781
776
|
</td></tr>
|
|
782
777
|
<tr><td>
|
|
783
778
|
|
|
784
|
-
[
|
|
779
|
+
[PlaybackRateOption](./player.playbackrateoption.md)
|
|
785
780
|
|
|
786
781
|
|
|
787
782
|
</td><td>
|
|
788
783
|
|
|
789
|
-
|
|
784
|
+
**_(BETA)_**
|
|
785
|
+
|
|
786
|
+
|
|
787
|
+
</td></tr>
|
|
788
|
+
<tr><td>
|
|
789
|
+
|
|
790
|
+
[PlaybackRateSettings](./player.playbackratesettings.md)
|
|
791
|
+
|
|
792
|
+
|
|
793
|
+
</td><td>
|
|
794
|
+
|
|
795
|
+
**_(BETA)_**
|
|
790
796
|
|
|
791
797
|
|
|
792
798
|
</td></tr>
|
|
@@ -882,15 +888,6 @@ A media source to fetch the media data from
|
|
|
882
888
|
|
|
883
889
|
|
|
884
890
|
|
|
885
|
-
</td></tr>
|
|
886
|
-
<tr><td>
|
|
887
|
-
|
|
888
|
-
[SubtitlesPluginSettings](./player.subtitlespluginsettings.md)
|
|
889
|
-
|
|
890
|
-
|
|
891
|
-
</td><td>
|
|
892
|
-
|
|
893
|
-
|
|
894
891
|
</td></tr>
|
|
895
892
|
<tr><td>
|
|
896
893
|
|
package/docs/api/{player.bottomgear.setcontent.md → player.mediacontrol.handlecustomarea.md}
RENAMED
|
@@ -1,18 +1,16 @@
|
|
|
1
1
|
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
2
|
|
|
3
|
-
[Home](./index.md) > [@gcorevideo/player](./player.md) > [
|
|
3
|
+
[Home](./index.md) > [@gcorevideo/player](./player.md) > [MediaControl](./player.mediacontrol.md) > [handleCustomArea](./player.mediacontrol.handlecustomarea.md)
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## MediaControl.handleCustomArea() method
|
|
6
6
|
|
|
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
|
-
Replaces the content of the gear menu
|
|
11
|
-
|
|
12
10
|
**Signature:**
|
|
13
11
|
|
|
14
12
|
```typescript
|
|
15
|
-
|
|
13
|
+
handleCustomArea(handler: (name: string, content: HTMLElement) => void): void;
|
|
16
14
|
```
|
|
17
15
|
|
|
18
16
|
## Parameters
|
|
@@ -35,18 +33,16 @@ Description
|
|
|
35
33
|
</th></tr></thead>
|
|
36
34
|
<tbody><tr><td>
|
|
37
35
|
|
|
38
|
-
|
|
36
|
+
handler
|
|
39
37
|
|
|
40
38
|
|
|
41
39
|
</td><td>
|
|
42
40
|
|
|
43
|
-
|
|
41
|
+
(name: string, content: HTMLElement) => void
|
|
44
42
|
|
|
45
43
|
|
|
46
44
|
</td><td>
|
|
47
45
|
|
|
48
|
-
Zepto result of the element
|
|
49
|
-
|
|
50
46
|
|
|
51
47
|
</td></tr>
|
|
52
48
|
</tbody></table>
|
|
@@ -229,6 +229,20 @@ Description
|
|
|
229
229
|
**_(BETA)_** Get a media control element DOM node
|
|
230
230
|
|
|
231
231
|
|
|
232
|
+
</td></tr>
|
|
233
|
+
<tr><td>
|
|
234
|
+
|
|
235
|
+
[handleCustomArea(handler)](./player.mediacontrol.handlecustomarea.md)
|
|
236
|
+
|
|
237
|
+
|
|
238
|
+
</td><td>
|
|
239
|
+
|
|
240
|
+
|
|
241
|
+
</td><td>
|
|
242
|
+
|
|
243
|
+
**_(BETA)_**
|
|
244
|
+
|
|
245
|
+
|
|
232
246
|
</td></tr>
|
|
233
247
|
<tr><td>
|
|
234
248
|
|
|
@@ -274,7 +288,7 @@ Description
|
|
|
274
288
|
</td></tr>
|
|
275
289
|
<tr><td>
|
|
276
290
|
|
|
277
|
-
[toggleElement(
|
|
291
|
+
[toggleElement(area, show)](./player.mediacontrol.toggleelement.md)
|
|
278
292
|
|
|
279
293
|
|
|
280
294
|
</td><td>
|
|
@@ -10,7 +10,7 @@
|
|
|
10
10
|
**Signature:**
|
|
11
11
|
|
|
12
12
|
```typescript
|
|
13
|
-
putElement(name: MediaControlElement, element:
|
|
13
|
+
putElement(name: MediaControlElement, element: ZeptoResult): void;
|
|
14
14
|
```
|
|
15
15
|
|
|
16
16
|
## Parameters
|
|
@@ -52,7 +52,7 @@ element
|
|
|
52
52
|
|
|
53
53
|
</td><td>
|
|
54
54
|
|
|
55
|
-
|
|
55
|
+
[ZeptoResult](./player.zeptoresult.md)
|
|
56
56
|
|
|
57
57
|
|
|
58
58
|
</td><td>
|
|
@@ -12,7 +12,7 @@ Toggle the visibility of a media control element
|
|
|
12
12
|
**Signature:**
|
|
13
13
|
|
|
14
14
|
```typescript
|
|
15
|
-
toggleElement(
|
|
15
|
+
toggleElement(area: MediaControlElement, show: boolean): void;
|
|
16
16
|
```
|
|
17
17
|
|
|
18
18
|
## Parameters
|
|
@@ -35,7 +35,7 @@ Description
|
|
|
35
35
|
</th></tr></thead>
|
|
36
36
|
<tbody><tr><td>
|
|
37
37
|
|
|
38
|
-
|
|
38
|
+
area
|
|
39
39
|
|
|
40
40
|
|
|
41
41
|
</td><td>
|
|
@@ -45,8 +45,6 @@ name
|
|
|
45
45
|
|
|
46
46
|
</td><td>
|
|
47
47
|
|
|
48
|
-
The name of the media control element
|
|
49
|
-
|
|
50
48
|
|
|
51
49
|
</td></tr>
|
|
52
50
|
<tr><td>
|
|
@@ -12,5 +12,5 @@ Media control elements, mount points for additional plugins
|
|
|
12
12
|
**Signature:**
|
|
13
13
|
|
|
14
14
|
```typescript
|
|
15
|
-
export type MediaControlElement = 'audiotracks' | 'cc' | 'clipText' | 'dvr' | 'duration' | 'gear' | 'pip' | 'playbackRate' | 'position' | 'seekBarContainer';
|
|
15
|
+
export type MediaControlElement = 'audiotracks' | 'cc' | 'clipText' | 'dvr' | 'duration' | 'fullscreen' | 'gear' | 'multicamera' | 'pip' | 'playbackRate' | 'position' | 'seekBarContainer' | 'vr' | 'volume';
|
|
16
16
|
```
|
|
@@ -20,11 +20,30 @@ export declare class PlaybackRate extends UICorePlugin
|
|
|
20
20
|
|
|
21
21
|
Depends on:
|
|
22
22
|
|
|
23
|
-
- [
|
|
23
|
+
- [MediaControl](./player.mediacontrol.md)
|
|
24
24
|
|
|
25
|
-
- [
|
|
25
|
+
- [BottomGear](./player.bottomgear.md)
|
|
26
26
|
|
|
27
|
-
It renders
|
|
27
|
+
It renders an option in the gear menu, which opens a dropdown with the options to change the playback rate. Note that the playback rate change is supported only for VOD or DVR-enabled live streams.
|
|
28
|
+
|
|
29
|
+
Plugin settings - [PlaybackRateSettings](./player.playbackratesettings.md)
|
|
30
|
+
|
|
31
|
+
## Example
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
```ts
|
|
35
|
+
import { Player, PlaybackRateSettings } from '@gcorevideo/player'
|
|
36
|
+
Player.registerPlugin(PlaybackRate)
|
|
37
|
+
const player = new Player({
|
|
38
|
+
playbackRate: {
|
|
39
|
+
options: [
|
|
40
|
+
{ value: 0.5, label: '0.5x' },
|
|
41
|
+
{ value: 1, label: '1x' },
|
|
42
|
+
],
|
|
43
|
+
defaultValue: 1,
|
|
44
|
+
} as PlaybackRateSettings,
|
|
45
|
+
})
|
|
46
|
+
```
|
|
28
47
|
|
|
29
48
|
## Constructors
|
|
30
49
|
|
|
@@ -1,16 +1,18 @@
|
|
|
1
1
|
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
2
|
|
|
3
|
-
[Home](./index.md) > [@gcorevideo/player](./player.md) > [
|
|
3
|
+
[Home](./index.md) > [@gcorevideo/player](./player.md) > [PlaybackRateOption](./player.playbackrateoption.md)
|
|
4
4
|
|
|
5
|
-
##
|
|
5
|
+
## PlaybackRateOption type
|
|
6
6
|
|
|
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 element inside the gear menu
|
|
11
10
|
|
|
12
11
|
**Signature:**
|
|
13
12
|
|
|
14
13
|
```typescript
|
|
15
|
-
export type
|
|
14
|
+
export type PlaybackRateOption = {
|
|
15
|
+
value: number;
|
|
16
|
+
label: string;
|
|
17
|
+
};
|
|
16
18
|
```
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@gcorevideo/player](./player.md) > [PlaybackRateSettings](./player.playbackratesettings.md)
|
|
4
|
+
|
|
5
|
+
## PlaybackRateSettings 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
|
+
|
|
11
|
+
**Signature:**
|
|
12
|
+
|
|
13
|
+
```typescript
|
|
14
|
+
export type PlaybackRateSettings = {
|
|
15
|
+
options?: PlaybackRateOption[];
|
|
16
|
+
defaultValue?: number;
|
|
17
|
+
};
|
|
18
|
+
```
|
|
19
|
+
**References:** [PlaybackRateOption](./player.playbackrateoption.md)
|
|
20
|
+
|
|
@@ -0,0 +1,49 @@
|
|
|
1
|
+
<!-- Do not edit this file. It is automatically generated by API Documenter. -->
|
|
2
|
+
|
|
3
|
+
[Home](./index.md) > [@gcorevideo/player](./player.md) > [SourceController](./player.sourcecontroller.md) > [(constructor)](./player.sourcecontroller._constructor_.md)
|
|
4
|
+
|
|
5
|
+
## SourceController.(constructor)
|
|
6
|
+
|
|
7
|
+
Constructs a new instance of the `SourceController` class
|
|
8
|
+
|
|
9
|
+
**Signature:**
|
|
10
|
+
|
|
11
|
+
```typescript
|
|
12
|
+
constructor(core: ClapprCore);
|
|
13
|
+
```
|
|
14
|
+
|
|
15
|
+
## Parameters
|
|
16
|
+
|
|
17
|
+
<table><thead><tr><th>
|
|
18
|
+
|
|
19
|
+
Parameter
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
</th><th>
|
|
23
|
+
|
|
24
|
+
Type
|
|
25
|
+
|
|
26
|
+
|
|
27
|
+
</th><th>
|
|
28
|
+
|
|
29
|
+
Description
|
|
30
|
+
|
|
31
|
+
|
|
32
|
+
</th></tr></thead>
|
|
33
|
+
<tbody><tr><td>
|
|
34
|
+
|
|
35
|
+
core
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
</td><td>
|
|
39
|
+
|
|
40
|
+
ClapprCore
|
|
41
|
+
|
|
42
|
+
|
|
43
|
+
</td><td>
|
|
44
|
+
|
|
45
|
+
The Clappr core instance.
|
|
46
|
+
|
|
47
|
+
|
|
48
|
+
</td></tr>
|
|
49
|
+
</tbody></table>
|
|
@@ -4,10 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## SourceController class
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
>
|
|
9
|
-
|
|
10
|
-
`PLUGIN` that is responsible for managing the automatic failover between sources.
|
|
7
|
+
`PLUGIN` that is managing the automatic failover between media sources.
|
|
11
8
|
|
|
12
9
|
**Signature:**
|
|
13
10
|
|
|
@@ -18,11 +15,44 @@ export declare class SourceController extends CorePlugin
|
|
|
18
15
|
|
|
19
16
|
## Remarks
|
|
20
17
|
|
|
21
|
-
Have a look at the [source failover diagram](https://miro.com/app/board/uXjVLiN15tY=/?share_link_id=390327585787) for the details on how sources ordering and selection works.
|
|
18
|
+
Have a look at the [source failover diagram](https://miro.com/app/board/uXjVLiN15tY=/?share_link_id=390327585787) for the details on how sources ordering and selection works. Below is a simplified diagram:
|
|
22
19
|
|
|
23
|
-
|
|
20
|
+
```markdown
|
|
21
|
+
sources_list:
|
|
22
|
+
- a.mpd | +--------------------+
|
|
23
|
+
- b.m3u8 |--->| init |
|
|
24
|
+
- ... | |--------------------|
|
|
25
|
+
| current_source = 0 |
|
|
26
|
+
+--------------------+
|
|
27
|
+
|
|
|
28
|
+
| source = a.mpd
|
|
29
|
+
| playback = dash.js
|
|
30
|
+
v
|
|
31
|
+
+------------------+
|
|
32
|
+
+-->| load source |
|
|
33
|
+
| +---------|--------+
|
|
34
|
+
| v
|
|
35
|
+
| +------------------+
|
|
36
|
+
| | play |
|
|
37
|
+
| +---------|--------+
|
|
38
|
+
| |
|
|
39
|
+
| v
|
|
40
|
+
| +-----------------------+
|
|
41
|
+
| | on playback_error |
|
|
42
|
+
| |-----------------------|
|
|
43
|
+
| | current_source = |
|
|
44
|
+
| | (current_source + 1) |
|
|
45
|
+
| | % len sources_list |
|
|
46
|
+
| | |
|
|
47
|
+
| | delay 1..3s |
|
|
48
|
+
| +---------------|-------+
|
|
49
|
+
| |
|
|
50
|
+
| source=b.m3u8 |
|
|
51
|
+
| playback=hls.js |
|
|
52
|
+
+-------------------+
|
|
24
53
|
|
|
25
|
-
|
|
54
|
+
```
|
|
55
|
+
This plugin does not expose any public methods apart from required by the Clappr plugin interface. It is supposed to work autonomously.
|
|
26
56
|
|
|
27
57
|
## Example
|
|
28
58
|
|
|
@@ -33,3 +63,36 @@ import { SourceController } from '@gcorevideo/player'
|
|
|
33
63
|
Player.registerPlugin(SourceController)
|
|
34
64
|
```
|
|
35
65
|
|
|
66
|
+
## Constructors
|
|
67
|
+
|
|
68
|
+
<table><thead><tr><th>
|
|
69
|
+
|
|
70
|
+
Constructor
|
|
71
|
+
|
|
72
|
+
|
|
73
|
+
</th><th>
|
|
74
|
+
|
|
75
|
+
Modifiers
|
|
76
|
+
|
|
77
|
+
|
|
78
|
+
</th><th>
|
|
79
|
+
|
|
80
|
+
Description
|
|
81
|
+
|
|
82
|
+
|
|
83
|
+
</th></tr></thead>
|
|
84
|
+
<tbody><tr><td>
|
|
85
|
+
|
|
86
|
+
[(constructor)(core)](./player.sourcecontroller._constructor_.md)
|
|
87
|
+
|
|
88
|
+
|
|
89
|
+
</td><td>
|
|
90
|
+
|
|
91
|
+
|
|
92
|
+
</td><td>
|
|
93
|
+
|
|
94
|
+
Constructs a new instance of the `SourceController` class
|
|
95
|
+
|
|
96
|
+
|
|
97
|
+
</td></tr>
|
|
98
|
+
</tbody></table>
|
|
@@ -4,9 +4,6 @@
|
|
|
4
4
|
|
|
5
5
|
## SpinnerEvents enum
|
|
6
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
7
|
Custom events emitted by the plugin
|
|
11
8
|
|
|
12
9
|
**Signature:**
|
|
@@ -45,7 +42,7 @@ SYNC
|
|
|
45
42
|
|
|
46
43
|
</td><td>
|
|
47
44
|
|
|
48
|
-
|
|
45
|
+
Emitted at the end of the spinner animation cycle to facilitate smooth UI updates, for instance, [SourceController](./player.sourcecontroller.md) listens to this event to reload the source when the spinner is hidden
|
|
49
46
|
|
|
50
47
|
|
|
51
48
|
</td></tr>
|
|
@@ -4,9 +4,6 @@
|
|
|
4
4
|
|
|
5
5
|
## SpinnerThreeBounce.(constructor)
|
|
6
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
7
|
Constructs a new instance of the `SpinnerThreeBounce` class
|
|
11
8
|
|
|
12
9
|
**Signature:**
|
|
@@ -4,10 +4,7 @@
|
|
|
4
4
|
|
|
5
5
|
## SpinnerThreeBounce class
|
|
6
6
|
|
|
7
|
-
|
|
8
|
-
>
|
|
9
|
-
|
|
10
|
-
`PLUGIN` that shows a pending operation indicator when playback is buffering or in a similar state
|
|
7
|
+
`PLUGIN` that shows a pending operation indicator when playback is buffering or in a similar state.
|
|
11
8
|
|
|
12
9
|
**Signature:**
|
|
13
10
|
|
|
@@ -18,7 +15,7 @@ export declare class SpinnerThreeBounce extends UIContainerPlugin
|
|
|
18
15
|
|
|
19
16
|
## Remarks
|
|
20
17
|
|
|
21
|
-
Events emitted- [SpinnerEvents](./player.spinnerevents.md) Other plugins can use [show](./player.spinnerthreebounce.show.md) and [hide](./player.spinnerthreebounce.hide.md) methods to implement custom pending/progress indication scenarios.
|
|
18
|
+
It is aliased as `Spinner` for convenience. Events emitted - [SpinnerEvents](./player.spinnerevents.md) Other plugins can use [show](./player.spinnerthreebounce.show.md) and [hide](./player.spinnerthreebounce.hide.md) methods to implement custom pending/progress indication scenarios.
|
|
22
19
|
|
|
23
20
|
## Constructors
|
|
24
21
|
|
|
@@ -48,7 +45,7 @@ Description
|
|
|
48
45
|
|
|
49
46
|
</td><td>
|
|
50
47
|
|
|
51
|
-
|
|
48
|
+
Constructs a new instance of the `SpinnerThreeBounce` class
|
|
52
49
|
|
|
53
50
|
|
|
54
51
|
</td></tr>
|
|
@@ -82,7 +79,7 @@ Description
|
|
|
82
79
|
|
|
83
80
|
</td><td>
|
|
84
81
|
|
|
85
|
-
|
|
82
|
+
Hides the spinner.
|
|
86
83
|
|
|
87
84
|
|
|
88
85
|
</td></tr>
|
|
@@ -96,9 +93,9 @@ Description
|
|
|
96
93
|
|
|
97
94
|
</td><td>
|
|
98
95
|
|
|
99
|
-
|
|
96
|
+
Shows the spinner.
|
|
100
97
|
|
|
101
|
-
|
|
98
|
+
The method call prevents spinner's built-in logic from automatically hiding it until [SpinnerThreeBounce.hide()](./player.spinnerthreebounce.hide.md) is called
|
|
102
99
|
|
|
103
100
|
|
|
104
101
|
</td></tr>
|
|
@@ -4,12 +4,9 @@
|
|
|
4
4
|
|
|
5
5
|
## SpinnerThreeBounce.show() method
|
|
6
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
7
|
Shows the spinner.
|
|
11
8
|
|
|
12
|
-
|
|
9
|
+
The method call prevents spinner's built-in logic from automatically hiding it until [SpinnerThreeBounce.hide()](./player.spinnerthreebounce.hide.md) is called
|
|
13
10
|
|
|
14
11
|
**Signature:**
|
|
15
12
|
|
|
@@ -47,7 +44,7 @@ number
|
|
|
47
44
|
|
|
48
45
|
</td><td>
|
|
49
46
|
|
|
50
|
-
_(Optional)_
|
|
47
|
+
_(Optional)_ The delay in milliseconds before the spinner is shown.
|
|
51
48
|
|
|
52
49
|
|
|
53
50
|
</td></tr>
|
package/lib/index.plugins.d.ts
CHANGED
|
@@ -22,6 +22,7 @@ export * from "./plugins/seek-time/SeekTime.js";
|
|
|
22
22
|
export * from "./plugins/share/Share.js";
|
|
23
23
|
export * from "./plugins/skip-time/SkipTime.js";
|
|
24
24
|
export * from "./plugins/spinner-three-bounce/SpinnerThreeBounce.js";
|
|
25
|
+
export { SpinnerThreeBounce as Spinner } from "./plugins/spinner-three-bounce/SpinnerThreeBounce.js";
|
|
25
26
|
export * from "./plugins/source-controller/SourceController.js";
|
|
26
27
|
export * from "./plugins/subtitles/ClosedCaptions.js";
|
|
27
28
|
export { ClosedCaptions as Subtitles } from "./plugins/subtitles/ClosedCaptions.js";
|