@codercms/web-player 0.0.37 → 0.0.41

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 (75) hide show
  1. package/dist/core/AudioCtx/AudioContext.d.ts +2 -0
  2. package/dist/core/AudioCtx/AudioContext.js +92 -0
  3. package/dist/core/AudioCtx/AudioContext.js.map +1 -0
  4. package/dist/core/Loaders/BaseLoader.d.ts +17 -0
  5. package/dist/core/Loaders/BaseLoader.js +50 -0
  6. package/dist/core/Loaders/BaseLoader.js.map +1 -0
  7. package/dist/core/Loaders/HLSLoader.d.ts +17 -0
  8. package/dist/core/Loaders/HLSLoader.js +313 -0
  9. package/dist/core/Loaders/HLSLoader.js.map +1 -0
  10. package/dist/core/{LoaderInterface.d.ts → Loaders/LoaderInterface.d.ts} +11 -3
  11. package/dist/core/{LoaderInterface.js → Loaders/LoaderInterface.js} +6 -0
  12. package/dist/core/{LoaderInterface.js.map → Loaders/LoaderInterface.js.map} +1 -1
  13. package/dist/core/Loaders/NativeAudioTrackList.d.ts +39 -0
  14. package/dist/core/Loaders/NativeAudioTrackList.js.map +1 -0
  15. package/dist/core/Loaders/NativeLoader.d.ts +16 -0
  16. package/dist/core/Loaders/NativeLoader.js +114 -0
  17. package/dist/core/Loaders/NativeLoader.js.map +1 -0
  18. package/dist/core/Playlist.d.ts +4 -3
  19. package/dist/core/Playlist.js.map +1 -1
  20. package/dist/core/PlaylistPlayer.d.ts +3 -2
  21. package/dist/core/PlaylistPlayer.js +5 -3
  22. package/dist/core/PlaylistPlayer.js.map +1 -1
  23. package/dist/core/VideoPlayer.d.ts +19 -191
  24. package/dist/core/VideoPlayer.js +92 -594
  25. package/dist/core/VideoPlayer.js.map +1 -1
  26. package/dist/core/VideoPlayerEvents.d.ts +74 -0
  27. package/dist/core/VideoPlayerEvents.js +40 -0
  28. package/dist/core/VideoPlayerEvents.js.map +1 -0
  29. package/dist/core/VideoPlayerMediaLoadManager.d.ts +50 -0
  30. package/dist/core/VideoPlayerMediaLoadManager.js +269 -0
  31. package/dist/core/VideoPlayerMediaLoadManager.js.map +1 -0
  32. package/dist/core/VideoPlayerMediaState.d.ts +39 -0
  33. package/dist/core/VideoPlayerMediaState.js +161 -0
  34. package/dist/core/VideoPlayerMediaState.js.map +1 -0
  35. package/dist/core/VideoPlayerMediaStateProxy.d.ts +17 -0
  36. package/dist/core/VideoPlayerMediaStateProxy.js +42 -0
  37. package/dist/core/VideoPlayerMediaStateProxy.js.map +1 -0
  38. package/dist/core/svelte/VideoPlayerMediaStateSvelteStore.d.ts +58 -0
  39. package/dist/core/svelte/VideoPlayerMediaStateSvelteStore.js +146 -0
  40. package/dist/core/svelte/VideoPlayerMediaStateSvelteStore.js.map +1 -0
  41. package/dist/core/types/BufferedPart.d.ts +4 -0
  42. package/dist/core/types/BufferedPart.js +1 -0
  43. package/dist/core/types/BufferedPart.js.map +1 -0
  44. package/dist/core/types/PlayerLoadParams.d.ts +11 -0
  45. package/dist/core/types/PlayerLoadParams.js +1 -0
  46. package/dist/core/types/PlayerLoadParams.js.map +1 -0
  47. package/dist/core/types/QualityLevel.js +1 -0
  48. package/dist/core/types/index.d.ts +4 -0
  49. package/dist/core/types/index.js +1 -0
  50. package/dist/core/types/index.js.map +1 -0
  51. package/dist/index.d.ts +9 -4
  52. package/dist/index.js +9 -4
  53. package/dist/ui/LoadingIndicator.svelte +35 -16
  54. package/dist/ui/LoadingIndicator.svelte.d.ts +1 -1
  55. package/dist/ui/ProgressBar.svelte +7 -8
  56. package/dist/ui/ProgressBar.svelte.d.ts +1 -1
  57. package/package.json +1 -1
  58. package/dist/HybridDoublyLinkedList.d.ts +0 -20
  59. package/dist/HybridDoublyLinkedList.js +0 -90
  60. package/dist/HybridDoublyLinkedList.js.map +0 -1
  61. package/dist/HybridLinkedList.d.ts +0 -18
  62. package/dist/HybridLinkedList.js +0 -90
  63. package/dist/HybridLinkedList.js.map +0 -1
  64. package/dist/core/HLSLoader.d.ts +0 -19
  65. package/dist/core/HLSLoader.js +0 -196
  66. package/dist/core/HLSLoader.js.map +0 -1
  67. package/dist/core/NativeLoader.d.ts +0 -14
  68. package/dist/core/NativeLoader.js +0 -66
  69. package/dist/core/NativeLoader.js.map +0 -1
  70. /package/dist/core/{AudioTrack.js → Loaders/NativeAudioTrackList.js} +0 -0
  71. /package/dist/core/{AudioTrack.d.ts → types/AudioTrack.d.ts} +0 -0
  72. /package/dist/core/{QualityLevel.js → types/AudioTrack.js} +0 -0
  73. /package/dist/core/{AudioTrack.js.map → types/AudioTrack.js.map} +0 -0
  74. /package/dist/core/{QualityLevel.d.ts → types/QualityLevel.d.ts} +0 -0
  75. /package/dist/core/{QualityLevel.js.map → types/QualityLevel.js.map} +0 -0
