@codercms/web-player 0.0.37 → 0.0.40

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 (62) hide show
  1. package/dist/HybridDoublyLinkedList.js.map +1 -1
  2. package/dist/HybridLinkedList.js.map +1 -1
  3. package/dist/core/AudioCtx/AudioContext.d.ts +2 -0
  4. package/dist/core/AudioCtx/AudioContext.js +92 -0
  5. package/dist/core/AudioCtx/AudioContext.js.map +1 -0
  6. package/dist/core/Loaders/BaseLoader.d.ts +17 -0
  7. package/dist/core/Loaders/BaseLoader.js +50 -0
  8. package/dist/core/Loaders/BaseLoader.js.map +1 -0
  9. package/dist/core/Loaders/HLSLoader.d.ts +17 -0
  10. package/dist/core/Loaders/HLSLoader.js +313 -0
  11. package/dist/core/Loaders/HLSLoader.js.map +1 -0
  12. package/dist/core/{LoaderInterface.d.ts → Loaders/LoaderInterface.d.ts} +11 -3
  13. package/dist/core/{LoaderInterface.js → Loaders/LoaderInterface.js} +6 -0
  14. package/dist/core/{LoaderInterface.js.map → Loaders/LoaderInterface.js.map} +1 -1
  15. package/dist/core/Loaders/NativeAudioTrackList.d.ts +39 -0
  16. package/dist/core/Loaders/NativeAudioTrackList.js.map +1 -0
  17. package/dist/core/Loaders/NativeLoader.d.ts +16 -0
  18. package/dist/core/Loaders/NativeLoader.js +114 -0
  19. package/dist/core/Loaders/NativeLoader.js.map +1 -0
  20. package/dist/core/Playlist.d.ts +4 -3
  21. package/dist/core/Playlist.js.map +1 -1
  22. package/dist/core/PlaylistPlayer.d.ts +3 -2
  23. package/dist/core/PlaylistPlayer.js +5 -3
  24. package/dist/core/PlaylistPlayer.js.map +1 -1
  25. package/dist/core/VideoPlayer.d.ts +22 -184
  26. package/dist/core/VideoPlayer.js +102 -577
  27. package/dist/core/VideoPlayer.js.map +1 -1
  28. package/dist/core/VideoPlayerEvents.d.ts +74 -0
  29. package/dist/core/VideoPlayerEvents.js +40 -0
  30. package/dist/core/VideoPlayerEvents.js.map +1 -0
  31. package/dist/core/VideoPlayerMediaLoadManager.d.ts +50 -0
  32. package/dist/core/VideoPlayerMediaLoadManager.js +269 -0
  33. package/dist/core/VideoPlayerMediaLoadManager.js.map +1 -0
  34. package/dist/core/VideoPlayerMediaState.d.ts +39 -0
  35. package/dist/core/VideoPlayerMediaState.js +161 -0
  36. package/dist/core/VideoPlayerMediaState.js.map +1 -0
  37. package/dist/core/types/BufferedPart.d.ts +4 -0
  38. package/dist/core/types/BufferedPart.js +1 -0
  39. package/dist/core/types/BufferedPart.js.map +1 -0
  40. package/dist/core/types/PlayerLoadParams.d.ts +11 -0
  41. package/dist/core/types/PlayerLoadParams.js +1 -0
  42. package/dist/core/types/PlayerLoadParams.js.map +1 -0
  43. package/dist/core/types/QualityLevel.js +1 -0
  44. package/dist/index.d.ts +9 -4
  45. package/dist/index.js +9 -4
  46. package/dist/ui/LoadingIndicator.svelte +35 -16
  47. package/dist/ui/LoadingIndicator.svelte.d.ts +1 -1
  48. package/dist/ui/ProgressBar.svelte +6 -6
  49. package/dist/ui/ProgressBar.svelte.d.ts +1 -1
  50. package/package.json +1 -1
  51. package/dist/core/HLSLoader.d.ts +0 -19
  52. package/dist/core/HLSLoader.js +0 -196
  53. package/dist/core/HLSLoader.js.map +0 -1
  54. package/dist/core/NativeLoader.d.ts +0 -14
  55. package/dist/core/NativeLoader.js +0 -66
  56. package/dist/core/NativeLoader.js.map +0 -1
  57. /package/dist/core/{AudioTrack.js → Loaders/NativeAudioTrackList.js} +0 -0
  58. /package/dist/core/{AudioTrack.d.ts → types/AudioTrack.d.ts} +0 -0
  59. /package/dist/core/{QualityLevel.js → types/AudioTrack.js} +0 -0
  60. /package/dist/core/{AudioTrack.js.map → types/AudioTrack.js.map} +0 -0
  61. /package/dist/core/{QualityLevel.d.ts → types/QualityLevel.d.ts} +0 -0
  62. /package/dist/core/{QualityLevel.js.map → types/QualityLevel.js.map} +0 -0
