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

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (357) hide show
  1. package/.eslintrc.js +1 -1
  2. package/.prettierrc.json +1 -0
  3. package/dist/commonjs/AFK/AFKController.js +110 -0
  4. package/dist/commonjs/AFK/AFKController.js.map +1 -0
  5. package/dist/commonjs/Config/Config.js +560 -0
  6. package/dist/commonjs/Config/Config.js.map +1 -0
  7. package/dist/commonjs/Config/SettingBase.js +99 -0
  8. package/dist/commonjs/Config/SettingBase.js.map +1 -0
  9. package/dist/commonjs/Config/SettingFlag.js +50 -0
  10. package/dist/commonjs/Config/SettingFlag.js.map +1 -0
  11. package/dist/commonjs/Config/SettingNumber.js +84 -0
  12. package/dist/commonjs/Config/SettingNumber.js.map +1 -0
  13. package/dist/commonjs/Config/SettingOption.js +85 -0
  14. package/dist/commonjs/Config/SettingOption.js.map +1 -0
  15. package/dist/commonjs/Config/SettingText.js +43 -0
  16. package/dist/commonjs/Config/SettingText.js.map +1 -0
  17. package/dist/commonjs/DataChannel/DataChannelController.js +107 -0
  18. package/dist/commonjs/DataChannel/DataChannelController.js.map +1 -0
  19. package/dist/commonjs/DataChannel/DataChannelLatencyTestController.js +95 -0
  20. package/dist/commonjs/DataChannel/DataChannelLatencyTestController.js.map +1 -0
  21. package/dist/commonjs/DataChannel/DataChannelLatencyTestResults.js +19 -0
  22. package/dist/commonjs/DataChannel/DataChannelLatencyTestResults.js.map +1 -0
  23. package/dist/commonjs/DataChannel/DataChannelSender.js +44 -0
  24. package/dist/commonjs/DataChannel/DataChannelSender.js.map +1 -0
  25. package/dist/commonjs/DataChannel/InitialSettings.js +42 -0
  26. package/dist/commonjs/DataChannel/InitialSettings.js.map +1 -0
  27. package/dist/commonjs/DataChannel/LatencyTestResults.js +61 -0
  28. package/dist/commonjs/DataChannel/LatencyTestResults.js.map +1 -0
  29. package/dist/commonjs/FreezeFrame/FreezeFrame.js +94 -0
  30. package/dist/commonjs/FreezeFrame/FreezeFrame.js.map +1 -0
  31. package/dist/commonjs/FreezeFrame/FreezeFrameController.js +96 -0
  32. package/dist/commonjs/FreezeFrame/FreezeFrameController.js.map +1 -0
  33. package/dist/commonjs/Inputs/GamepadController.js +189 -0
  34. package/dist/commonjs/Inputs/GamepadController.js.map +1 -0
  35. package/dist/commonjs/Inputs/GamepadTypes.js +22 -0
  36. package/dist/commonjs/Inputs/GamepadTypes.js.map +1 -0
  37. package/dist/commonjs/Inputs/IInputController.js +3 -0
  38. package/dist/commonjs/Inputs/IInputController.js.map +1 -0
  39. package/dist/commonjs/Inputs/InputClassesFactory.js +97 -0
  40. package/dist/commonjs/Inputs/InputClassesFactory.js.map +1 -0
  41. package/dist/commonjs/Inputs/KeyCodes.js +113 -0
  42. package/dist/commonjs/Inputs/KeyCodes.js.map +1 -0
  43. package/dist/commonjs/Inputs/KeyboardController.js +138 -0
  44. package/dist/commonjs/Inputs/KeyboardController.js.map +1 -0
  45. package/dist/commonjs/Inputs/MouseButtons.js +29 -0
  46. package/dist/commonjs/Inputs/MouseButtons.js.map +1 -0
  47. package/dist/commonjs/Inputs/MouseController.js +98 -0
  48. package/dist/commonjs/Inputs/MouseController.js.map +1 -0
  49. package/dist/commonjs/Inputs/MouseControllerHovering.js +94 -0
  50. package/dist/commonjs/Inputs/MouseControllerHovering.js.map +1 -0
  51. package/dist/commonjs/Inputs/MouseControllerLocked.js +154 -0
  52. package/dist/commonjs/Inputs/MouseControllerLocked.js.map +1 -0
  53. package/dist/commonjs/Inputs/SpecialKeyCodes.js +20 -0
  54. package/dist/commonjs/Inputs/SpecialKeyCodes.js.map +1 -0
  55. package/dist/commonjs/Inputs/TouchController.js +124 -0
  56. package/dist/commonjs/Inputs/TouchController.js.map +1 -0
  57. package/dist/commonjs/Inputs/TouchControllerFake.js +92 -0
  58. package/dist/commonjs/Inputs/TouchControllerFake.js.map +1 -0
  59. package/dist/commonjs/Inputs/XRGamepadController.js +125 -0
  60. package/dist/commonjs/Inputs/XRGamepadController.js.map +1 -0
  61. package/dist/commonjs/PeerConnectionController/AggregatedStats.js +253 -0
  62. package/dist/commonjs/PeerConnectionController/AggregatedStats.js.map +1 -0
  63. package/dist/commonjs/PeerConnectionController/CandidatePairStats.js +11 -0
  64. package/dist/commonjs/PeerConnectionController/CandidatePairStats.js.map +1 -0
  65. package/dist/commonjs/PeerConnectionController/CandidateStat.js +11 -0
  66. package/dist/commonjs/PeerConnectionController/CandidateStat.js.map +1 -0
  67. package/dist/commonjs/PeerConnectionController/CodecStats.js +11 -0
  68. package/dist/commonjs/PeerConnectionController/CodecStats.js.map +1 -0
  69. package/dist/commonjs/PeerConnectionController/DataChannelStats.js +11 -0
  70. package/dist/commonjs/PeerConnectionController/DataChannelStats.js.map +1 -0
  71. package/dist/commonjs/PeerConnectionController/InboundRTPStats.js +23 -0
  72. package/dist/commonjs/PeerConnectionController/InboundRTPStats.js.map +1 -0
  73. package/dist/commonjs/PeerConnectionController/InboundTrackStats.js +11 -0
  74. package/dist/commonjs/PeerConnectionController/InboundTrackStats.js.map +1 -0
  75. package/dist/commonjs/PeerConnectionController/OutBoundRTPStats.js +17 -0
  76. package/dist/commonjs/PeerConnectionController/OutBoundRTPStats.js.map +1 -0
  77. package/dist/commonjs/PeerConnectionController/PeerConnectionController.js +585 -0
  78. package/dist/commonjs/PeerConnectionController/PeerConnectionController.js.map +1 -0
  79. package/dist/commonjs/PeerConnectionController/SessionStats.js +11 -0
  80. package/dist/commonjs/PeerConnectionController/SessionStats.js.map +1 -0
  81. package/dist/commonjs/PeerConnectionController/StreamStats.js +11 -0
  82. package/dist/commonjs/PeerConnectionController/StreamStats.js.map +1 -0
  83. package/dist/commonjs/PixelStreaming/PixelStreaming.js +608 -0
  84. package/dist/commonjs/PixelStreaming/PixelStreaming.js.map +1 -0
  85. package/dist/commonjs/UI/OnScreenKeyboard.js +83 -0
  86. package/dist/commonjs/UI/OnScreenKeyboard.js.map +1 -0
  87. package/dist/commonjs/UeInstanceMessage/ResponseController.js +39 -0
  88. package/dist/commonjs/UeInstanceMessage/ResponseController.js.map +1 -0
  89. package/dist/commonjs/UeInstanceMessage/SendMessageController.js +121 -0
  90. package/dist/commonjs/UeInstanceMessage/SendMessageController.js.map +1 -0
  91. package/dist/commonjs/UeInstanceMessage/StreamMessageController.js +211 -0
  92. package/dist/commonjs/UeInstanceMessage/StreamMessageController.js.map +1 -0
  93. package/dist/commonjs/UeInstanceMessage/ToStreamerMessagesController.js +50 -0
  94. package/dist/commonjs/UeInstanceMessage/ToStreamerMessagesController.js.map +1 -0
  95. package/dist/commonjs/Util/EventEmitter.js +387 -0
  96. package/dist/commonjs/Util/EventEmitter.js.map +1 -0
  97. package/dist/commonjs/Util/FileUtil.js +109 -0
  98. package/dist/commonjs/Util/FileUtil.js.map +1 -0
  99. package/dist/commonjs/Util/IURLSearchParams.js +26 -0
  100. package/dist/commonjs/Util/IURLSearchParams.js.map +1 -0
  101. package/dist/commonjs/Util/InputCoordTranslator.js +50 -0
  102. package/dist/commonjs/Util/InputCoordTranslator.js.map +1 -0
  103. package/dist/commonjs/Util/RTCUtils.js +41 -0
  104. package/dist/commonjs/Util/RTCUtils.js.map +1 -0
  105. package/dist/commonjs/VideoPlayer/StreamController.js +68 -0
  106. package/dist/commonjs/VideoPlayer/StreamController.js.map +1 -0
  107. package/dist/commonjs/VideoPlayer/VideoPlayer.js +178 -0
  108. package/dist/commonjs/VideoPlayer/VideoPlayer.js.map +1 -0
  109. package/dist/commonjs/WebRtcPlayer/WebRtcPlayerController.js +1224 -0
  110. package/dist/commonjs/WebRtcPlayer/WebRtcPlayerController.js.map +1 -0
  111. package/dist/commonjs/WebXR/WebXRController.js +361 -0
  112. package/dist/commonjs/WebXR/WebXRController.js.map +1 -0
  113. package/dist/commonjs/pixelstreamingfrontend.js +71 -0
  114. package/dist/commonjs/pixelstreamingfrontend.js.map +1 -0
  115. package/dist/esm/AFK/AFKController.js +106 -0
  116. package/dist/esm/AFK/AFKController.js.map +1 -0
  117. package/dist/esm/Config/Config.js +552 -0
  118. package/dist/esm/Config/Config.js.map +1 -0
  119. package/dist/esm/Config/SettingBase.js +95 -0
  120. package/dist/esm/Config/SettingBase.js.map +1 -0
  121. package/dist/esm/Config/SettingFlag.js +46 -0
  122. package/dist/esm/Config/SettingFlag.js.map +1 -0
  123. package/dist/esm/Config/SettingNumber.js +80 -0
  124. package/dist/esm/Config/SettingNumber.js.map +1 -0
  125. package/dist/esm/Config/SettingOption.js +81 -0
  126. package/dist/esm/Config/SettingOption.js.map +1 -0
  127. package/dist/esm/Config/SettingText.js +39 -0
  128. package/dist/esm/Config/SettingText.js.map +1 -0
  129. package/dist/esm/DataChannel/DataChannelController.js +103 -0
  130. package/dist/esm/DataChannel/DataChannelController.js.map +1 -0
  131. package/dist/esm/DataChannel/DataChannelLatencyTestController.js +91 -0
  132. package/dist/esm/DataChannel/DataChannelLatencyTestController.js.map +1 -0
  133. package/dist/esm/DataChannel/DataChannelLatencyTestResults.js +15 -0
  134. package/dist/esm/DataChannel/DataChannelLatencyTestResults.js.map +1 -0
  135. package/dist/esm/DataChannel/DataChannelSender.js +40 -0
  136. package/dist/esm/DataChannel/DataChannelSender.js.map +1 -0
  137. package/dist/esm/DataChannel/InitialSettings.js +35 -0
  138. package/dist/esm/DataChannel/InitialSettings.js.map +1 -0
  139. package/dist/esm/DataChannel/LatencyTestResults.js +57 -0
  140. package/dist/esm/DataChannel/LatencyTestResults.js.map +1 -0
  141. package/dist/esm/FreezeFrame/FreezeFrame.js +90 -0
  142. package/dist/esm/FreezeFrame/FreezeFrame.js.map +1 -0
  143. package/dist/esm/FreezeFrame/FreezeFrameController.js +92 -0
  144. package/dist/esm/FreezeFrame/FreezeFrameController.js.map +1 -0
  145. package/dist/esm/Inputs/GamepadController.js +185 -0
  146. package/dist/esm/Inputs/GamepadController.js.map +1 -0
  147. package/dist/esm/Inputs/GamepadTypes.js +18 -0
  148. package/dist/esm/Inputs/GamepadTypes.js.map +1 -0
  149. package/dist/esm/Inputs/IInputController.js +2 -0
  150. package/dist/esm/Inputs/IInputController.js.map +1 -0
  151. package/dist/esm/Inputs/InputClassesFactory.js +92 -0
  152. package/dist/esm/Inputs/InputClassesFactory.js.map +1 -0
  153. package/dist/esm/Inputs/KeyCodes.js +110 -0
  154. package/dist/esm/Inputs/KeyCodes.js.map +1 -0
  155. package/dist/esm/Inputs/KeyboardController.js +134 -0
  156. package/dist/esm/Inputs/KeyboardController.js.map +1 -0
  157. package/dist/esm/Inputs/MouseButtons.js +24 -0
  158. package/dist/esm/Inputs/MouseButtons.js.map +1 -0
  159. package/dist/esm/Inputs/MouseController.js +94 -0
  160. package/dist/esm/Inputs/MouseController.js.map +1 -0
  161. package/dist/esm/Inputs/MouseControllerHovering.js +90 -0
  162. package/dist/esm/Inputs/MouseControllerHovering.js.map +1 -0
  163. package/dist/esm/Inputs/MouseControllerLocked.js +150 -0
  164. package/dist/esm/Inputs/MouseControllerLocked.js.map +1 -0
  165. package/dist/esm/Inputs/SpecialKeyCodes.js +16 -0
  166. package/dist/esm/Inputs/SpecialKeyCodes.js.map +1 -0
  167. package/dist/esm/Inputs/TouchController.js +120 -0
  168. package/dist/esm/Inputs/TouchController.js.map +1 -0
  169. package/dist/esm/Inputs/TouchControllerFake.js +88 -0
  170. package/dist/esm/Inputs/TouchControllerFake.js.map +1 -0
  171. package/dist/esm/Inputs/XRGamepadController.js +121 -0
  172. package/dist/esm/Inputs/XRGamepadController.js.map +1 -0
  173. package/dist/esm/PeerConnectionController/AggregatedStats.js +249 -0
  174. package/dist/esm/PeerConnectionController/AggregatedStats.js.map +1 -0
  175. package/dist/esm/PeerConnectionController/CandidatePairStats.js +7 -0
  176. package/dist/esm/PeerConnectionController/CandidatePairStats.js.map +1 -0
  177. package/dist/esm/PeerConnectionController/CandidateStat.js +7 -0
  178. package/dist/esm/PeerConnectionController/CandidateStat.js.map +1 -0
  179. package/dist/esm/PeerConnectionController/CodecStats.js +7 -0
  180. package/dist/esm/PeerConnectionController/CodecStats.js.map +1 -0
  181. package/dist/esm/PeerConnectionController/DataChannelStats.js +7 -0
  182. package/dist/esm/PeerConnectionController/DataChannelStats.js.map +1 -0
  183. package/dist/esm/PeerConnectionController/InboundRTPStats.js +17 -0
  184. package/dist/esm/PeerConnectionController/InboundRTPStats.js.map +1 -0
  185. package/dist/esm/PeerConnectionController/InboundTrackStats.js +7 -0
  186. package/dist/esm/PeerConnectionController/InboundTrackStats.js.map +1 -0
  187. package/dist/esm/PeerConnectionController/OutBoundRTPStats.js +12 -0
  188. package/dist/esm/PeerConnectionController/OutBoundRTPStats.js.map +1 -0
  189. package/dist/esm/PeerConnectionController/PeerConnectionController.js +581 -0
  190. package/dist/esm/PeerConnectionController/PeerConnectionController.js.map +1 -0
  191. package/dist/esm/PeerConnectionController/SessionStats.js +7 -0
  192. package/dist/esm/PeerConnectionController/SessionStats.js.map +1 -0
  193. package/dist/esm/PeerConnectionController/StreamStats.js +7 -0
  194. package/dist/esm/PeerConnectionController/StreamStats.js.map +1 -0
  195. package/dist/esm/PixelStreaming/PixelStreaming.js +604 -0
  196. package/dist/esm/PixelStreaming/PixelStreaming.js.map +1 -0
  197. package/dist/esm/UI/OnScreenKeyboard.js +79 -0
  198. package/dist/esm/UI/OnScreenKeyboard.js.map +1 -0
  199. package/dist/esm/UeInstanceMessage/ResponseController.js +35 -0
  200. package/dist/esm/UeInstanceMessage/ResponseController.js.map +1 -0
  201. package/dist/esm/UeInstanceMessage/SendMessageController.js +117 -0
  202. package/dist/esm/UeInstanceMessage/SendMessageController.js.map +1 -0
  203. package/dist/esm/UeInstanceMessage/StreamMessageController.js +206 -0
  204. package/dist/esm/UeInstanceMessage/StreamMessageController.js.map +1 -0
  205. package/dist/esm/UeInstanceMessage/ToStreamerMessagesController.js +46 -0
  206. package/dist/esm/UeInstanceMessage/ToStreamerMessagesController.js.map +1 -0
  207. package/dist/esm/Util/EventEmitter.js +346 -0
  208. package/dist/esm/Util/EventEmitter.js.map +1 -0
  209. package/dist/esm/Util/FileUtil.js +104 -0
  210. package/dist/esm/Util/FileUtil.js.map +1 -0
  211. package/dist/esm/Util/IURLSearchParams.js +22 -0
  212. package/dist/esm/Util/IURLSearchParams.js.map +1 -0
  213. package/dist/esm/Util/InputCoordTranslator.js +46 -0
  214. package/dist/esm/Util/InputCoordTranslator.js.map +1 -0
  215. package/dist/esm/Util/RTCUtils.js +37 -0
  216. package/dist/esm/Util/RTCUtils.js.map +1 -0
  217. package/dist/esm/VideoPlayer/StreamController.js +64 -0
  218. package/dist/esm/VideoPlayer/StreamController.js.map +1 -0
  219. package/dist/esm/VideoPlayer/VideoPlayer.js +174 -0
  220. package/dist/esm/VideoPlayer/VideoPlayer.js.map +1 -0
  221. package/dist/esm/WebRtcPlayer/WebRtcPlayerController.js +1220 -0
  222. package/dist/esm/WebRtcPlayer/WebRtcPlayerController.js.map +1 -0
  223. package/dist/esm/WebXR/WebXRController.js +357 -0
  224. package/dist/esm/WebXR/WebXRController.js.map +1 -0
  225. package/dist/esm/pixelstreamingfrontend.js +25 -0
  226. package/dist/esm/pixelstreamingfrontend.js.map +1 -0
  227. package/{types → dist/types}/AFK/AFKController.d.ts +38 -39
  228. package/{types → dist/types}/Config/Config.d.ts +220 -219
  229. package/{types → dist/types}/Config/SettingBase.d.ts +43 -30
  230. package/{types → dist/types}/Config/SettingFlag.d.ts +24 -33
  231. package/{types → dist/types}/Config/SettingNumber.d.ts +41 -45
  232. package/{types → dist/types}/Config/SettingOption.d.ts +41 -43
  233. package/{types → dist/types}/Config/SettingText.d.ts +21 -29
  234. package/{types → dist/types}/DataChannel/DataChannelController.d.ts +59 -59
  235. package/{types → dist/types}/DataChannel/DataChannelLatencyTestController.d.ts +25 -26
  236. package/{types → dist/types}/DataChannel/DataChannelLatencyTestResults.d.ts +46 -46
  237. package/{types → dist/types}/DataChannel/DataChannelSender.d.ts +21 -21
  238. package/{types → dist/types}/DataChannel/InitialSettings.d.ts +44 -44
  239. package/{types → dist/types}/DataChannel/LatencyTestResults.d.ts +31 -31
  240. package/{types → dist/types}/FreezeFrame/FreezeFrame.d.ts +36 -36
  241. package/{types → dist/types}/FreezeFrame/FreezeFrameController.d.ts +37 -37
  242. package/dist/types/Inputs/GamepadController.d.ts +61 -0
  243. package/dist/types/Inputs/GamepadTypes.d.ts +15 -0
  244. package/dist/types/Inputs/IInputController.d.ts +16 -0
  245. package/{types → dist/types}/Inputs/InputClassesFactory.d.ts +53 -54
  246. package/dist/types/Inputs/KeyCodes.d.ts +5 -0
  247. package/dist/types/Inputs/KeyboardController.d.ts +34 -0
  248. package/{types → dist/types}/Inputs/MouseButtons.d.ts +22 -22
  249. package/dist/types/Inputs/MouseController.d.ts +40 -0
  250. package/dist/types/Inputs/MouseControllerHovering.d.ts +26 -0
  251. package/dist/types/Inputs/MouseControllerLocked.d.ts +31 -0
  252. package/{types → dist/types}/Inputs/SpecialKeyCodes.d.ts +14 -14
  253. package/dist/types/Inputs/TouchController.d.ts +28 -0
  254. package/dist/types/Inputs/TouchControllerFake.d.ts +29 -0
  255. package/{types → dist/types}/Inputs/XRGamepadController.d.ts +15 -22
  256. package/{types → dist/types}/PeerConnectionController/AggregatedStats.d.ts +82 -84
  257. package/{types → dist/types}/PeerConnectionController/CandidatePairStats.d.ts +22 -22
  258. package/{types → dist/types}/PeerConnectionController/CandidateStat.d.ts +13 -13
  259. package/{types → dist/types}/PeerConnectionController/CodecStats.d.ts +14 -14
  260. package/{types → dist/types}/PeerConnectionController/DataChannelStats.d.ts +15 -15
  261. package/{types → dist/types}/PeerConnectionController/InboundRTPStats.d.ts +141 -141
  262. package/{types → dist/types}/PeerConnectionController/InboundTrackStats.d.ts +32 -32
  263. package/{types → dist/types}/PeerConnectionController/OutBoundRTPStats.d.ts +23 -23
  264. package/{types → dist/types}/PeerConnectionController/PeerConnectionController.d.ts +143 -140
  265. package/{types → dist/types}/PeerConnectionController/SessionStats.d.ts +8 -8
  266. package/{types → dist/types}/PeerConnectionController/StreamStats.d.ts +9 -9
  267. package/{types → dist/types}/PixelStreaming/PixelStreaming.d.ts +271 -259
  268. package/{types → dist/types}/UI/OnScreenKeyboard.d.ts +30 -30
  269. package/{types → dist/types}/UeInstanceMessage/ResponseController.d.ts +19 -19
  270. package/{types → dist/types}/UeInstanceMessage/SendMessageController.d.ts +18 -18
  271. package/{types → dist/types}/UeInstanceMessage/StreamMessageController.d.ts +29 -29
  272. package/{types → dist/types}/UeInstanceMessage/ToStreamerMessagesController.d.ts +32 -32
  273. package/{types → dist/types}/Util/EventEmitter.d.ts +429 -429
  274. package/{types → dist/types}/Util/FileUtil.d.ts +32 -32
  275. package/dist/types/Util/IURLSearchParams.d.ts +9 -0
  276. package/dist/types/Util/InputCoordTranslator.d.ts +29 -0
  277. package/{types → dist/types}/Util/RTCUtils.d.ts +8 -8
  278. package/{types → dist/types}/VideoPlayer/StreamController.d.ts +22 -24
  279. package/{types → dist/types}/VideoPlayer/VideoPlayer.d.ts +78 -78
  280. package/{types → dist/types}/WebRtcPlayer/WebRtcPlayerController.d.ts +379 -377
  281. package/{types → dist/types}/WebXR/WebXRController.d.ts +42 -42
  282. package/{types → dist/types}/pixelstreamingfrontend.d.ts +23 -22
  283. package/package.json +14 -17
  284. package/readme.md +9 -1
  285. package/src/AFK/AFKController.ts +10 -32
  286. package/src/Config/Config.ts +232 -205
  287. package/src/Config/SettingBase.ts +61 -2
  288. package/src/Config/SettingFlag.ts +10 -48
  289. package/src/Config/SettingNumber.ts +23 -33
  290. package/src/Config/SettingOption.ts +41 -56
  291. package/src/Config/SettingText.ts +9 -37
  292. package/src/DataChannel/DataChannelController.ts +6 -26
  293. package/src/DataChannel/DataChannelLatencyTestController.ts +43 -38
  294. package/src/DataChannel/DataChannelLatencyTestResults.ts +8 -10
  295. package/src/DataChannel/DataChannelSender.ts +5 -15
  296. package/src/DataChannel/LatencyTestResults.ts +5 -15
  297. package/src/FreezeFrame/FreezeFrame.ts +7 -19
  298. package/src/FreezeFrame/FreezeFrameController.ts +3 -14
  299. package/src/Inputs/GamepadController.ts +123 -221
  300. package/src/Inputs/GamepadTypes.ts +23 -0
  301. package/src/Inputs/IInputController.ts +17 -0
  302. package/src/Inputs/InputClassesFactory.ts +38 -45
  303. package/src/Inputs/KeyCodes.ts +114 -0
  304. package/src/Inputs/KeyboardController.ts +49 -232
  305. package/src/Inputs/MouseController.ts +71 -297
  306. package/src/Inputs/MouseControllerHovering.ts +118 -0
  307. package/src/Inputs/MouseControllerLocked.ts +194 -0
  308. package/src/Inputs/TouchController.ts +49 -105
  309. package/src/Inputs/TouchControllerFake.ts +132 -0
  310. package/src/Inputs/XRGamepadController.ts +35 -44
  311. package/src/PeerConnectionController/AggregatedStats.ts +46 -75
  312. package/src/PeerConnectionController/CandidatePairStats.ts +1 -1
  313. package/src/PeerConnectionController/CandidateStat.ts +1 -1
  314. package/src/PeerConnectionController/PeerConnectionController.ts +214 -170
  315. package/src/PixelStreaming/PixelStreaming.ts +174 -226
  316. package/src/UI/OnScreenKeyboard.ts +14 -9
  317. package/src/UeInstanceMessage/ResponseController.ts +6 -15
  318. package/src/UeInstanceMessage/SendMessageController.ts +16 -18
  319. package/src/UeInstanceMessage/StreamMessageController.ts +3 -12
  320. package/src/UeInstanceMessage/ToStreamerMessagesController.ts +3 -9
  321. package/src/Util/EventEmitter.ts +17 -22
  322. package/src/Util/FileUtil.ts +11 -34
  323. package/src/Util/IURLSearchParams.ts +25 -0
  324. package/src/Util/InputCoordTranslator.ts +73 -0
  325. package/src/Util/RTCUtils.ts +23 -15
  326. package/src/VideoPlayer/StreamController.ts +6 -23
  327. package/src/VideoPlayer/VideoPlayer.ts +9 -30
  328. package/src/WebRtcPlayer/WebRtcPlayerController.ts +328 -690
  329. package/src/WebXR/WebXRController.ts +82 -94
  330. package/src/pixelstreamingfrontend.ts +8 -6
  331. package/tsconfig.cjs.json +9 -0
  332. package/tsconfig.esm.json +7 -0
  333. package/tsconfig.json +4 -6
  334. package/dist/lib-pixelstreamingfrontend.esm.js +0 -1
  335. package/dist/lib-pixelstreamingfrontend.js +0 -1
  336. package/src/Inputs/FakeTouchController.ts +0 -199
  337. package/src/Inputs/HoveringMouseEvents.ts +0 -192
  338. package/src/Inputs/IMouseEvents.ts +0 -64
  339. package/src/Inputs/ITouchController.ts +0 -29
  340. package/src/Inputs/LockedMouseEvents.ts +0 -287
  341. package/src/Util/CoordinateConverter.ts +0 -290
  342. package/src/Util/EventListenerTracker.ts +0 -29
  343. package/types/Inputs/FakeTouchController.d.ts +0 -61
  344. package/types/Inputs/GamepadController.d.ts +0 -85
  345. package/types/Inputs/GamepadTypes.d.ts +0 -8
  346. package/types/Inputs/HoveringMouseEvents.d.ts +0 -56
  347. package/types/Inputs/IMouseEvents.d.ts +0 -53
  348. package/types/Inputs/ITouchController.d.ts +0 -24
  349. package/types/Inputs/KeyboardController.d.ts +0 -62
  350. package/types/Inputs/LockedMouseEvents.d.ts +0 -80
  351. package/types/Inputs/MouseController.d.ts +0 -75
  352. package/types/Inputs/TouchController.d.ts +0 -53
  353. package/types/Util/CoordinateConverter.d.ts +0 -100
  354. package/types/Util/EventListenerTracker.d.ts +0 -14
  355. package/webpack.common.js +0 -35
  356. package/webpack.dev.js +0 -35
  357. package/webpack.prod.js +0 -36
