@epicgames-ps/lib-pixelstreamingfrontend-ue5.5 0.3.0 → 0.3.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (169) hide show
  1. package/dist/commonjs/AFK/AFKController.js +109 -109
  2. package/dist/commonjs/Config/Config.js +559 -559
  3. package/dist/commonjs/Config/SettingBase.js +98 -98
  4. package/dist/commonjs/Config/SettingFlag.js +49 -49
  5. package/dist/commonjs/Config/SettingNumber.js +83 -83
  6. package/dist/commonjs/Config/SettingOption.js +84 -84
  7. package/dist/commonjs/Config/SettingText.js +42 -42
  8. package/dist/commonjs/DataChannel/DataChannelController.js +106 -106
  9. package/dist/commonjs/DataChannel/DataChannelLatencyTestController.js +94 -94
  10. package/dist/commonjs/DataChannel/DataChannelLatencyTestResults.js +18 -18
  11. package/dist/commonjs/DataChannel/DataChannelSender.js +43 -43
  12. package/dist/commonjs/DataChannel/InitialSettings.js +41 -41
  13. package/dist/commonjs/DataChannel/LatencyTestResults.js +60 -60
  14. package/dist/commonjs/FreezeFrame/FreezeFrame.js +93 -93
  15. package/dist/commonjs/FreezeFrame/FreezeFrameController.js +95 -95
  16. package/dist/commonjs/Inputs/GamepadController.js +188 -188
  17. package/dist/commonjs/Inputs/GamepadTypes.js +21 -21
  18. package/dist/commonjs/Inputs/IInputController.js +2 -2
  19. package/dist/commonjs/Inputs/InputClassesFactory.js +96 -96
  20. package/dist/commonjs/Inputs/KeyCodes.js +112 -112
  21. package/dist/commonjs/Inputs/KeyboardController.js +137 -137
  22. package/dist/commonjs/Inputs/MouseButtons.js +28 -28
  23. package/dist/commonjs/Inputs/MouseController.js +97 -97
  24. package/dist/commonjs/Inputs/MouseControllerHovering.js +93 -93
  25. package/dist/commonjs/Inputs/MouseControllerLocked.js +153 -153
  26. package/dist/commonjs/Inputs/SpecialKeyCodes.js +19 -19
  27. package/dist/commonjs/Inputs/TouchController.js +123 -123
  28. package/dist/commonjs/Inputs/TouchControllerFake.js +91 -91
  29. package/dist/commonjs/Inputs/XRGamepadController.js +124 -124
  30. package/dist/commonjs/PeerConnectionController/AggregatedStats.js +252 -252
  31. package/dist/commonjs/PeerConnectionController/CandidatePairStats.js +10 -10
  32. package/dist/commonjs/PeerConnectionController/CandidateStat.js +10 -10
  33. package/dist/commonjs/PeerConnectionController/CodecStats.js +10 -10
  34. package/dist/commonjs/PeerConnectionController/DataChannelStats.js +10 -10
  35. package/dist/commonjs/PeerConnectionController/InboundRTPStats.js +22 -22
  36. package/dist/commonjs/PeerConnectionController/InboundTrackStats.js +10 -10
  37. package/dist/commonjs/PeerConnectionController/OutBoundRTPStats.js +16 -16
  38. package/dist/commonjs/PeerConnectionController/PeerConnectionController.js +584 -584
  39. package/dist/commonjs/PeerConnectionController/SessionStats.js +10 -10
  40. package/dist/commonjs/PeerConnectionController/StreamStats.js +10 -10
  41. package/dist/commonjs/PixelStreaming/PixelStreaming.js +607 -607
  42. package/dist/commonjs/UI/OnScreenKeyboard.js +82 -82
  43. package/dist/commonjs/UeInstanceMessage/ResponseController.js +38 -38
  44. package/dist/commonjs/UeInstanceMessage/SendMessageController.js +120 -120
  45. package/dist/commonjs/UeInstanceMessage/StreamMessageController.js +210 -210
  46. package/dist/commonjs/UeInstanceMessage/ToStreamerMessagesController.js +49 -49
  47. package/dist/commonjs/Util/EventEmitter.js +386 -386
  48. package/dist/commonjs/Util/FileUtil.js +108 -108
  49. package/dist/commonjs/Util/IURLSearchParams.js +25 -25
  50. package/dist/commonjs/Util/InputCoordTranslator.js +49 -49
  51. package/dist/commonjs/Util/RTCUtils.js +40 -40
  52. package/dist/commonjs/VideoPlayer/StreamController.js +67 -67
  53. package/dist/commonjs/VideoPlayer/VideoPlayer.js +177 -177
  54. package/dist/commonjs/WebRtcPlayer/WebRtcPlayerController.js +1221 -1221
  55. package/dist/commonjs/WebXR/WebXRController.js +335 -335
  56. package/dist/commonjs/pixelstreamingfrontend.js +70 -70
  57. package/dist/esm/AFK/AFKController.js +105 -105
  58. package/dist/esm/Config/Config.js +551 -551
  59. package/dist/esm/Config/SettingBase.js +94 -94
  60. package/dist/esm/Config/SettingFlag.js +45 -45
  61. package/dist/esm/Config/SettingNumber.js +79 -79
  62. package/dist/esm/Config/SettingOption.js +80 -80
  63. package/dist/esm/Config/SettingText.js +38 -38
  64. package/dist/esm/DataChannel/DataChannelController.js +102 -102
  65. package/dist/esm/DataChannel/DataChannelLatencyTestController.js +90 -90
  66. package/dist/esm/DataChannel/DataChannelLatencyTestResults.js +14 -14
  67. package/dist/esm/DataChannel/DataChannelSender.js +39 -39
  68. package/dist/esm/DataChannel/InitialSettings.js +34 -34
  69. package/dist/esm/DataChannel/LatencyTestResults.js +56 -56
  70. package/dist/esm/FreezeFrame/FreezeFrame.js +89 -89
  71. package/dist/esm/FreezeFrame/FreezeFrameController.js +91 -91
  72. package/dist/esm/Inputs/GamepadController.js +184 -184
  73. package/dist/esm/Inputs/GamepadTypes.js +17 -17
  74. package/dist/esm/Inputs/IInputController.js +1 -1
  75. package/dist/esm/Inputs/InputClassesFactory.js +91 -91
  76. package/dist/esm/Inputs/KeyCodes.js +109 -109
  77. package/dist/esm/Inputs/KeyboardController.js +133 -133
  78. package/dist/esm/Inputs/MouseButtons.js +23 -23
  79. package/dist/esm/Inputs/MouseController.js +93 -93
  80. package/dist/esm/Inputs/MouseControllerHovering.js +89 -89
  81. package/dist/esm/Inputs/MouseControllerLocked.js +149 -149
  82. package/dist/esm/Inputs/SpecialKeyCodes.js +15 -15
  83. package/dist/esm/Inputs/TouchController.js +119 -119
  84. package/dist/esm/Inputs/TouchControllerFake.js +87 -87
  85. package/dist/esm/Inputs/XRGamepadController.js +120 -120
  86. package/dist/esm/PeerConnectionController/AggregatedStats.js +248 -248
  87. package/dist/esm/PeerConnectionController/CandidatePairStats.js +6 -6
  88. package/dist/esm/PeerConnectionController/CandidateStat.js +6 -6
  89. package/dist/esm/PeerConnectionController/CodecStats.js +6 -6
  90. package/dist/esm/PeerConnectionController/DataChannelStats.js +6 -6
  91. package/dist/esm/PeerConnectionController/InboundRTPStats.js +16 -16
  92. package/dist/esm/PeerConnectionController/InboundTrackStats.js +6 -6
  93. package/dist/esm/PeerConnectionController/OutBoundRTPStats.js +11 -11
  94. package/dist/esm/PeerConnectionController/PeerConnectionController.js +580 -580
  95. package/dist/esm/PeerConnectionController/SessionStats.js +6 -6
  96. package/dist/esm/PeerConnectionController/StreamStats.js +6 -6
  97. package/dist/esm/PixelStreaming/PixelStreaming.js +603 -603
  98. package/dist/esm/UI/OnScreenKeyboard.js +78 -78
  99. package/dist/esm/UeInstanceMessage/ResponseController.js +34 -34
  100. package/dist/esm/UeInstanceMessage/SendMessageController.js +116 -116
  101. package/dist/esm/UeInstanceMessage/StreamMessageController.js +205 -205
  102. package/dist/esm/UeInstanceMessage/ToStreamerMessagesController.js +45 -45
  103. package/dist/esm/Util/EventEmitter.js +345 -345
  104. package/dist/esm/Util/FileUtil.js +103 -103
  105. package/dist/esm/Util/IURLSearchParams.js +21 -21
  106. package/dist/esm/Util/InputCoordTranslator.js +45 -45
  107. package/dist/esm/Util/RTCUtils.js +36 -36
  108. package/dist/esm/VideoPlayer/StreamController.js +63 -63
  109. package/dist/esm/VideoPlayer/VideoPlayer.js +173 -173
  110. package/dist/esm/WebRtcPlayer/WebRtcPlayerController.js +1217 -1217
  111. package/dist/esm/WebXR/WebXRController.js +331 -331
  112. package/dist/esm/pixelstreamingfrontend.js +24 -24
  113. package/dist/types/AFK/AFKController.d.ts +38 -38
  114. package/dist/types/Config/Config.d.ts +220 -220
  115. package/dist/types/Config/SettingBase.d.ts +43 -43
  116. package/dist/types/Config/SettingFlag.d.ts +24 -24
  117. package/dist/types/Config/SettingNumber.d.ts +41 -41
  118. package/dist/types/Config/SettingOption.d.ts +41 -41
  119. package/dist/types/Config/SettingText.d.ts +21 -21
  120. package/dist/types/DataChannel/DataChannelController.d.ts +59 -59
  121. package/dist/types/DataChannel/DataChannelLatencyTestController.d.ts +25 -25
  122. package/dist/types/DataChannel/DataChannelLatencyTestResults.d.ts +46 -46
  123. package/dist/types/DataChannel/DataChannelSender.d.ts +21 -21
  124. package/dist/types/DataChannel/InitialSettings.d.ts +44 -44
  125. package/dist/types/DataChannel/LatencyTestResults.d.ts +31 -31
  126. package/dist/types/FreezeFrame/FreezeFrame.d.ts +36 -36
  127. package/dist/types/FreezeFrame/FreezeFrameController.d.ts +37 -37
  128. package/dist/types/Inputs/GamepadController.d.ts +61 -61
  129. package/dist/types/Inputs/GamepadTypes.d.ts +15 -15
  130. package/dist/types/Inputs/IInputController.d.ts +16 -16
  131. package/dist/types/Inputs/InputClassesFactory.d.ts +53 -53
  132. package/dist/types/Inputs/KeyCodes.d.ts +5 -5
  133. package/dist/types/Inputs/KeyboardController.d.ts +34 -34
  134. package/dist/types/Inputs/MouseButtons.d.ts +22 -22
  135. package/dist/types/Inputs/MouseController.d.ts +40 -40
  136. package/dist/types/Inputs/MouseControllerHovering.d.ts +26 -26
  137. package/dist/types/Inputs/MouseControllerLocked.d.ts +31 -31
  138. package/dist/types/Inputs/SpecialKeyCodes.d.ts +14 -14
  139. package/dist/types/Inputs/TouchController.d.ts +28 -28
  140. package/dist/types/Inputs/TouchControllerFake.d.ts +29 -29
  141. package/dist/types/Inputs/XRGamepadController.d.ts +15 -15
  142. package/dist/types/PeerConnectionController/AggregatedStats.d.ts +82 -82
  143. package/dist/types/PeerConnectionController/CandidatePairStats.d.ts +22 -22
  144. package/dist/types/PeerConnectionController/CandidateStat.d.ts +13 -13
  145. package/dist/types/PeerConnectionController/CodecStats.d.ts +14 -14
  146. package/dist/types/PeerConnectionController/DataChannelStats.d.ts +15 -15
  147. package/dist/types/PeerConnectionController/InboundRTPStats.d.ts +141 -141
  148. package/dist/types/PeerConnectionController/InboundTrackStats.d.ts +32 -32
  149. package/dist/types/PeerConnectionController/OutBoundRTPStats.d.ts +23 -23
  150. package/dist/types/PeerConnectionController/PeerConnectionController.d.ts +143 -143
  151. package/dist/types/PeerConnectionController/SessionStats.d.ts +8 -8
  152. package/dist/types/PeerConnectionController/StreamStats.d.ts +9 -9
  153. package/dist/types/PixelStreaming/PixelStreaming.d.ts +271 -271
  154. package/dist/types/UI/OnScreenKeyboard.d.ts +30 -30
  155. package/dist/types/UeInstanceMessage/ResponseController.d.ts +19 -19
  156. package/dist/types/UeInstanceMessage/SendMessageController.d.ts +18 -18
  157. package/dist/types/UeInstanceMessage/StreamMessageController.d.ts +29 -29
  158. package/dist/types/UeInstanceMessage/ToStreamerMessagesController.d.ts +32 -32
  159. package/dist/types/Util/EventEmitter.d.ts +429 -429
  160. package/dist/types/Util/FileUtil.d.ts +32 -32
  161. package/dist/types/Util/IURLSearchParams.d.ts +9 -9
  162. package/dist/types/Util/InputCoordTranslator.d.ts +29 -29
  163. package/dist/types/Util/RTCUtils.d.ts +8 -8
  164. package/dist/types/VideoPlayer/StreamController.d.ts +22 -22
  165. package/dist/types/VideoPlayer/VideoPlayer.d.ts +78 -78
  166. package/dist/types/WebRtcPlayer/WebRtcPlayerController.d.ts +379 -379
  167. package/dist/types/WebXR/WebXRController.d.ts +42 -42
  168. package/dist/types/pixelstreamingfrontend.d.ts +23 -23
  169. package/package.json +45 -45