@@ -0,0 +1,16 @@
1
+ import { LoaderType, type LoadParams } from './LoaderInterface.js';
2
+ import { BaseLoader } from './BaseLoader.js';
3
+ export declare class NativeLoader extends BaseLoader {
4
+ readonly type = LoaderType.Native;
5
+ private readonly _onAudioTrackChangeCb;
6
+ private readonly _onAudioTrackAddedOrRemovedCb;
7
+ constructor(el: HTMLMediaElement);
8
+ getAutoQualityLevelId(): number;
9
+ load(params: LoadParams): Promise<void>;
10
+ private _onAudioTrackAddedOrRemoved;
11
+ private _onAudioTrackChange;
12
+ stop(): void;
13
+ switchAudioTrack(id: number): void;
14
+ switchQualityLevel(): void;
15
+ canPlayType(mimeType: string): boolean;
16
+ }
@@ -0,0 +1,114 @@
1
+ import { LoaderEvents, LoaderType } from './LoaderInterface.js';
2
+ import { BaseLoader } from './BaseLoader.js';
3
+ export class NativeLoader extends BaseLoader {
4
+ type = LoaderType.Native;
5
+ _onAudioTrackChangeCb;
6
+ _onAudioTrackAddedOrRemovedCb;
7
+ constructor(el) {
8
+ super(el);
9
+ this._onAudioTrackChangeCb = this._onAudioTrackChange.bind(this);
10
+ this._onAudioTrackAddedOrRemovedCb = this._onAudioTrackAddedOrRemoved.bind(this);
11
+ }
12
+ getAutoQualityLevelId() {
13
+ return 0;
14
+ }
15
+ async load(params) {
16
+ // Check if the abort signal is already aborted
17
+ if (params.abortSignal.aborted) {
18
+ const err = new DOMException('Loading aborted', 'AbortError');
19
+ this.emitter.emit(LoaderEvents.Error, { message: 'Loading aborted', data: err });
20
+ // If it is, reject with an AbortError
21
+ return Promise.reject(err);
22
+ }
23
+ // Emit a loading event
24
+ this.emitter.emit(LoaderEvents.Loading, params);
25
+ const trackList = this.el.audioTracks;
26
+ if (trackList) {
27
+ trackList.addEventListener('addtrack', this._onAudioTrackAddedOrRemovedCb);
28
+ trackList.addEventListener('removetrack', this._onAudioTrackAddedOrRemovedCb);
29
+ trackList.addEventListener('change', this._onAudioTrackChangeCb);
30
+ }
31
+ const waitLoadingPromise = this._waitForLoadingDone(this.el, params.abortSignal);
32
+ const paused = this.el.paused;
33
+ this.el.src = params.url;
34
+ try {
35
+ this.el.load();
36
+ await waitLoadingPromise;
37
+ }
38
+ catch (e) {
39
+ try {
40
+ this.stop();
41
+ }
42
+ catch (e) {
43
+ // ignore destroy error
44
+ }
45
+ this.emitter.emit(LoaderEvents.Error, { message: e.message, data: e });
46
+ return Promise.reject(e);
47
+ }
48
+ if (params.audioTrack !== undefined) {
49
+ this.switchAudioTrack(params.audioTrack);
50
+ }
51
+ if (params.startPosition !== undefined) {
52
+ this.el.currentTime = params.startPosition;
53
+ }
54
+ if (!paused) {
55
+ await this.el.play();
56
+ }
57
+ }
58
+ _onAudioTrackAddedOrRemoved = () => {
59
+ const tracks = [];
60
+ const trackList = this.el.audioTracks;
61
+ for (let i = 0; trackList.length; i++) {
62
+ tracks.push({
63
+ id: i,
64
+ name: trackList[i].label,
65
+ bitrate: 0,
66
+ loaderData: trackList[i]
67
+ });
68
+ }
69
+ this.emitter.emit(LoaderEvents.AudioTracksUpdated, tracks);
70
+ };
71
+ _onAudioTrackChange = () => {
72
+ const trackList = this.el.audioTracks;
73
+ for (let i = 0; trackList.length; i++) {
74
+ if (trackList[i].enabled) {
75
+ this.emitter.emit(LoaderEvents.AudioTrackSwitched, i);
76
+ return;
77
+ }
78
+ }
79
+ };
80
+ stop() {
81
+ const trackList = this.el.audioTracks;
82
+ if (trackList) {
83
+ trackList.removeEventListener('addtrack', this._onAudioTrackAddedOrRemovedCb);
84
+ trackList.removeEventListener('removetrack', this._onAudioTrackAddedOrRemovedCb);
85
+ trackList.removeEventListener('change', this._onAudioTrackChangeCb);
86
+ }
87
+ this.el.pause();
88
+ this.el.src = '';
89
+ }
90
+ switchAudioTrack(id) {
91
+ const trackList = this.el.audioTracks;
92
+ if (!trackList) {
93
+ console.error('The browser does not support HTMLMediaElement.audioTracks');
94
+ return;
95
+ }
96
+ const track = trackList[id];
97
+ if (!track) {
98
+ console.error(`Audio track ${id} not found`);
99
+ return;
100
+ }
101
+ this.emitter.emit(LoaderEvents.AudioTrackSwitching, id);
102
+ track.enabled = true;
103
+ // for (let i = 0; i < trackList.length; i++) {
104
+ // trackList[i].enabled = false;
105
+ // }
106
+ }
107
+ switchQualityLevel() {
108
+ console.error('native loader does not support quality level switch');
109
+ return;
110
+ }
111
+ canPlayType(mimeType) {
112
+ return this.el.canPlayType(mimeType) !== '';
113
+ }
114
+ }
@@ -0,0 +1 @@
1
+ {"version":3,"file":"NativeLoader.js","sourceRoot":"","sources":["NativeLoader.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,6 @@
1
- import type { PlayerLoadParams, Loader } from './VideoPlayer.js';
2
1
  import { type Readable } from 'svelte/store';
2
+ import type { LoaderType } from './Loaders/LoaderInterface.js';
3
+ import type { PlayerLoadParams } from './types/PlayerLoadParams.js';
3
4
  export interface PlaylistItemInterface {
4
5
  title: string;
5
6
  getLoadParams(): PlayerLoadParams;
@@ -7,8 +8,8 @@ export interface PlaylistItemInterface {
7
8
  export declare class PlaylistItem implements PlaylistItemInterface {
8
9
  title: string;
9
10
  readonly url: string;
10
- readonly loader?: Loader | undefined;
11
- constructor(title: string, url: string, loader?: Loader | undefined);
11
+ readonly loader?: LoaderType | undefined;
12
+ constructor(title: string, url: string, loader?: LoaderType | undefined);
12
13
  getLoadParams(): PlayerLoadParams;
13
14
  }
14
15
  export declare enum PlaylistEvents {
@@ -1 +1 @@
1
- {"version":3,"file":"Playlist.js","sourceRoot":"","sources":["Playlist.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"Playlist.js","sourceRoot":"","sources":["Playlist.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,7 @@
1
- import { type PlayerLoadParams, type VideoPlayer } from './VideoPlayer.js';
2
- import { Playlist, type PlaylistItemInterface } from './Playlist.js';
3
1
  import { EventEmitter } from 'eventemitter3';
2
+ import { Playlist, type PlaylistItemInterface } from './Playlist.js';
3
+ import type { VideoPlayer } from './VideoPlayer.js';
4
+ import type { PlayerLoadParams } from './types/PlayerLoadParams.js';
4
5
  export declare enum PlaylistPlayerEvents {
5
6
  PlaylistItemLoading = "playlistPlayer.itemLoading",
6
7
  PlaylistItemLoaded = "playlistPlayer.itemLoaded",
@@ -1,6 +1,6 @@
1
- import { PlayerEvents } from './VideoPlayer.js';
2
- import { Playlist, PlaylistEvents } from './Playlist.js';
3
1
  import { EventEmitter } from 'eventemitter3';
2
+ import { Playlist, PlaylistEvents } from './Playlist.js';
3
+ import { PlayerEvents } from './VideoPlayerEvents.js';
4
4
  export var PlaylistPlayerEvents;
5
5
  (function (PlaylistPlayerEvents) {
6
6
  PlaylistPlayerEvents["PlaylistItemLoading"] = "playlistPlayer.itemLoading";
@@ -35,8 +35,10 @@ export class PlaylistPlayer {
35
35
  this.emitter.emit(PlaylistPlayerEvents.PlaylistItemLoaded, item);
36
36
  }
37
37
  catch (e) {
38
+ console.error('Loading playlist item failed', { item, e });
38
39
  this.emitter.emit(PlaylistPlayerEvents.PlaylistItemLoadingFailed, item, e);
39
- throw e;
40
+ // throw e;
41
+ return;
40
42
  }
41
43
  this._loadedItem = item;
42
44
  }
@@ -1 +1 @@
1
- {"version":3,"file":"PlaylistPlayer.js","sourceRoot":"","sources":["PlaylistPlayer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"PlaylistPlayer.js","sourceRoot":"","sources":["PlaylistPlayer.ts"],"names":[],"mappings":"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"}
@@ -1,186 +1,40 @@
1
1
  import { EventEmitter } from 'eventemitter3';
2
- import { type Readable, type Writable } from 'svelte/store';
3
- import { HLSLoader, type HLSLoaderConfig } from './HLSLoader.js';
4
- import { NativeLoader } from './NativeLoader.js';
5
- import type { LoaderEventsMap, LoaderInterface } from './LoaderInterface.js';
6
- import type { QualityLevel } from './QualityLevel.js';
7
- import type { AudioTrack } from './AudioTrack.js';
2
+ import type { LoaderInterface } from './Loaders/LoaderInterface.js';
3
+ import { type HLSLoaderConfig } from './Loaders/HLSLoader.js';
4
+ import type { QualityLevel } from './types/QualityLevel.js';
5
+ import type { AudioTrack } from './types/AudioTrack.js';
6
+ import type { BufferedPart } from './types/BufferedPart.js';
8
7
  import { DOMEventRegistry } from './DOMEventRegistry.js';
9
- export declare enum PlayerEvents {
10
- Play = "player.play",
11
- Pause = "player.pause",
12
- Ended = "player.ended",
13
- Error = "player.error",
14
- Playing = "player.playing",
15
- Seeking = "player.seeking",
16
- Seeked = "player.seeked",
17
- MediaElementAttached = "player.mediaElementAttached",
18
- MediaElementDetached = "player.mediaElementDetached",
19
- ContainerElementAttached = "player.containerElementAttached",
20
- ContainerElementDetached = "player.containerElementDetached",
21
- FullScreenEnter = "player.fullscreenEnter",
22
- FullScreenExit = "player.fullscreenExit",
23
- FullScreenToggle = "player.fullscreenToggle",
24
- LoadingStarted = "player.loadingStarted",
25
- LoadingMetadataEnded = "player.loadingMetadataEnded",
26
- LoadingMetadataFailed = "player.loadingMedataFailed",
27
- LoadingEnded = "player.loadingEnded",
28
- BufferingStarted = "player.bufferingStarted",
29
- BufferingEnded = "player.bufferingEnded",
30
- PlaybackBufferingProgress = "player.bufferingProgress",
31
- PlaybackDurationChange = "player.durationChange",
32
- PlaybackTimeUpdate = "player.timeUpdate",
33
- PlaybackRateChange = "player.playbackRateChange",
34
- VolumeChange = "player.volumeChange",
35
- MuteChange = "player.muteChange",
36
- VolumeStateChange = "player.volumeStateChange",
37
- QualityLevelsUpdated = "player.qualityLevelsUpdated",
38
- QualityLevelSwitching = "player.qualityLevelSwitching",
39
- QualityLevelSwitched = "player.qualityLevelSwitched",
40
- AudioTracksUpdated = "player.audioTracksUpdated",
41
- AudioTrackSwitching = "player.audioTrackSwitching",
42
- AudioTrackSwitched = "player.audioTrackSwitched"
43
- }
44
- export type VideoPlayerEventsMap = {
45
- [PlayerEvents.Play]: () => void;
46
- [PlayerEvents.Pause]: () => void;
47
- [PlayerEvents.Ended]: () => void;
48
- [PlayerEvents.Error]: (error: string) => void;
49
- [PlayerEvents.Playing]: () => void;
50
- [PlayerEvents.Seeking]: () => void;
51
- [PlayerEvents.Seeked]: () => void;
52
- [PlayerEvents.MediaElementAttached]: (el: HTMLMediaElement) => void;
53
- [PlayerEvents.MediaElementDetached]: (el: HTMLMediaElement) => void;
54
- [PlayerEvents.ContainerElementAttached]: (el: HTMLElement) => void;
55
- [PlayerEvents.ContainerElementDetached]: (el: HTMLElement) => void;
56
- [PlayerEvents.FullScreenEnter]: () => void;
57
- [PlayerEvents.FullScreenExit]: () => void;
58
- [PlayerEvents.FullScreenToggle]: (isFullScreen: boolean) => void;
59
- [PlayerEvents.LoadingStarted]: (params: PlayerLoadParams) => void;
60
- [PlayerEvents.LoadingMetadataEnded]: () => void;
61
- [PlayerEvents.LoadingMetadataFailed]: (err: Error) => void;
62
- [PlayerEvents.LoadingEnded]: () => void;
63
- [PlayerEvents.BufferingStarted]: () => void;
64
- [PlayerEvents.BufferingEnded]: () => void;
65
- [PlayerEvents.PlaybackBufferingProgress]: (buffered: Array<BufferedPart>) => void;
66
- [PlayerEvents.PlaybackDurationChange]: (duration: number) => void;
67
- [PlayerEvents.PlaybackTimeUpdate]: (currentTime: number) => void;
68
- [PlayerEvents.PlaybackRateChange]: (rate: number) => void;
69
- [PlayerEvents.VolumeChange]: (volume: number) => void;
70
- [PlayerEvents.MuteChange]: (muted: boolean) => void;
71
- [PlayerEvents.VolumeStateChange]: (volume: number, muted: boolean) => void;
72
- [PlayerEvents.QualityLevelsUpdated]: (levels: QualityLevel[]) => void;
73
- [PlayerEvents.QualityLevelSwitching]: (level: QualityLevel, isAutoLevel: boolean) => void;
74
- [PlayerEvents.QualityLevelSwitched]: (level: QualityLevel, isAutoLevel: boolean) => void;
75
- [PlayerEvents.AudioTracksUpdated]: (tracks: AudioTrack[]) => void;
76
- [PlayerEvents.AudioTrackSwitching]: (track: AudioTrack) => void;
77
- [PlayerEvents.AudioTrackSwitched]: (track: AudioTrack) => void;
78
- } & LoaderEventsMap;
79
- export declare enum Loader {
80
- Native = 0,
81
- HLS = 1,
82
- DASH = 2
83
- }
84
- export type GetUrlCb = (signal: AbortSignal) => Promise<string>;
85
- type LoadUrl = string | Promise<string> | GetUrlCb;
86
- export interface PlayerLoadParams {
87
- url: LoadUrl;
88
- startPosition?: number;
89
- audioTrack?: number;
90
- startLevel?: number;
91
- loader?: Loader;
92
- playAfterLoad?: boolean;
93
- }
94
- export type BufferedPart = {
95
- start: number;
96
- end: number;
97
- };
8
+ import { type VideoPlayerEventsMap } from './VideoPlayerEvents.js';
9
+ import { VideoPlayerMediaState } from './VideoPlayerMediaState.js';
10
+ import { VideoLoadingState, VideoPlayerMediaLoadManager } from './VideoPlayerMediaLoadManager.js';
11
+ import type { PlayerLoadParams } from './types/PlayerLoadParams.js';
12
+ export { IS_AUDIO_CONTEXT_SUPPORTED, IS_AUDIO_GAIN_SUPPORTED } from './AudioCtx/AudioContext.js';
98
13
  export type PlayerConfig = {
99
14
  hlsConfig?: HLSLoaderConfig;
100
15
  };
101
- export declare enum VideoLoadingState {
102
- LoadingMetadata = 0,
103
- LoadingData = 1,
104
- LoadingDone = 2,
105
- LoadingFailed = 3
106
- }
16
+ export declare const IS_FULLSCREEN_ALLOWED: boolean;
17
+ export declare const IS_VOLUME_CHANGE_ALLOWED: boolean;
107
18
  export declare class VideoPlayer {
108
- protected static _isFullScreenAllowed: boolean;
109
19
  protected _el?: HTMLMediaElement;
110
20
  protected _containerEl?: HTMLElement;
111
21
  protected elEventsRegistry?: DOMEventRegistry<HTMLMediaElement>;
112
22
  protected _cfg: PlayerConfig;
113
23
  protected emitter: EventEmitter<VideoPlayerEventsMap>;
114
- protected loadAbortController: AbortController | null;
115
- protected currentLoader: LoaderInterface | null;
116
- protected hlsLoader: HLSLoader | null;
117
- protected nativeLoader: NativeLoader | null;
118
- protected _loadingState: VideoLoadingState;
119
- protected _isBuffering: boolean;
120
- protected _isLoading: boolean;
24
+ protected _mediaState: VideoPlayerMediaState;
25
+ protected _loadingMgr: VideoPlayerMediaLoadManager;
121
26
  protected _isFullScreen: boolean;
122
- protected _paused: boolean;
123
- protected _duration: number;
124
- protected _currentTime: number;
125
- protected _playbackRate: number;
126
- protected _muted: boolean;
127
- protected _volume: number;
128
- protected _buffered: Array<BufferedPart>;
129
- protected _isAutoQuality: boolean;
130
- protected _currentQualityLevel: QualityLevel | null;
131
- protected _qualityLevels: Array<QualityLevel>;
132
- protected _currentAudioTrack: AudioTrack | null;
133
- protected _audioTracks: AudioTrack[];
134
- protected _isFullScreenStore: Writable<boolean>;
135
- protected _isLoadingStore: Writable<boolean>;
136
- protected _pausedStore: Writable<boolean>;
137
- protected _durationStore: Writable<number>;
138
- protected _currentTimeStore: Writable<number>;
139
- protected _playbackRateStore: Writable<number>;
140
- protected _mutedStore: Writable<boolean>;
141
- protected _volumeStore: Writable<number>;
142
- protected _bufferedStore: Writable<Array<BufferedPart>>;
143
- protected _isAutoQualityStore: Writable<boolean>;
144
- protected _currentQualityLevelStore: Writable<QualityLevel | null>;
145
- protected _qualityLevelsStore: Writable<QualityLevel[]>;
146
- protected _currentAudioTrackStore: Writable<AudioTrack | null>;
147
- protected _audioTracksStore: Writable<AudioTrack[]>;
148
27
  constructor(el?: HTMLMediaElement, cfg?: PlayerConfig);
149
28
  private _registerVideoEvents;
150
29
  private _unregisterVideoElementEvents;
151
- private _onBufferingStarted;
152
- private _onBufferingEnded;
153
- private _calcIsLoadingState;
154
- private _onProgress;
155
- private _resetState;
156
- private _refreshState;
157
- private _onLoaderQualityLevelsUpdated;
158
- private _onLoaderQualityLevelSwitching;
159
- private _onLoaderQualityLevelSwitched;
160
- private _onLoaderAudioTracksUpdated;
161
- private _onLoaderAudioTrackSwitching;
162
- private _onLoaderAudioTrackSwitched;
163
30
  private _onFullScreenChange;
164
31
  private _updateIsFullScreen;
165
- private _updateBufferedParts;
166
- private _updateDuration;
167
- private _updateCurrentTime;
168
- private _updatePlaybackRate;
169
- private _updateVolume;
170
- private _updateMuted;
171
- private _updatePaused;
172
- private _updateQualityLevels;
173
- private _updateQualityLevel;
174
- private _updateAudioTracks;
175
- private _updateCurrentAudioTrack;
176
32
  attachEl(el: HTMLMediaElement): void;
177
33
  attachContainerEl(el: HTMLElement): void;
178
34
  detachEl(): void;
179
35
  detachContainerEl(): void;
180
36
  destroy(): void;
181
37
  stop(): void;
182
- private _getLoaderByType;
183
- private _getLoaderFromUrl;
184
38
  load(params: PlayerLoadParams): Promise<void>;
185
39
  togglePlay(): Promise<void>;
186
40
  play(): Promise<void>;
@@ -192,7 +46,6 @@ export declare class VideoPlayer {
192
46
  setMuted(muted: boolean): void;
193
47
  setPlaybackRate(rate: number): void;
194
48
  toggleMute(): void;
195
- static isFullScreenAllowed(): boolean;
196
49
  toggleFullScreen(): Promise<void>;
197
50
  setQualityLevel(id: number, graceful: boolean): void;
198
51
  setAutoQualityLevel(graceful: boolean): void;
@@ -202,36 +55,21 @@ export declare class VideoPlayer {
202
55
  unsubscribe<K extends keyof VideoPlayerEventsMap>(ev: K, cb: VideoPlayerEventsMap[K]): void;
203
56
  get el(): HTMLMediaElement;
204
57
  get containerEl(): HTMLElement;
205
- get loader(): LoaderInterface | null;
206
58
  get isFullScreen(): boolean;
59
+ get loader(): LoaderInterface | null;
60
+ get isLoading(): boolean;
207
61
  get loadingState(): VideoLoadingState;
208
62
  get isBuffering(): boolean;
209
- get isLoading(): boolean;
210
- get qualityLevels(): QualityLevel[];
211
- get isAutoQuality(): boolean;
212
- get qualityLevel(): QualityLevel | null;
213
- get audioTracks(): AudioTrack[];
214
- get audioTrack(): AudioTrack | null;
215
- get duration(): number;
216
63
  get paused(): boolean;
64
+ get duration(): number;
217
65
  get currentTime(): number;
218
66
  get buffered(): BufferedPart[];
219
67
  get playbackRate(): number;
220
68
  get volume(): number;
221
69
  get muted(): boolean;
222
- get pausedStore(): Readable<boolean>;
223
- get isFullScreenStore(): Readable<boolean>;
224
- get isLoadingStore(): Readable<boolean>;
225
- get qualityLevelsStore(): Readable<QualityLevel[]>;
226
- get isAutoQualityStore(): Readable<boolean>;
227
- get qualityLevelStore(): Readable<QualityLevel | null>;
228
- get audioTracksStore(): Readable<AudioTrack[]>;
229
- get audioTrackStore(): Readable<AudioTrack | null>;
230
- get durationStore(): Readable<number>;
231
- get currentTimeStore(): Readable<number>;
232
- get bufferedStore(): Readable<BufferedPart[]>;
233
- get playbackRateStore(): Readable<number>;
234
- get volumeStore(): Readable<number>;
235
- get mutedStore(): Readable<boolean>;
70
+ get qualityLevels(): QualityLevel[];
71
+ get isAutoQuality(): boolean;
72
+ get qualityLevel(): QualityLevel | null;
73
+ get audioTracks(): AudioTrack[];
74
+ get audioTrack(): AudioTrack | null;
236
75
  }
237
- export {};