@@ -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":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,eAAe,CAAC;AAC7C,OAAO,EAAE,QAAQ,EAAE,QAAQ,EAAiB,MAAM,cAAc,CAAC;AAgBjE,MAAM,OAAO,YAAY;IAEhB;IACS;IACA;IAHjB,YACQ,KAAa,EACJ,GAAW,EACX,MAAmB;QAF5B,UAAK,GAAL,KAAK,CAAQ;QACJ,QAAG,GAAH,GAAG,CAAQ;QACX,WAAM,GAAN,MAAM,CAAa;IACjC,CAAC;IAEJ,aAAa;QACZ,OAAO;YACN,GAAG,EAAE,IAAI,CAAC,GAAG;YACb,MAAM,EAAE,IAAI,CAAC,MAAM;SACnB,CAAC;IACH,CAAC;CACD;AAED,MAAM,CAAN,IAAY,cAQX;AARD,WAAY,cAAc;IACzB,kDAAgC,CAAA;IAChC,sDAAoC,CAAA;IACpC,4CAA0B,CAAA;IAC1B,8CAA4B,CAAA;IAC5B,8CAA4B,CAAA;IAC5B,sCAAoB,CAAA;IACpB,8CAA4B,CAAA;AAC7B,CAAC,EARW,cAAc,KAAd,cAAc,QAQzB;AAwBD,MAAM,uBAAuB,GAAG,CAAC,CAAC,CAAC;AAEnC,MAAM,OAAO,QAAQ;IACZ,OAAO,GAAG,IAAI,YAAY,EAA+B,CAAC;IAE1D,MAAM,GAAe,EAAE,CAAC;IACxB,eAAe,GAAG,uBAAuB,CAAC;IAE1C,iBAAiB,GAA+B;QACvD,OAAO,EAAE,IAAI;QACb,IAAI,EAAE,IAAI;QACV,IAAI,EAAE,IAAI;KACV,CAAC;IACM,sBAAsB,GAAG,QAAQ,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAEzE,YAAY,QAAoB,EAAE;QACjC,IAAI,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC;IACtB,CAAC;IAEM,OAAO,CAAC,IAAc;QAC5B,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe,KAAK,uBAAuB,CAAC;QACjE,MAAM,kBAAkB,GACvB,IAAI,CAAC,eAAe,GAAG,uBAAuB;YAC9C,IAAI,CAAC,eAAe,KAAK,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;QAEjD,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC;QAEvB,IAAI,kBAAkB,EAAE;YACvB,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SAC1C;QAED,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,SAAS,EAAE,IAAI,CAAC,CAAC;QAElD,IAAI,OAAO,EAAE;YACZ,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,CAAC;SACtB;IACF,CAAC;IAEM,QAAQ,CAAC,KAAiB;QAChC,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE;YACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;SACnB;IACF,CAAC;IAEM,UAAU,CAAC,IAAc;QAC/B,uCAAuC;QACvC,MAAM,GAAG,GAAG,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC;QACtC,IAAI,GAAG,GAAG,CAAC,EAAE;YACZ,OAAO,CAAC,oCAAoC;SAC5C;QAED,wCAAwC;QACxC,MAAM,WAAW,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC;QAElD,MAAM,oBAAoB,GAAG,IAAI,CAAC,eAAe,KAAK,GAAG,CAAC;QAE1D,kEAAkE;QAClE,IAAI,oBAAoB,EAAE;YACzB,IAAI,GAAG,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;gBAC9B,mEAAmE;gBACnE,IAAI,CAAC,eAAe,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC;aAC9C;SACD;aAAM,IAAI,IAAI,CAAC,eAAe,GAAG,GAAG,EAAE;YACtC,0EAA0E;YAC1E,IAAI,CAAC,eAAe,EAAE,CAAC;SACvB;QAED,iCAAiC;QACjC,IAAI,IAAI,CAAC,eAAe,KAAK,uBAAuB,EAAE;YACrD,IAAI,CAAC,WAAW,EAAE,CAAC;SACnB;aAAM;YACN,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;SAC1C;QAED,yBAAyB;QACzB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,WAAW,CAAC,CAAC;QAE3D,IAAI,oBAAoB,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,EAAE;YACnD,MAAM,WAAW,GAAG,IAAI,CAAC,eAAe,CAAC;YACzC,wDAAwD;YACxD,IAAI,CAAC,eAAe,GAAG,uBAAuB,CAAC;YAC/C,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC;SAC1C;aAAM,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE;YACpC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;SAC1C;IACF,CAAC;IAEO,cAAc,CAAC,GAAW;QACjC,MAAM,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,IAAI,CAAC;QACtC,IAAI,CAAC,IAAI,EAAE;YACV,MAAM,KAAK,CAAC,sCAAsC,GAAG,EAAE,CAAC,CAAC;SACzD;QAED,IAAI,CAAC,eAAe,GAAG,GAAG,CAAC;QAE3B,IAAI,CAAC,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;QAC3D,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC,MAAM,CAAC,GAAG,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;QAE3D,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;QAE/D,OAAO,IAAI,CAAC;IACb,CAAC;IAEO,WAAW;QAClB,IAAI,CAAC,iBAAiB,CAAC,OAAO,GAAG,IAAI,CAAC;QACtC,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC;QACnC,IAAI,CAAC,iBAAiB,CAAC,IAAI,GAAG,IAAI,CAAC;QAEnC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;QAE1B,IAAI,CAAC,sBAAsB,CAAC,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,iBAAiB,EAAE,CAAC,CAAC;IAChE,CAAC;IAEM,UAAU,CAAC,IAAc;QAC/B,MAAM,QAAQ,GAAG,IAAI,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,GAAG,KAAK,IAAI,CAAC,CAAC;QAC9D,IAAI,QAAQ,GAAG,CAAC,EAAE;YACjB,MAAM,KAAK,CAAC,yBAAyB,CAAC,CAAC;SACvC;QAED,sBAAsB;QACtB,IAAI,IAAI,CAAC,eAAe,KAAK,QAAQ,EAAE;YACtC,OAAO;SACP;QAED,IAAI,CAAC,cAAc,CAAC,QAAQ,CAAC,CAAC;QAE9B,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;IAC7C,CAAC;IAEM,OAAO;QACb,gBAAgB;QAChB,IAAI,IAAI,CAAC,eAAe,GAAG,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACnD,OAAO,IAAI,CAAC;SACZ;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;QAE3D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,OAAO;QACb,gBAAgB;QAChB,IAAI,IAAI,CAAC,eAAe,GAAG,CAAC,GAAG,CAAC,EAAE;YACjC,OAAO,IAAI,CAAC;SACZ;QAED,MAAM,IAAI,GAAG,IAAI,CAAC,cAAc,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,CAAC;QAE3D,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC;QAChD,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC;QAE5C,OAAO,IAAI,CAAC;IACb,CAAC;IAEM,UAAU;QAChB,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,IAAI,IAAI,CAAC;IAClD,CAAC;IAEM,OAAO;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACtD,CAAC;IAEM,OAAO;QACb,OAAO,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,eAAe,GAAG,CAAC,CAAC,IAAI,IAAI,CAAC;IACtD,CAAC;IAEM,iBAAiB;QACvB,OAAO,QAAQ,CAAC,IAAI,CAAC,sBAAsB,CAAC,CAAC;IAC9C,CAAC;IAEM,MAAM;QACZ,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACxB,OAAO;SACP;QAED,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,CAAC;QAEhC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,MAAM,CAAC,CAAC;IAC1C,CAAC;IAEM,KAAK;QACX,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE;YACxB,OAAO;SACP;QAED,IAAI,CAAC,MAAM,GAAG,EAAE,CAAC;QACjB,IAAI,CAAC,WAAW,EAAE,CAAC;QAEnB,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,cAAc,CAAC,OAAO,CAAC,CAAC;IAC3C,CAAC;IAEM,IAAI;QACV,OAAO,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC;IAC3B,CAAC;IAEM,QAAQ;QACd,OAAO,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC;IAC5B,CAAC;IAEM,SAAS,CACf,EAAK,EACL,EAAkC;QAElC,IAAI,CAAC,OAAO,CAAC,EAAE,CAAC,EAAE,EAAE,EAAgB,CAAC,CAAC;IACvC,CAAC;IAEM,WAAW,CACjB,EAAK,EACL,EAAkC;QAElC,IAAI,CAAC,OAAO,CAAC,GAAG,CAAC,EAAE,EAAE,EAAgB,CAAC,CAAC;IACxC,CAAC;CACD"}
@@ -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,41 @@
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';
8
4
  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