@@ -0,0 +1,387 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.EventEmitter = exports.WebRtcTCPRelayDetectedEvent = exports.PlayerCountEvent = exports.XrFrameEvent = exports.XrSessionEndedEvent = exports.XrSessionStartedEvent = exports.SettingsChangedEvent = exports.InitialSettingsEvent = exports.DataChannelLatencyTestResultEvent = exports.DataChannelLatencyTestResponseEvent = exports.LatencyTestResultEvent = exports.StreamerIDChangedMessageEvent = exports.StreamerListMessageEvent = exports.StatsReceivedEvent = exports.HideFreezeFrameEvent = exports.LoadFreezeFrameEvent = exports.PlayStreamRejectedEvent = exports.PlayStreamEvent = exports.PlayStreamErrorEvent = exports.StreamReconnectEvent = exports.StreamPreDisconnectEvent = exports.StreamPreConnectEvent = exports.StreamLoadingEvent = exports.VideoInitializedEvent = exports.DataChannelErrorEvent = exports.DataChannelCloseEvent = exports.DataChannelOpenEvent = exports.WebRtcDisconnectedEvent = exports.WebRtcFailedEvent = exports.WebRtcConnectedEvent = exports.WebRtcConnectingEvent = exports.WebRtcAutoConnectEvent = exports.WebRtcSdpEvent = exports.VideoEncoderAvgQPEvent = exports.AfkTimedOutEvent = exports.AfkWarningDeactivateEvent = exports.AfkWarningUpdateEvent = exports.AfkWarningActivateEvent = void 0;
4
+ /**
5
+ * An event that is emitted when AFK disconnect is about to happen.
6
+ * Can be cancelled by calling the callback function provided as part of the event.
7
+ */
8
+ class AfkWarningActivateEvent extends Event {
9
+ constructor(data) {
10
+ super('afkWarningActivate');
11
+ this.data = data;
12
+ }
13
+ }
14
+ exports.AfkWarningActivateEvent = AfkWarningActivateEvent;
15
+ /**
16
+ * An event that is emitted when the AFK disconnect countdown is updated.
17
+ */
18
+ class AfkWarningUpdateEvent extends Event {
19
+ constructor(data) {
20
+ super('afkWarningUpdate');
21
+ this.data = data;
22
+ }
23
+ }
24
+ exports.AfkWarningUpdateEvent = AfkWarningUpdateEvent;
25
+ /**
26
+ * An event that is emitted when AFK warning is deactivated.
27
+ */
28
+ class AfkWarningDeactivateEvent extends Event {
29
+ constructor() {
30
+ super('afkWarningDeactivate');
31
+ }
32
+ }
33
+ exports.AfkWarningDeactivateEvent = AfkWarningDeactivateEvent;
34
+ /**
35
+ * An event that is emitted when AFK countdown reaches 0 and the user is disconnected.
36
+ */
37
+ class AfkTimedOutEvent extends Event {
38
+ constructor() {
39
+ super('afkTimedOut');
40
+ }
41
+ }
42
+ exports.AfkTimedOutEvent = AfkTimedOutEvent;
43
+ /**
44
+ * An event that is emitted when we receive new video quality value.
45
+ */
46
+ class VideoEncoderAvgQPEvent extends Event {
47
+ constructor(data) {
48
+ super('videoEncoderAvgQP');
49
+ this.data = data;
50
+ }
51
+ }
52
+ exports.VideoEncoderAvgQPEvent = VideoEncoderAvgQPEvent;
53
+ /**
54
+ * An event that is emitted after a WebRtc connection has been negotiated.
55
+ */
56
+ class WebRtcSdpEvent extends Event {
57
+ constructor() {
58
+ super('webRtcSdp');
59
+ }
60
+ }
61
+ exports.WebRtcSdpEvent = WebRtcSdpEvent;
62
+ /**
63
+ * An event that is emitted when auto connecting.
64
+ */
65
+ class WebRtcAutoConnectEvent extends Event {
66
+ constructor() {
67
+ super('webRtcAutoConnect');
68
+ }
69
+ }
70
+ exports.WebRtcAutoConnectEvent = WebRtcAutoConnectEvent;
71
+ /**
72
+ * An event that is emitted when sending a WebRtc offer.
73
+ */
74
+ class WebRtcConnectingEvent extends Event {
75
+ constructor() {
76
+ super('webRtcConnecting');
77
+ }
78
+ }
79
+ exports.WebRtcConnectingEvent = WebRtcConnectingEvent;
80
+ /**
81
+ * An event that is emitted when WebRtc connection has been established.
82
+ */
83
+ class WebRtcConnectedEvent extends Event {
84
+ constructor() {
85
+ super('webRtcConnected');
86
+ }
87
+ }
88
+ exports.WebRtcConnectedEvent = WebRtcConnectedEvent;
89
+ /**
90
+ * An event that is emitted if WebRtc connection has failed.
91
+ */
92
+ class WebRtcFailedEvent extends Event {
93
+ constructor() {
94
+ super('webRtcFailed');
95
+ }
96
+ }
97
+ exports.WebRtcFailedEvent = WebRtcFailedEvent;
98
+ /**
99
+ * An event that is emitted if WebRtc connection is disconnected.
100
+ */
101
+ class WebRtcDisconnectedEvent extends Event {
102
+ constructor(data) {
103
+ super('webRtcDisconnected');
104
+ this.data = data;
105
+ }
106
+ }
107
+ exports.WebRtcDisconnectedEvent = WebRtcDisconnectedEvent;
108
+ /**
109
+ * An event that is emitted when RTCDataChannel is opened.
110
+ */
111
+ class DataChannelOpenEvent extends Event {
112
+ constructor(data) {
113
+ super('dataChannelOpen');
114
+ this.data = data;
115
+ }
116
+ }
117
+ exports.DataChannelOpenEvent = DataChannelOpenEvent;
118
+ /**
119
+ * An event that is emitted when RTCDataChannel is closed.
120
+ */
121
+ class DataChannelCloseEvent extends Event {
122
+ constructor(data) {
123
+ super('dataChannelClose');
124
+ this.data = data;
125
+ }
126
+ }
127
+ exports.DataChannelCloseEvent = DataChannelCloseEvent;
128
+ /**
129
+ * An event that is emitted on RTCDataChannel errors.
130
+ */
131
+ class DataChannelErrorEvent extends Event {
132
+ constructor(data) {
133
+ super('dataChannelError');
134
+ this.data = data;
135
+ }
136
+ }
137
+ exports.DataChannelErrorEvent = DataChannelErrorEvent;
138
+ /**
139
+ * An event that is emitted when the video stream has been initialized.
140
+ */
141
+ class VideoInitializedEvent extends Event {
142
+ constructor() {
143
+ super('videoInitialized');
144
+ }
145
+ }
146
+ exports.VideoInitializedEvent = VideoInitializedEvent;
147
+ /**
148
+ * An event that is emitted when video stream loading starts.
149
+ */
150
+ class StreamLoadingEvent extends Event {
151
+ constructor() {
152
+ super('streamLoading');
153
+ }
154
+ }
155
+ exports.StreamLoadingEvent = StreamLoadingEvent;
156
+ /**
157
+ * An event that is emitted when video stream loading has finished.
158
+ */
159
+ class StreamPreConnectEvent extends Event {
160
+ constructor() {
161
+ super('streamConnect');
162
+ }
163
+ }
164
+ exports.StreamPreConnectEvent = StreamPreConnectEvent;
165
+ /**
166
+ * An event that is emitted when video stream has stopped.
167
+ */
168
+ class StreamPreDisconnectEvent extends Event {
169
+ constructor() {
170
+ super('streamDisconnect');
171
+ }
172
+ }
173
+ exports.StreamPreDisconnectEvent = StreamPreDisconnectEvent;
174
+ /**
175
+ * An event that is emitted when video stream is reconnecting.
176
+ */
177
+ class StreamReconnectEvent extends Event {
178
+ constructor() {
179
+ super('streamReconnect');
180
+ }
181
+ }
182
+ exports.StreamReconnectEvent = StreamReconnectEvent;
183
+ /**
184
+ * An event that is emitted if there are errors loading the video stream.
185
+ */
186
+ class PlayStreamErrorEvent extends Event {
187
+ constructor(data) {
188
+ super('playStreamError');
189
+ this.data = data;
190
+ }
191
+ }
192
+ exports.PlayStreamErrorEvent = PlayStreamErrorEvent;
193
+ /**
194
+ * An event that is emitted before trying to start video playback.
195
+ */
196
+ class PlayStreamEvent extends Event {
197
+ constructor() {
198
+ super('playStream');
199
+ }
200
+ }
201
+ exports.PlayStreamEvent = PlayStreamEvent;
202
+ /**
203
+ * An event that is emitted if the browser rejects video playback. Can happen for example if
204
+ * video auto-play without user interaction is refused by the browser.
205
+ */
206
+ class PlayStreamRejectedEvent extends Event {
207
+ constructor(data) {
208
+ super('playStreamRejected');
209
+ this.data = data;
210
+ }
211
+ }
212
+ exports.PlayStreamRejectedEvent = PlayStreamRejectedEvent;
213
+ /**
214
+ * An event that is emitted when receiving a full FreezeFrame image from UE.
215
+ */
216
+ class LoadFreezeFrameEvent extends Event {
217
+ constructor(data) {
218
+ super('loadFreezeFrame');
219
+ this.data = data;
220
+ }
221
+ }
222
+ exports.LoadFreezeFrameEvent = LoadFreezeFrameEvent;
223
+ /**
224
+ * An event that is emitted when receiving UnfreezeFrame message from UE and video playback is about to be resumed.
225
+ */
226
+ class HideFreezeFrameEvent extends Event {
227
+ constructor() {
228
+ super('hideFreezeFrame');
229
+ }
230
+ }
231
+ exports.HideFreezeFrameEvent = HideFreezeFrameEvent;
232
+ /**
233
+ * An event that is emitted when receiving WebRTC statistics.
234
+ */
235
+ class StatsReceivedEvent extends Event {
236
+ constructor(data) {
237
+ super('statsReceived');
238
+ this.data = data;
239
+ }
240
+ }
241
+ exports.StatsReceivedEvent = StatsReceivedEvent;
242
+ /**
243
+ * An event that is emitted when streamer list changes.
244
+ */
245
+ class StreamerListMessageEvent extends Event {
246
+ constructor(data) {
247
+ super('streamerListMessage');
248
+ this.data = data;
249
+ }
250
+ }
251
+ exports.StreamerListMessageEvent = StreamerListMessageEvent;
252
+ /**
253
+ * An event that is emitted when a subscribed to streamer's id changes.
254
+ */
255
+ class StreamerIDChangedMessageEvent extends Event {
256
+ constructor(data) {
257
+ super('StreamerIDChangedMessage');
258
+ this.data = data;
259
+ }
260
+ }
261
+ exports.StreamerIDChangedMessageEvent = StreamerIDChangedMessageEvent;
262
+ /**
263
+ * An event that is emitted when receiving latency test results.
264
+ */
265
+ class LatencyTestResultEvent extends Event {
266
+ constructor(data) {
267
+ super('latencyTestResult');
268
+ this.data = data;
269
+ }
270
+ }
271
+ exports.LatencyTestResultEvent = LatencyTestResultEvent;
272
+ /**
273
+ * An event that is emitted when receiving data channel latency test response from server.
274
+ * This event is handled by DataChannelLatencyTestController
275
+ */
276
+ class DataChannelLatencyTestResponseEvent extends Event {
277
+ constructor(data) {
278
+ super('dataChannelLatencyTestResponse');
279
+ this.data = data;
280
+ }
281
+ }
282
+ exports.DataChannelLatencyTestResponseEvent = DataChannelLatencyTestResponseEvent;
283
+ /**
284
+ * An event that is emitted when data channel latency test results are ready.
285
+ */
286
+ class DataChannelLatencyTestResultEvent extends Event {
287
+ constructor(data) {
288
+ super('dataChannelLatencyTestResult');
289
+ this.data = data;
290
+ }
291
+ }
292
+ exports.DataChannelLatencyTestResultEvent = DataChannelLatencyTestResultEvent;
293
+ /**
294
+ * An event that is emitted when receiving initial settings from UE.
295
+ */
296
+ class InitialSettingsEvent extends Event {
297
+ constructor(data) {
298
+ super('initialSettings');
299
+ this.data = data;
300
+ }
301
+ }
302
+ exports.InitialSettingsEvent = InitialSettingsEvent;
303
+ /**
304
+ * An event that is emitted when PixelStreaming settings change.
305
+ */
306
+ class SettingsChangedEvent extends Event {
307
+ constructor(data) {
308
+ super('settingsChanged');
309
+ this.data = data;
310
+ }
311
+ }
312
+ exports.SettingsChangedEvent = SettingsChangedEvent;
313
+ /**
314
+ * Event emitted when an XR Session starts
315
+ */
316
+ class XrSessionStartedEvent extends Event {
317
+ constructor() {
318
+ super('xrSessionStarted');
319
+ }
320
+ }
321
+ exports.XrSessionStartedEvent = XrSessionStartedEvent;
322
+ /**
323
+ * Event emitted when an XR Session ends
324
+ */
325
+ class XrSessionEndedEvent extends Event {
326
+ constructor() {
327
+ super('xrSessionEnded');
328
+ }
329
+ }
330
+ exports.XrSessionEndedEvent = XrSessionEndedEvent;
331
+ /**
332
+ * Event emitted when an XR Frame is complete
333
+ */
334
+ class XrFrameEvent extends Event {
335
+ constructor(data) {
336
+ super('xrFrame');
337
+ this.data = data;
338
+ }
339
+ }
340
+ exports.XrFrameEvent = XrFrameEvent;
341
+ /**
342
+ * An event that is emitted when receiving a player count from the signalling server
343
+ */
344
+ class PlayerCountEvent extends Event {
345
+ constructor(data) {
346
+ super('playerCount');
347
+ this.data = data;
348
+ }
349
+ }
350
+ exports.PlayerCountEvent = PlayerCountEvent;
351
+ /**
352
+ * An event that is emitted when the webRTC connections is relayed over TCP.
353
+ */
354
+ class WebRtcTCPRelayDetectedEvent extends Event {
355
+ constructor() {
356
+ super('webRtcTCPRelayDetected');
357
+ }
358
+ }
359
+ exports.WebRtcTCPRelayDetectedEvent = WebRtcTCPRelayDetectedEvent;
360
+ class EventEmitter extends EventTarget {
361
+ /**
362
+ * Dispatch a new event.
363
+ * @param e event
364
+ * @returns
365
+ */
366
+ dispatchEvent(e) {
367
+ return super.dispatchEvent(e);
368
+ }
369
+ /**
370
+ * Register an event handler.
371
+ * @param type event name
372
+ * @param listener event handler function
373
+ */
374
+ addEventListener(type, listener) {
375
+ super.addEventListener(type, listener);
376
+ }
377
+ /**
378
+ * Remove an event handler.
379
+ * @param type event name
380
+ * @param listener event handler function
381
+ */
382
+ removeEventListener(type, listener) {
383
+ super.removeEventListener(type, listener);
384
+ }
385
+ }
386
+ exports.EventEmitter = EventEmitter;
387
+ //# sourceMappingURL=EventEmitter.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"EventEmitter.js","sourceRoot":"","sources":["../../../src/Util/EventEmitter.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,109 @@
1
+ "use strict";
2
+ // Copyright Epic Games, Inc. All Rights Reserved.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.FileTemplate = exports.FileUtil = void 0;
5
+ const lib_pixelstreamingcommon_ue5_5_1 = require("@epicgames-ps/lib-pixelstreamingcommon-ue5.5");
6
+ /**
7
+ * Utility function for populate file information from byte buffers.
8
+ */
9
+ class FileUtil {
10
+ /**
11
+ * Processes a files extension when received over data channel
12
+ * @param view - the file extension data
13
+ */
14
+ static setExtensionFromBytes(view, file) {
15
+ // Reset file if we got a file message and we are not "receiving" it yet
16
+ if (!file.receiving) {
17
+ file.mimetype = '';
18
+ file.extension = '';
19
+ file.receiving = true;
20
+ file.valid = false;
21
+ file.size = 0;
22
+ file.data = [];
23
+ file.timestampStart = new Date().getTime();
24
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Info('Received first chunk of file');
25
+ }
26
+ const extensionAsString = new TextDecoder('utf-16').decode(view.slice(1));
27
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Info(extensionAsString);
28
+ file.extension = extensionAsString;
29
+ }
30
+ /**
31
+ * Processes a files mime type when received over data channel
32
+ * @param view - the file mime type data
33
+ */
34
+ static setMimeTypeFromBytes(view, file) {
35
+ // Reset file if we got a file message and we are not "receiving" it yet
36
+ if (!file.receiving) {
37
+ file.mimetype = '';
38
+ file.extension = '';
39
+ file.receiving = true;
40
+ file.valid = false;
41
+ file.size = 0;
42
+ file.data = [];
43
+ file.timestampStart = new Date().getTime();
44
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Info('Received first chunk of file');
45
+ }
46
+ const mimeAsString = new TextDecoder('utf-16').decode(view.slice(1));
47
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Info(mimeAsString);
48
+ file.mimetype = mimeAsString;
49
+ }
50
+ /**
51
+ * Processes a files contents when received over data channel
52
+ * @param view - the file contents data
53
+ */
54
+ static setContentsFromBytes(view, file) {
55
+ // If we haven't received the initial setup instructions, return
56
+ if (!file.receiving)
57
+ return;
58
+ // Extract the total size of the file (across all chunks)
59
+ file.size = Math.ceil(new DataView(view.slice(1, 5).buffer).getInt32(0, true) /
60
+ 16379 /* The maximum number of payload bits per message*/);
61
+ // Get the file part of the payload
62
+ const fileBytes = view.slice(1 + 4);
63
+ // Append to existing data that holds the file
64
+ file.data.push(fileBytes);
65
+ // Uncomment for debug
66
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Info(`Received file chunk: ${file.data.length}/${file.size}`);
67
+ if (file.data.length === file.size) {
68
+ file.receiving = false;
69
+ file.valid = true;
70
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Info('Received complete file');
71
+ const transferDuration = new Date().getTime() - file.timestampStart;
72
+ const transferBitrate = Math.round((file.size * 16 * 1024) / transferDuration);
73
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Info(`Average transfer bitrate: ${transferBitrate}kb/s over ${transferDuration / 1000} seconds`);
74
+ // File reconstruction
75
+ /**
76
+ * Example code to reconstruct the file
77
+ *
78
+ * This code reconstructs the received data into the original file based on the mime type and extension provided and then downloads the reconstructed file
79
+ */
80
+ const received = new Blob(file.data, { type: file.mimetype });
81
+ const a = document.createElement('a');
82
+ a.setAttribute('href', URL.createObjectURL(received));
83
+ a.setAttribute('download', `transfer.${file.extension}`);
84
+ document.body.append(a);
85
+ // if you are so inclined to make it auto-download, do something like: a.click();
86
+ a.remove();
87
+ }
88
+ else if (file.data.length > file.size) {
89
+ file.receiving = false;
90
+ lib_pixelstreamingcommon_ue5_5_1.Logger.Error(`Received bigger file than advertised: ${file.data.length}/${file.size}`);
91
+ }
92
+ }
93
+ }
94
+ exports.FileUtil = FileUtil;
95
+ /**
96
+ * A class that represents a template for a downloaded file
97
+ */
98
+ class FileTemplate {
99
+ constructor() {
100
+ this.mimetype = '';
101
+ this.extension = '';
102
+ this.receiving = false;
103
+ this.size = 0;
104
+ this.data = [];
105
+ this.valid = false;
106
+ }
107
+ }
108
+ exports.FileTemplate = FileTemplate;
109
+ //# sourceMappingURL=FileUtil.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"FileUtil.js","sourceRoot":"","sources":["../../../src/Util/FileUtil.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,26 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.IURLSearchParams = void 0;
4
+ /**
5
+ * A case insensitive, partial implementation of URLSearchParams
6
+ */
7
+ class IURLSearchParams {
8
+ constructor(search) {
9
+ this._urlParams = {};
10
+ const urlParams = new URLSearchParams(search);
11
+ for (const [name, value] of urlParams) {
12
+ this._urlParams[name.toLowerCase()] = value;
13
+ }
14
+ }
15
+ has(name) {
16
+ return name.toLowerCase() in this._urlParams;
17
+ }
18
+ get(name) {
19
+ if (this.has(name)) {
20
+ return this._urlParams[name.toLowerCase()];
21
+ }
22
+ return null;
23
+ }
24
+ }
25
+ exports.IURLSearchParams = IURLSearchParams;
26
+ //# sourceMappingURL=IURLSearchParams.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"IURLSearchParams.js","sourceRoot":"","sources":["../../../src/Util/IURLSearchParams.ts"],"names":[],"mappings":";;;AAAA;;GAEG;AACH,MAAa,gBAAgB;IAGzB,YAAY,MAAc;QACtB,IAAI,CAAC,UAAU,GAAG,EAAE,CAAC;QACrB,MAAM,SAAS,GAAG,IAAI,eAAe,CAAC,MAAM,CAAC,CAAC;QAC9C,KAAK,MAAM,CAAC,IAAI,EAAE,KAAK,CAAC,IAAI,SAAS,EAAE;YACnC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,GAAG,KAAK,CAAC;SAC/C;IACL,CAAC;IAEM,GAAG,CAAC,IAAY;QACnB,OAAO,IAAI,CAAC,WAAW,EAAE,IAAI,IAAI,CAAC,UAAU,CAAC;IACjD,CAAC;IAEM,GAAG,CAAC,IAAY;QACnB,IAAI,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,EAAE;YAChB,OAAO,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC,WAAW,EAAE,CAAC,CAAC;SAC9C;QACD,OAAO,IAAI,CAAC;IAChB,CAAC;CACJ;AArBD,4CAqBC"}
@@ -0,0 +1,50 @@
1
+ "use strict";
2
+ // Copyright Epic Games, Inc. All Rights Reserved.
3
+ Object.defineProperty(exports, "__esModule", { value: true });
4
+ exports.InputCoordTranslator = void 0;
5
+ /**
6
+ * Converts coordinates from element relative coordinates to values normalized within the value range of a short (and back again)
7
+ */
8
+ class InputCoordTranslator {
9
+ // we dont use a constructor here because the object is created and passed around to various locations
10
+ // possibly before this method is called.
11
+ reconfigure(playerSize, videoSize) {
12
+ const playerAspectRatio = playerSize.height / playerSize.width;
13
+ const videoAspectRatio = videoSize.height / videoSize.width;
14
+ this.playerIsLarger = playerAspectRatio > videoAspectRatio;
15
+ this.playerSize = playerSize;
16
+ this.ratio = this.playerIsLarger
17
+ ? playerAspectRatio / videoAspectRatio
18
+ : videoAspectRatio / playerAspectRatio;
19
+ }
20
+ translateUnsigned(x, y) {
21
+ const normalizedX = this.playerIsLarger
22
+ ? x / this.playerSize.width
23
+ : this.ratio * (x / this.playerSize.width - 0.5) + 0.5;
24
+ const normalizedY = this.playerIsLarger
25
+ ? this.ratio * (y / this.playerSize.height - 0.5) + 0.5
26
+ : y / this.playerSize.height;
27
+ if (normalizedX < 0.0 || normalizedX > 1.0 || normalizedY < 0.0 || normalizedY > 1.0) {
28
+ return { inRange: false, x: 65535, y: 65535 };
29
+ }
30
+ else {
31
+ return { inRange: true, x: normalizedX * 65536, y: normalizedY * 65536 };
32
+ }
33
+ }
34
+ translateSigned(x, y) {
35
+ const normalizedX = this.playerIsLarger
36
+ ? x / (0.5 * this.playerSize.width)
37
+ : (this.ratio * x) / (0.5 * this.playerSize.width);
38
+ const normalizedY = this.playerIsLarger
39
+ ? (this.ratio * y) / (0.5 * this.playerSize.height)
40
+ : y / (0.5 * this.playerSize.height);
41
+ return { x: normalizedX * 32767, y: normalizedY * 32767 };
42
+ }
43
+ untranslateUnsigned(x, y) {
44
+ const normalizedX = this.playerIsLarger ? x / 65536 : (x / 65536 - 0.5) / this.ratio + 0.5;
45
+ const normalizedY = this.playerIsLarger ? (y / 65536 - 0.5) / this.ratio + 0.5 : y / 65536;
46
+ return { x: normalizedX * this.playerSize.width, y: normalizedY * this.playerSize.height };
47
+ }
48
+ }
49
+ exports.InputCoordTranslator = InputCoordTranslator;
50
+ //# sourceMappingURL=InputCoordTranslator.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"InputCoordTranslator.js","sourceRoot":"","sources":["../../../src/Util/InputCoordTranslator.ts"],"names":[],"mappings":";AAAA,kDAAkD;;;AAuBlD;;GAEG;AACH,MAAa,oBAAoB;IAK7B,sGAAsG;IACtG,yCAAyC;IACzC,WAAW,CAAC,UAAoB,EAAE,SAAmB;QACjD,MAAM,iBAAiB,GAAG,UAAU,CAAC,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC;QAC/D,MAAM,gBAAgB,GAAG,SAAS,CAAC,MAAM,GAAG,SAAS,CAAC,KAAK,CAAC;QAC5D,IAAI,CAAC,cAAc,GAAG,iBAAiB,GAAG,gBAAgB,CAAC;QAC3D,IAAI,CAAC,UAAU,GAAG,UAAU,CAAC;QAC7B,IAAI,CAAC,KAAK,GAAG,IAAI,CAAC,cAAc;YAC5B,CAAC,CAAC,iBAAiB,GAAG,gBAAgB;YACtC,CAAC,CAAC,gBAAgB,GAAG,iBAAiB,CAAC;IAC/C,CAAC;IAED,iBAAiB,CAAC,CAAS,EAAE,CAAS;QAClC,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc;YACnC,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK;YAC3B,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,GAAG,GAAG,CAAC,GAAG,GAAG,CAAC;QAC3D,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc;YACnC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,GAAG,GAAG,CAAC,GAAG,GAAG;YACvD,CAAC,CAAC,CAAC,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;QACjC,IAAI,WAAW,GAAG,GAAG,IAAI,WAAW,GAAG,GAAG,IAAI,WAAW,GAAG,GAAG,IAAI,WAAW,GAAG,GAAG,EAAE;YAClF,OAAO,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC,EAAE,KAAK,EAAE,CAAC;SACjD;aAAM;YACH,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,CAAC;SAC5E;IACL,CAAC;IAED,eAAe,CAAC,CAAS,EAAE,CAAS;QAChC,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc;YACnC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC;YACnC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;QACvD,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc;YACnC,CAAC,CAAC,CAAC,IAAI,CAAC,KAAK,GAAG,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC;YACnD,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;QACzC,OAAO,EAAE,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,CAAC,EAAE,WAAW,GAAG,KAAK,EAAE,CAAC;IAC9D,CAAC;IAED,mBAAmB,CAAC,CAAS,EAAE,CAAS;QACpC,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC;QAC3F,MAAM,WAAW,GAAG,IAAI,CAAC,cAAc,CAAC,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,GAAG,GAAG,CAAC,GAAG,IAAI,CAAC,KAAK,GAAG,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC;QAC3F,OAAO,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,KAAK,EAAE,CAAC,EAAE,WAAW,GAAG,IAAI,CAAC,UAAU,CAAC,MAAM,EAAE,CAAC;IAC/F,CAAC;CACJ;AA9CD,oDA8CC"}
@@ -0,0 +1,41 @@
1
+ "use strict";
2
+ Object.defineProperty(exports, "__esModule", { value: true });
3
+ exports.RTCUtils = void 0;
4
+ class RTCUtils {
5
+ static isVideoTransceiver(transceiver) {
6
+ return this.canTransceiverReceiveVideo(transceiver) || this.canTransceiverSendVideo(transceiver);
7
+ }
8
+ static canTransceiverReceiveVideo(transceiver) {
9
+ return (!!transceiver &&
10
+ (transceiver.direction === 'sendrecv' || transceiver.direction === 'recvonly') &&
11
+ transceiver.receiver &&
12
+ transceiver.receiver.track &&
13
+ transceiver.receiver.track.kind === 'video');
14
+ }
15
+ static canTransceiverSendVideo(transceiver) {
16
+ return (!!transceiver &&
17
+ (transceiver.direction === 'sendrecv' || transceiver.direction === 'sendonly') &&
18
+ transceiver.sender &&
19
+ transceiver.sender.track &&
20
+ transceiver.sender.track.kind === 'video');
21
+ }
22
+ static isAudioTransceiver(transceiver) {
23
+ return this.canTransceiverReceiveAudio(transceiver) || this.canTransceiverSendAudio(transceiver);
24
+ }
25
+ static canTransceiverReceiveAudio(transceiver) {
26
+ return (!!transceiver &&
27
+ (transceiver.direction === 'sendrecv' || transceiver.direction === 'recvonly') &&
28
+ transceiver.receiver &&
29
+ transceiver.receiver.track &&
30
+ transceiver.receiver.track.kind === 'audio');
31
+ }
32
+ static canTransceiverSendAudio(transceiver) {
33
+ return (!!transceiver &&
34
+ (transceiver.direction === 'sendrecv' || transceiver.direction === 'sendonly') &&
35
+ transceiver.sender &&
36
+ transceiver.sender.track &&
37
+ transceiver.sender.track.kind === 'audio');
38
+ }
39
+ }
40
+ exports.RTCUtils = RTCUtils;
41
+ //# sourceMappingURL=RTCUtils.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"RTCUtils.js","sourceRoot":"","sources":["../../../src/Util/RTCUtils.ts"],"names":[],"mappings":";;;AAAA,MAAa,QAAQ;IACjB,MAAM,CAAC,kBAAkB,CAAC,WAA0C;QAChE,OAAO,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,CAAC,0BAA0B,CAAC,WAA0C;QACxE,OAAO,CACH,CAAC,CAAC,WAAW;YACb,CAAC,WAAW,CAAC,SAAS,KAAK,UAAU,IAAI,WAAW,CAAC,SAAS,KAAK,UAAU,CAAC;YAC9E,WAAW,CAAC,QAAQ;YACpB,WAAW,CAAC,QAAQ,CAAC,KAAK;YAC1B,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAC9C,CAAC;IACN,CAAC;IAED,MAAM,CAAC,uBAAuB,CAAC,WAA0C;QACrE,OAAO,CACH,CAAC,CAAC,WAAW;YACb,CAAC,WAAW,CAAC,SAAS,KAAK,UAAU,IAAI,WAAW,CAAC,SAAS,KAAK,UAAU,CAAC;YAC9E,WAAW,CAAC,MAAM;YAClB,WAAW,CAAC,MAAM,CAAC,KAAK;YACxB,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAC5C,CAAC;IACN,CAAC;IAED,MAAM,CAAC,kBAAkB,CAAC,WAA0C;QAChE,OAAO,IAAI,CAAC,0BAA0B,CAAC,WAAW,CAAC,IAAI,IAAI,CAAC,uBAAuB,CAAC,WAAW,CAAC,CAAC;IACrG,CAAC;IAED,MAAM,CAAC,0BAA0B,CAAC,WAA0C;QACxE,OAAO,CACH,CAAC,CAAC,WAAW;YACb,CAAC,WAAW,CAAC,SAAS,KAAK,UAAU,IAAI,WAAW,CAAC,SAAS,KAAK,UAAU,CAAC;YAC9E,WAAW,CAAC,QAAQ;YACpB,WAAW,CAAC,QAAQ,CAAC,KAAK;YAC1B,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAC9C,CAAC;IACN,CAAC;IAED,MAAM,CAAC,uBAAuB,CAAC,WAA0C;QACrE,OAAO,CACH,CAAC,CAAC,WAAW;YACb,CAAC,WAAW,CAAC,SAAS,KAAK,UAAU,IAAI,WAAW,CAAC,SAAS,KAAK,UAAU,CAAC;YAC9E,WAAW,CAAC,MAAM;YAClB,WAAW,CAAC,MAAM,CAAC,KAAK;YACxB,WAAW,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,CAC5C,CAAC;IACN,CAAC;CACJ;AAhDD,4BAgDC"}