@@ -1,32 +1,32 @@
1
- /**
2
- * Utility function for populate file information from byte buffers.
3
- */
4
- export declare class FileUtil {
5
- /**
6
- * Processes a files extension when received over data channel
7
- * @param view - the file extension data
8
- */
9
- static setExtensionFromBytes(view: Uint8Array, file: FileTemplate): void;
10
- /**
11
- * Processes a files mime type when received over data channel
12
- * @param view - the file mime type data
13
- */
14
- static setMimeTypeFromBytes(view: Uint8Array, file: FileTemplate): void;
15
- /**
16
- * Processes a files contents when received over data channel
17
- * @param view - the file contents data
18
- */
19
- static setContentsFromBytes(view: Uint8Array, file: FileTemplate): void;
20
- }
21
- /**
22
- * A class that represents a template for a downloaded file
23
- */
24
- export declare class FileTemplate {
25
- mimetype: string;
26
- extension: string;
27
- receiving: boolean;
28
- size: number;
29
- data: Array<Uint8Array>;
30
- valid: boolean;
31
- timestampStart: number;
32
- }
1
+ /**
2
+ * Utility function for populate file information from byte buffers.
3
+ */
4
+ export declare class FileUtil {
5
+ /**
6
+ * Processes a files extension when received over data channel
7
+ * @param view - the file extension data
8
+ */
9
+ static setExtensionFromBytes(view: Uint8Array, file: FileTemplate): void;
10
+ /**
11
+ * Processes a files mime type when received over data channel
12
+ * @param view - the file mime type data
13
+ */
14
+ static setMimeTypeFromBytes(view: Uint8Array, file: FileTemplate): void;
15
+ /**
16
+ * Processes a files contents when received over data channel
17
+ * @param view - the file contents data
18
+ */
19
+ static setContentsFromBytes(view: Uint8Array, file: FileTemplate): void;
20
+ }
21
+ /**
22
+ * A class that represents a template for a downloaded file
23
+ */
24
+ export declare class FileTemplate {
25
+ mimetype: string;
26
+ extension: string;
27
+ receiving: boolean;
28
+ size: number;
29
+ data: Array<Uint8Array>;
30
+ valid: boolean;
31
+ timestampStart: number;
32
+ }
@@ -1,9 +1,9 @@
1
- /**
2
- * A case insensitive, partial implementation of URLSearchParams
3
- */
4
- export declare class IURLSearchParams {
5
- _urlParams: Record<string, string>;
6
- constructor(search: string);
7
- has(name: string): boolean;
8
- get(name: string): string | null;
9
- }
1
+ /**
2
+ * A case insensitive, partial implementation of URLSearchParams
3
+ */
4
+ export declare class IURLSearchParams {
5
+ _urlParams: Record<string, string>;
6
+ constructor(search: string);
7
+ has(name: string): boolean;
8
+ get(name: string): string | null;
9
+ }
@@ -1,29 +1,29 @@
1
- export interface RectSize {
2
- width: number;
3
- height: number;
4
- }
5
- export interface TranslatedCoordUnsigned {
6
- inRange: boolean;
7
- x: number;
8
- y: number;
9
- }
10
- export interface TranslatedCoordSigned {
11
- x: number;
12
- y: number;
13
- }
14
- export interface UntranslatedCoordUnsigned {
15
- x: number;
16
- y: number;
17
- }
18
- /**
19
- * Converts coordinates from element relative coordinates to values normalized within the value range of a short (and back again)
20
- */
21
- export declare class InputCoordTranslator {
22
- playerSize: RectSize;
23
- ratio: number;
24
- playerIsLarger: boolean;
25
- reconfigure(playerSize: RectSize, videoSize: RectSize): void;
26
- translateUnsigned(x: number, y: number): TranslatedCoordUnsigned;
27
- translateSigned(x: number, y: number): TranslatedCoordSigned;
28
- untranslateUnsigned(x: number, y: number): UntranslatedCoordUnsigned;
29
- }
1
+ export interface RectSize {
2
+ width: number;
3
+ height: number;
4
+ }
5
+ export interface TranslatedCoordUnsigned {
6
+ inRange: boolean;
7
+ x: number;
8
+ y: number;
9
+ }
10
+ export interface TranslatedCoordSigned {
11
+ x: number;
12
+ y: number;
13
+ }
14
+ export interface UntranslatedCoordUnsigned {
15
+ x: number;
16
+ y: number;
17
+ }
18
+ /**
19
+ * Converts coordinates from element relative coordinates to values normalized within the value range of a short (and back again)
20
+ */
21
+ export declare class InputCoordTranslator {
22
+ playerSize: RectSize;
23
+ ratio: number;
24
+ playerIsLarger: boolean;
25
+ reconfigure(playerSize: RectSize, videoSize: RectSize): void;
26
+ translateUnsigned(x: number, y: number): TranslatedCoordUnsigned;
27
+ translateSigned(x: number, y: number): TranslatedCoordSigned;
28
+ untranslateUnsigned(x: number, y: number): UntranslatedCoordUnsigned;
29
+ }
@@ -1,8 +1,8 @@
1
- export declare class RTCUtils {
2
- static isVideoTransceiver(transceiver: RTCRtpTransceiver | undefined): boolean;
3
- static canTransceiverReceiveVideo(transceiver: RTCRtpTransceiver | undefined): boolean;
4
- static canTransceiverSendVideo(transceiver: RTCRtpTransceiver | undefined): boolean;
5
- static isAudioTransceiver(transceiver: RTCRtpTransceiver | undefined): boolean;
6
- static canTransceiverReceiveAudio(transceiver: RTCRtpTransceiver | undefined): boolean;
7
- static canTransceiverSendAudio(transceiver: RTCRtpTransceiver | undefined): boolean;
8
- }
1
+ export declare class RTCUtils {
2
+ static isVideoTransceiver(transceiver: RTCRtpTransceiver | undefined): boolean;
3
+ static canTransceiverReceiveVideo(transceiver: RTCRtpTransceiver | undefined): boolean;
4
+ static canTransceiverSendVideo(transceiver: RTCRtpTransceiver | undefined): boolean;
5
+ static isAudioTransceiver(transceiver: RTCRtpTransceiver | undefined): boolean;
6
+ static canTransceiverReceiveAudio(transceiver: RTCRtpTransceiver | undefined): boolean;
7
+ static canTransceiverSendAudio(transceiver: RTCRtpTransceiver | undefined): boolean;
8
+ }
@@ -1,22 +1,22 @@
1
- import { VideoPlayer } from './VideoPlayer';
2
- /**
3
- * Video Player Controller handles the creation of the video HTML element and all handlers
4
- */
5
- export declare class StreamController {
6
- videoElementProvider: VideoPlayer;
7
- audioElement: HTMLAudioElement;
8
- /**
9
- * @param videoElementProvider Video Player instance
10
- */
11
- constructor(videoElementProvider: VideoPlayer);
12
- /**
13
- * Handles when the Peer connection has a track event
14
- * @param rtcTrackEvent - RTC Track Event
15
- */
16
- handleOnTrack(rtcTrackEvent: RTCTrackEvent): void;
17
- /**
18
- * Creates the audio device when receiving an RTCTrackEvent with the kind of "audio"
19
- * @param audioMediaStream - Audio Media stream track
20
- */
21
- CreateAudioTrack(audioMediaStream: MediaStream): void;
22
- }
1
+ import { VideoPlayer } from './VideoPlayer';
2
+ /**
3
+ * Video Player Controller handles the creation of the video HTML element and all handlers
4
+ */
5
+ export declare class StreamController {
6
+ videoElementProvider: VideoPlayer;
7
+ audioElement: HTMLAudioElement;
8
+ /**
9
+ * @param videoElementProvider Video Player instance
10
+ */
11
+ constructor(videoElementProvider: VideoPlayer);
12
+ /**
13
+ * Handles when the Peer connection has a track event
14
+ * @param rtcTrackEvent - RTC Track Event
15
+ */
16
+ handleOnTrack(rtcTrackEvent: RTCTrackEvent): void;
17
+ /**
18
+ * Creates the audio device when receiving an RTCTrackEvent with the kind of "audio"
19
+ * @param audioMediaStream - Audio Media stream track
20
+ */
21
+ CreateAudioTrack(audioMediaStream: MediaStream): void;
22
+ }
@@ -1,78 +1,78 @@
1
- import { Config } from '../Config/Config';
2
- /**
3
- * Extra types for the HTMLElement
4
- */
5
- declare global {
6
- interface HTMLElement {
7
- mozRequestPointerLock?(): void;
8
- }
9
- }
10
- /**
11
- * The video player html element
12
- */
13
- export declare class VideoPlayer {
14
- private config;
15
- private videoElement;
16
- private audioElement?;
17
- private orientationChangeTimeout;
18
- private lastTimeResized;
19
- onMatchViewportResolutionCallback: (width: number, height: number) => void;
20
- onResizePlayerCallback: () => void;
21
- resizeTimeoutHandle: number;
22
- /**
23
- * @param videoElementParent the html div the the video player will be injected into
24
- * @param config the applications configuration. We're interested in the startVideoMuted flag
25
- */
26
- constructor(videoElementParent: HTMLElement, config: Config);
27
- setAudioElement(audioElement: HTMLAudioElement): void;
28
- /**
29
- * Sets up the video element with any application config and plays the video element.
30
- * @returns A promise for if playing the video was successful or not.
31
- */
32
- play(): Promise<void>;
33
- /**
34
- * @returns True if the video element is paused.
35
- */
36
- isPaused(): boolean;
37
- /**
38
- * @returns - whether the video element is playing.
39
- */
40
- isVideoReady(): boolean;
41
- /**
42
- * @returns True if the video element has a valid video source (srcObject).
43
- */
44
- hasVideoSource(): boolean;
45
- /**
46
- * Get the current context of the html video element
47
- * @returns - the current context of the video element
48
- */
49
- getVideoElement(): HTMLVideoElement;
50
- /**
51
- * Get the current context of the html video elements parent
52
- * @returns - the current context of the video elements parent
53
- */
54
- getVideoParentElement(): HTMLElement;
55
- /**
56
- * Set the Video Elements src object tracks to enable
57
- * @param enabled - Enable Tracks on the Src Object
58
- */
59
- setVideoEnabled(enabled: boolean): void;
60
- /**
61
- * An override for when the video has been initialized with a srcObject
62
- */
63
- onVideoInitialized(): void;
64
- /**
65
- * On the orientation change of a window clear the timeout
66
- */
67
- onOrientationChange(): void;
68
- /**
69
- * Resizes the player style based on the window height and width
70
- * @returns - nil if requirements are satisfied
71
- */
72
- resizePlayerStyle(): void;
73
- /**
74
- * Resizes the player element to fill the parent element
75
- */
76
- resizePlayerStyleToFillParentElement(): void;
77
- updateVideoStreamSize(): void;
78
- }
1
+ import { Config } from '../Config/Config';
2
+ /**
3
+ * Extra types for the HTMLElement
4
+ */
5
+ declare global {
6
+ interface HTMLElement {
7
+ mozRequestPointerLock?(): void;
8
+ }
9
+ }
10
+ /**
11
+ * The video player html element
12
+ */
13
+ export declare class VideoPlayer {
14
+ private config;
15
+ private videoElement;
16
+ private audioElement?;
17
+ private orientationChangeTimeout;
18
+ private lastTimeResized;
19
+ onMatchViewportResolutionCallback: (width: number, height: number) => void;
20
+ onResizePlayerCallback: () => void;
21
+ resizeTimeoutHandle: number;
22
+ /**
23
+ * @param videoElementParent the html div the the video player will be injected into
24
+ * @param config the applications configuration. We're interested in the startVideoMuted flag
25
+ */
26
+ constructor(videoElementParent: HTMLElement, config: Config);
27
+ setAudioElement(audioElement: HTMLAudioElement): void;
28
+ /**
29
+ * Sets up the video element with any application config and plays the video element.
30
+ * @returns A promise for if playing the video was successful or not.
31
+ */
32
+ play(): Promise<void>;
33
+ /**
34
+ * @returns True if the video element is paused.
35
+ */
36
+ isPaused(): boolean;
37
+ /**
38
+ * @returns - whether the video element is playing.
39
+ */
40
+ isVideoReady(): boolean;
41
+ /**
42
+ * @returns True if the video element has a valid video source (srcObject).
43
+ */
44
+ hasVideoSource(): boolean;
45
+ /**
46
+ * Get the current context of the html video element
47
+ * @returns - the current context of the video element
48
+ */
49
+ getVideoElement(): HTMLVideoElement;
50
+ /**
51
+ * Get the current context of the html video elements parent
52
+ * @returns - the current context of the video elements parent
53
+ */
54
+ getVideoParentElement(): HTMLElement;
55
+ /**
56
+ * Set the Video Elements src object tracks to enable
57
+ * @param enabled - Enable Tracks on the Src Object
58
+ */
59
+ setVideoEnabled(enabled: boolean): void;
60
+ /**
61
+ * An override for when the video has been initialized with a srcObject
62
+ */
63
+ onVideoInitialized(): void;
64
+ /**
65
+ * On the orientation change of a window clear the timeout
66
+ */
67
+ onOrientationChange(): void;
68
+ /**
69
+ * Resizes the player style based on the window height and width
70
+ * @returns - nil if requirements are satisfied
71
+ */
72
+ resizePlayerStyle(): void;
73
+ /**
74
+ * Resizes the player element to fill the parent element
75
+ */
76
+ resizePlayerStyleToFillParentElement(): void;
77
+ updateVideoStreamSize(): void;
78
+ }