- };
5
+ import { type VideoPlayerEventsMap } from './VideoPlayerEvents.js';
6
+ import { VideoPlayerMediaState } from './VideoPlayerMediaState.js';
7
+ import { VideoLoadingState, VideoPlayerMediaLoadManager } from './VideoPlayerMediaLoadManager.js';
8
+ import type { PlayerLoadParams } from './types/PlayerLoadParams.js';
9
+ import { VideoPlayerMediaStateProxy } from './VideoPlayerMediaStateProxy.js';
10
+ import { VideoPlayerMediaStateSvelteStore } from './svelte/VideoPlayerMediaStateSvelteStore.js';
11
+ export { IS_AUDIO_CONTEXT_SUPPORTED, IS_AUDIO_GAIN_SUPPORTED } from './AudioCtx/AudioContext.js';
12
+ export declare const IS_VOLUME_CHANGE_ALLOWED: boolean;
13
+ export declare const IS_FULLSCREEN_ALLOWED: boolean;
98
14
  export type PlayerConfig = {
99
15
  hlsConfig?: HLSLoaderConfig;
100
16
  };
101
- export declare enum VideoLoadingState {
102
- LoadingMetadata = 0,
103
- LoadingData = 1,
104
- LoadingDone = 2,
105
- LoadingFailed = 3
106
- }
107
17
  export declare class VideoPlayer {
108
- protected static _isFullScreenAllowed: boolean;
109
18
  protected _el?: HTMLMediaElement;
110
19
  protected _containerEl?: HTMLElement;
111
20
  protected elEventsRegistry?: DOMEventRegistry<HTMLMediaElement>;
112
21
  protected _cfg: PlayerConfig;
113
22
  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;
23
+ protected _mediaState: VideoPlayerMediaState;
24
+ protected _mediaStateProxy: VideoPlayerMediaStateProxy | null;
25
+ protected _mediaStateSvelteStore: VideoPlayerMediaStateSvelteStore | null;
26
+ protected _loadingMgr: VideoPlayerMediaLoadManager;
121
27
  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
28
  constructor(el?: HTMLMediaElement, cfg?: PlayerConfig);
149
29
  private _registerVideoEvents;
150
30
  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
31
  private _onFullScreenChange;
164
32
  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
33
  attachEl(el: HTMLMediaElement): void;
177
34
  attachContainerEl(el: HTMLElement): void;
178
35
  detachEl(): void;
179
36
  detachContainerEl(): void;
180
37
  destroy(): void;
181
38
  stop(): void;
182
- private _getLoaderByType;
183
- private _getLoaderFromUrl;
184
39
  load(params: PlayerLoadParams): Promise<void>;
185
40
  togglePlay(): Promise<void>;
186
41
  play(): Promise<void>;
@@ -192,7 +47,6 @@ export declare class VideoPlayer {
192
47
  setMuted(muted: boolean): void;
193
48
  setPlaybackRate(rate: number): void;
194
49
  toggleMute(): void;
195
- static isFullScreenAllowed(): boolean;
196
50
  toggleFullScreen(): Promise<void>;
197
51
  setQualityLevel(id: number, graceful: boolean): void;
198
52
  setAutoQualityLevel(graceful: boolean): void;
@@ -202,36 +56,10 @@ export declare class VideoPlayer {
202
56
  unsubscribe<K extends keyof VideoPlayerEventsMap>(ev: K, cb: VideoPlayerEventsMap[K]): void;
203
57
  get el(): HTMLMediaElement;
204
58
  get containerEl(): HTMLElement;
205
- get loader(): LoaderInterface | null;
206
59
  get isFullScreen(): boolean;
207
- get loadingState(): VideoLoadingState;
208
- get isBuffering(): boolean;
60
+ get loader(): LoaderInterface | null;
209
61
  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
- get paused(): boolean;
217
- get currentTime(): number;
218
- get buffered(): BufferedPart[];
219
- get playbackRate(): number;
220
- get volume(): number;
221
- 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>;
62
+ get loadingState(): VideoLoadingState;
63
+ get mediaState(): VideoPlayerMediaStateProxy;
64
+ get mediaStateSvelteStore(): VideoPlayerMediaStateSvelteStore;
236
65
  }
237
- export {};