camstreamerlib 4.0.0-beta.13 → 4.0.0-beta.130

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 (354) hide show
  1. package/README.md +143 -38
  2. package/cjs/CamOverlayAPI.d.ts +560 -336
  3. package/cjs/CamOverlayAPI.js +99 -184
  4. package/cjs/CamScripterAPI.d.ts +41 -17
  5. package/cjs/CamScripterAPI.js +50 -56
  6. package/cjs/CamStreamerAPI.d.ts +3139 -14
  7. package/cjs/CamStreamerAPI.js +151 -52
  8. package/cjs/CamSwitcherAPI.d.ts +155 -42
  9. package/cjs/CamSwitcherAPI.js +134 -189
  10. package/cjs/PlaneTrackerAPI.d.ts +236 -0
  11. package/cjs/PlaneTrackerAPI.js +194 -0
  12. package/cjs/VapixAPI.d.ts +84 -43
  13. package/cjs/VapixAPI.js +312 -216
  14. package/cjs/{CreatePackage.js → bin/CreatePackage.js} +44 -18
  15. package/cjs/errors/errors.d.ts +70 -4
  16. package/cjs/errors/errors.js +140 -7
  17. package/cjs/index.d.ts +20 -8
  18. package/cjs/index.js +28 -12
  19. package/cjs/internal/BasicAPI.d.ts +15 -0
  20. package/cjs/internal/BasicAPI.js +93 -0
  21. package/cjs/internal/ProxyClient.d.ts +8 -9
  22. package/cjs/internal/ProxyClient.js +28 -34
  23. package/cjs/internal/WsEvents.d.ts +38 -0
  24. package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +33 -22
  25. package/cjs/internal/constants.d.ts +1 -0
  26. package/cjs/internal/constants.js +2 -1
  27. package/cjs/internal/convertors.d.ts +6 -0
  28. package/cjs/internal/convertors.js +115 -0
  29. package/cjs/internal/types.d.ts +32 -20
  30. package/cjs/internal/utils.d.ts +1 -3
  31. package/cjs/internal/utils.js +1 -12
  32. package/cjs/internal/versionCompare.d.ts +2 -2
  33. package/cjs/node/CamOverlayDrawingAPI.d.ts +41 -0
  34. package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +28 -20
  35. package/{esm → cjs/node}/CamOverlayPainter/Frame.d.ts +8 -37
  36. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  37. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.d.ts +5 -21
  38. package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
  39. package/cjs/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  40. package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
  41. package/cjs/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  42. package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +13 -13
  43. package/cjs/node/DefaultClient.d.ts +6 -6
  44. package/cjs/node/DefaultClient.js +12 -16
  45. package/cjs/{internal → node}/Digest.js +24 -1
  46. package/cjs/node/Digest.test.js +13 -0
  47. package/cjs/node/HttpRequestSender.d.ts +1 -0
  48. package/cjs/node/HttpRequestSender.js +14 -4
  49. package/cjs/node/HttpServer.d.ts +1 -1
  50. package/cjs/node/HttpServer.js +29 -6
  51. package/cjs/node/TimeZoneDaemon.d.ts +6 -0
  52. package/cjs/node/TimeZoneDaemon.js +29 -0
  53. package/cjs/node/VapixEvents.d.ts +16 -0
  54. package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
  55. package/cjs/node/WsClient.d.ts +9 -18
  56. package/cjs/node/WsClient.js +27 -20
  57. package/cjs/node/events/AxisCameraStationEvents.d.ts +12 -0
  58. package/cjs/{events → node/events}/AxisCameraStationEvents.js +18 -13
  59. package/cjs/node/events/GenetecAgent.d.ts +16 -0
  60. package/cjs/node/events/GenetecAgent.js +124 -0
  61. package/cjs/node/index.d.ts +18 -2
  62. package/cjs/node/index.js +39 -5
  63. package/cjs/{models/CamOverlayAPI/widgetsSchema.d.ts → types/CamOverlayAPI/CamOverlayAPI.d.ts} +2534 -746
  64. package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +131 -0
  65. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.d.ts +15 -15
  66. package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.js +7 -8
  67. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.d.ts +106 -105
  68. package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.js +5 -6
  69. package/{esm/models → cjs/types}/CamOverlayAPI/imagesSchema.d.ts +17 -17
  70. package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
  71. package/cjs/{models → types}/CamOverlayAPI/index.d.ts +2 -4
  72. package/cjs/{models → types}/CamOverlayAPI/index.js +2 -4
  73. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.d.ts +25 -25
  74. package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.js +6 -7
  75. package/{esm/models → cjs/types}/CamOverlayAPI/pipSchema.d.ts +19 -19
  76. package/cjs/{models → types}/CamOverlayAPI/pipSchema.js +5 -6
  77. package/{esm/models → cjs/types}/CamOverlayAPI/ptzCompassSchema.d.ts +16 -13
  78. package/cjs/{models → types}/CamOverlayAPI/ptzCompassSchema.js +5 -5
  79. package/{esm/models → cjs/types}/CamOverlayAPI/ptzSchema.d.ts +26 -26
  80. package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
  81. package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  82. package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
  83. package/cjs/{models → types}/CamOverlayAPI/screenSharingSchema.d.ts +13 -13
  84. package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
  85. package/{esm/models/CamOverlayAPI/widgetCommonSchema.d.ts → cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts} +75 -56
  86. package/cjs/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +33 -18
  87. package/{esm/models → cjs/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +13 -13
  88. package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
  89. package/cjs/types/CamOverlayDrawingAPI.d.ts +48 -0
  90. package/cjs/types/CamOverlayDrawingAPI.js +2 -0
  91. package/cjs/types/CamOverlayPainter.d.ts +76 -0
  92. package/cjs/types/CamOverlayPainter.js +14 -0
  93. package/cjs/types/CamScripterAPI.d.ts +86 -23
  94. package/cjs/types/CamScripterAPI.js +24 -8
  95. package/cjs/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  96. package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
  97. package/cjs/types/CamStreamerAPI/CamStreamerAPI.d.ts +22299 -0
  98. package/cjs/types/CamStreamerAPI/CamStreamerAPI.js +165 -0
  99. package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +501 -0
  100. package/cjs/types/CamStreamerAPI/facebookSchema.js +23 -0
  101. package/cjs/types/CamStreamerAPI/index.d.ts +6 -0
  102. package/cjs/types/CamStreamerAPI/index.js +22 -0
  103. package/cjs/types/{CamStreamerAPI.d.ts → CamStreamerAPI/oldStreamSchema.d.ts} +104 -35
  104. package/cjs/types/CamStreamerAPI/oldStreamSchema.js +53 -0
  105. package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +500 -0
  106. package/cjs/types/CamStreamerAPI/streamCommonTypes.js +119 -0
  107. package/cjs/types/CamStreamerAPI/streamsSchema.d.ts +7379 -0
  108. package/cjs/types/CamStreamerAPI/streamsSchema.js +59 -0
  109. package/cjs/types/CamStreamerAPI/windySchema.d.ts +435 -0
  110. package/cjs/types/CamStreamerAPI/windySchema.js +11 -0
  111. package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +468 -0
  112. package/cjs/types/CamStreamerAPI/youtubeSchema.js +22 -0
  113. package/cjs/types/CamSwitcherAPI.d.ts +181 -121
  114. package/cjs/types/CamSwitcherAPI.js +31 -1
  115. package/cjs/{events → types}/GenetecAgent.d.ts +47 -47
  116. package/cjs/types/GenetecAgent.js +31 -0
  117. package/cjs/types/PlaneTrackerAPI.d.ts +980 -0
  118. package/cjs/types/PlaneTrackerAPI.js +333 -0
  119. package/cjs/types/VapixAPI.d.ts +255 -15
  120. package/cjs/types/VapixAPI.js +66 -3
  121. package/cjs/types/VapixEvents.d.ts +15 -0
  122. package/cjs/types/VapixEvents.js +2 -0
  123. package/cjs/types/common.d.ts +43 -3
  124. package/cjs/types/common.js +17 -2
  125. package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
  126. package/cjs/types/ws/CamOverlayEvents.js +19 -0
  127. package/cjs/types/ws/CamStreamerEvents.d.ts +282 -0
  128. package/cjs/types/ws/CamStreamerEvents.js +36 -0
  129. package/cjs/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  130. package/cjs/types/ws/PlaneTrackerEvents.js +207 -0
  131. package/cjs/web/DefaultClient.d.ts +7 -5
  132. package/cjs/web/DefaultClient.js +25 -11
  133. package/cjs/web/WsClient.d.ts +9 -5
  134. package/cjs/web/WsClient.js +16 -18
  135. package/cjs/ws/CamOverlayEvents.d.ts +8 -0
  136. package/cjs/ws/CamOverlayEvents.js +24 -0
  137. package/cjs/ws/CamStreamerEvents.d.ts +8 -0
  138. package/cjs/ws/CamStreamerEvents.js +24 -0
  139. package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
  140. package/cjs/ws/CamSwitcherEvents.js +24 -0
  141. package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
  142. package/cjs/ws/PlaneTrackerEvents.js +30 -0
  143. package/esm/CamOverlayAPI.js +99 -184
  144. package/esm/CamScripterAPI.js +51 -57
  145. package/esm/CamStreamerAPI.js +149 -51
  146. package/esm/CamSwitcherAPI.js +137 -192
  147. package/esm/PlaneTrackerAPI.js +190 -0
  148. package/esm/VapixAPI.js +314 -218
  149. package/esm/{CreatePackage.js → bin/CreatePackage.js} +16 -16
  150. package/esm/errors/errors.js +122 -6
  151. package/esm/index.js +20 -8
  152. package/esm/internal/BasicAPI.js +89 -0
  153. package/esm/internal/ProxyClient.js +28 -34
  154. package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +31 -20
  155. package/esm/internal/constants.js +1 -0
  156. package/esm/internal/convertors.js +108 -0
  157. package/esm/internal/utils.js +0 -9
  158. package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +26 -18
  159. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
  160. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
  161. package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
  162. package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
  163. package/esm/node/DefaultClient.js +12 -16
  164. package/esm/node/Digest.test.js +11 -0
  165. package/esm/node/HttpRequestSender.js +14 -4
  166. package/esm/node/HttpServer.js +1 -1
  167. package/esm/node/TimeZoneDaemon.js +25 -0
  168. package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
  169. package/esm/node/WsClient.js +22 -15
  170. package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
  171. package/esm/node/events/GenetecAgent.js +120 -0
  172. package/esm/node/index.js +18 -2
  173. package/esm/types/CamOverlayAPI/CamOverlayAPI.js +110 -0
  174. package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.js +3 -4
  175. package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.js +3 -4
  176. package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
  177. package/esm/{models → types}/CamOverlayAPI/index.js +2 -4
  178. package/esm/{models → types}/CamOverlayAPI/infotickerSchema.js +3 -4
  179. package/esm/{models → types}/CamOverlayAPI/pipSchema.js +4 -5
  180. package/esm/{models → types}/CamOverlayAPI/ptzCompassSchema.js +4 -4
  181. package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
  182. package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
  183. package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
  184. package/esm/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +32 -17
  185. package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
  186. package/esm/types/CamOverlayDrawingAPI.js +1 -0
  187. package/esm/types/CamOverlayPainter.js +11 -0
  188. package/esm/types/CamScripterAPI.js +23 -7
  189. package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
  190. package/esm/types/CamStreamerAPI/CamStreamerAPI.js +142 -0
  191. package/esm/types/CamStreamerAPI/facebookSchema.js +17 -0
  192. package/esm/types/CamStreamerAPI/index.js +6 -0
  193. package/esm/types/CamStreamerAPI/oldStreamSchema.js +50 -0
  194. package/esm/types/CamStreamerAPI/streamCommonTypes.js +116 -0
  195. package/esm/types/CamStreamerAPI/streamsSchema.js +53 -0
  196. package/esm/types/CamStreamerAPI/windySchema.js +5 -0
  197. package/esm/types/CamStreamerAPI/youtubeSchema.js +16 -0
  198. package/esm/types/CamSwitcherAPI.js +31 -1
  199. package/esm/types/GenetecAgent.js +28 -0
  200. package/esm/types/PlaneTrackerAPI.js +330 -0
  201. package/esm/types/VapixAPI.js +65 -2
  202. package/esm/types/VapixEvents.js +1 -0
  203. package/esm/types/common.js +16 -1
  204. package/esm/types/ws/CamOverlayEvents.js +16 -0
  205. package/esm/types/ws/CamStreamerEvents.js +33 -0
  206. package/esm/types/ws/PlaneTrackerEvents.js +204 -0
  207. package/esm/web/DefaultClient.js +25 -11
  208. package/esm/web/WsClient.js +16 -18
  209. package/esm/ws/CamOverlayEvents.js +20 -0
  210. package/esm/ws/CamStreamerEvents.js +20 -0
  211. package/esm/ws/CamSwitcherEvents.js +20 -0
  212. package/esm/ws/PlaneTrackerEvents.js +26 -0
  213. package/package.json +43 -9
  214. package/{esm → types}/CamOverlayAPI.d.ts +560 -336
  215. package/types/CamScripterAPI.d.ts +43 -0
  216. package/types/CamStreamerAPI.d.ts +3141 -0
  217. package/types/CamSwitcherAPI.d.ts +165 -0
  218. package/types/PlaneTrackerAPI.d.ts +236 -0
  219. package/types/VapixAPI.d.ts +119 -0
  220. package/types/bin/CreatePackage.d.ts +1 -0
  221. package/types/errors/errors.d.ts +103 -0
  222. package/types/index.d.ts +28 -0
  223. package/types/internal/BasicAPI.d.ts +15 -0
  224. package/types/internal/ProxyClient.d.ts +10 -0
  225. package/types/internal/WsEvents.d.ts +38 -0
  226. package/{esm → types}/internal/constants.d.ts +1 -0
  227. package/types/internal/convertors.d.ts +6 -0
  228. package/types/internal/types.d.ts +47 -0
  229. package/{esm → types}/internal/utils.d.ts +1 -3
  230. package/{esm → types}/internal/versionCompare.d.ts +2 -2
  231. package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
  232. package/{cjs → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
  233. package/{esm → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
  234. package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
  235. package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
  236. package/types/node/DefaultClient.d.ts +16 -0
  237. package/types/node/Digest.test.d.ts +1 -0
  238. package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
  239. package/{esm → types}/node/HttpServer.d.ts +1 -1
  240. package/types/node/TimeZoneDaemon.d.ts +6 -0
  241. package/types/node/VapixEvents.d.ts +16 -0
  242. package/types/node/WsClient.d.ts +30 -0
  243. package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
  244. package/types/node/events/GenetecAgent.d.ts +16 -0
  245. package/types/node/index.d.ts +18 -0
  246. package/{esm/models/CamOverlayAPI/widgetsSchema.d.ts → types/types/CamOverlayAPI/CamOverlayAPI.d.ts} +2534 -746
  247. package/{esm/models → types/types}/CamOverlayAPI/accuweatherSchema.d.ts +15 -15
  248. package/{esm/models → types/types}/CamOverlayAPI/customGraphicsSchema.d.ts +106 -105
  249. package/{cjs/models → types/types}/CamOverlayAPI/imagesSchema.d.ts +17 -17
  250. package/{esm/models → types/types}/CamOverlayAPI/index.d.ts +2 -4
  251. package/{esm/models → types/types}/CamOverlayAPI/infotickerSchema.d.ts +25 -25
  252. package/{cjs/models → types/types}/CamOverlayAPI/pipSchema.d.ts +19 -19
  253. package/{cjs/models → types/types}/CamOverlayAPI/ptzCompassSchema.d.ts +16 -13
  254. package/{cjs/models → types/types}/CamOverlayAPI/ptzSchema.d.ts +26 -26
  255. package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
  256. package/{esm/models → types/types}/CamOverlayAPI/screenSharingSchema.d.ts +13 -13
  257. package/{cjs/models/CamOverlayAPI/widgetCommonSchema.d.ts → types/types/CamOverlayAPI/serviceCommonTypes.d.ts} +75 -56
  258. package/{cjs/models → types/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +13 -13
  259. package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
  260. package/types/types/CamOverlayPainter.d.ts +76 -0
  261. package/types/types/CamScripterAPI.d.ts +130 -0
  262. package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
  263. package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +22299 -0
  264. package/types/types/CamStreamerAPI/facebookSchema.d.ts +501 -0
  265. package/types/types/CamStreamerAPI/index.d.ts +6 -0
  266. package/{esm/types/CamStreamerAPI.d.ts → types/types/CamStreamerAPI/oldStreamSchema.d.ts} +104 -35
  267. package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +500 -0
  268. package/types/types/CamStreamerAPI/streamsSchema.d.ts +7379 -0
  269. package/types/types/CamStreamerAPI/windySchema.d.ts +435 -0
  270. package/types/types/CamStreamerAPI/youtubeSchema.d.ts +468 -0
  271. package/{esm → types}/types/CamSwitcherAPI.d.ts +181 -121
  272. package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
  273. package/types/types/PlaneTrackerAPI.d.ts +980 -0
  274. package/{esm → types}/types/VapixAPI.d.ts +255 -15
  275. package/types/types/VapixEvents.d.ts +15 -0
  276. package/types/types/common.d.ts +77 -0
  277. package/types/types/ws/CamOverlayEvents.d.ts +88 -0
  278. package/types/types/ws/CamStreamerEvents.d.ts +282 -0
  279. package/types/types/ws/PlaneTrackerEvents.d.ts +1703 -0
  280. package/types/web/DefaultClient.d.ts +8 -0
  281. package/types/web/WsClient.d.ts +17 -0
  282. package/types/ws/CamOverlayEvents.d.ts +8 -0
  283. package/types/ws/CamStreamerEvents.d.ts +8 -0
  284. package/types/ws/CamSwitcherEvents.d.ts +8 -0
  285. package/types/ws/PlaneTrackerEvents.d.ts +9 -0
  286. package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
  287. package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
  288. package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
  289. package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  290. package/cjs/CamSwitcherEvents.d.ts +0 -18
  291. package/cjs/VapixEvents.d.ts +0 -43
  292. package/cjs/events/AxisCameraStationEvents.d.ts +0 -10
  293. package/cjs/events/GenetecAgent.js +0 -123
  294. package/cjs/models/CamOverlayAPI/constants.d.ts +0 -11
  295. package/cjs/models/CamOverlayAPI/constants.js +0 -14
  296. package/cjs/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  297. package/cjs/models/CamOverlayAPI/fileSchema.js +0 -17
  298. package/cjs/models/CamOverlayAPI/imagesSchema.js +0 -10
  299. package/cjs/models/CamOverlayAPI/ptzSchema.js +0 -13
  300. package/cjs/models/CamOverlayAPI/screenSharingSchema.js +0 -9
  301. package/cjs/models/CamOverlayAPI/webCameraSharingSchema.js +0 -9
  302. package/cjs/models/CamOverlayAPI/widgetsSchema.js +0 -27
  303. package/cjs/node/WsEventClient.d.ts +0 -13
  304. package/cjs/node/WsEventClient.js +0 -22
  305. package/cjs/types/CamOverlayAPI.d.ts +0 -328
  306. package/cjs/types/CamOverlayAPI.js +0 -26
  307. package/cjs/types/CamStreamerAPI.js +0 -28
  308. package/esm/CamOverlayDrawingAPI.d.ts +0 -86
  309. package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
  310. package/esm/CamScripterAPI.d.ts +0 -19
  311. package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
  312. package/esm/CamStreamerAPI.d.ts +0 -16
  313. package/esm/CamSwitcherAPI.d.ts +0 -52
  314. package/esm/CamSwitcherEvents.d.ts +0 -18
  315. package/esm/VapixAPI.d.ts +0 -78
  316. package/esm/VapixEvents.d.ts +0 -43
  317. package/esm/errors/errors.d.ts +0 -37
  318. package/esm/events/AxisCameraStationEvents.d.ts +0 -10
  319. package/esm/events/GenetecAgent.js +0 -119
  320. package/esm/index.d.ts +0 -16
  321. package/esm/internal/ProxyClient.d.ts +0 -11
  322. package/esm/internal/types.d.ts +0 -35
  323. package/esm/models/CamOverlayAPI/constants.d.ts +0 -11
  324. package/esm/models/CamOverlayAPI/constants.js +0 -11
  325. package/esm/models/CamOverlayAPI/fileSchema.d.ts +0 -28
  326. package/esm/models/CamOverlayAPI/fileSchema.js +0 -14
  327. package/esm/models/CamOverlayAPI/imagesSchema.js +0 -7
  328. package/esm/models/CamOverlayAPI/ptzSchema.js +0 -10
  329. package/esm/models/CamOverlayAPI/screenSharingSchema.js +0 -6
  330. package/esm/models/CamOverlayAPI/webCameraSharingSchema.js +0 -6
  331. package/esm/models/CamOverlayAPI/widgetsSchema.js +0 -24
  332. package/esm/node/DefaultClient.d.ts +0 -16
  333. package/esm/node/WsClient.d.ts +0 -39
  334. package/esm/node/WsEventClient.d.ts +0 -13
  335. package/esm/node/WsEventClient.js +0 -18
  336. package/esm/types/CamOverlayAPI.d.ts +0 -328
  337. package/esm/types/CamOverlayAPI.js +0 -14
  338. package/esm/types/CamScripterAPI.d.ts +0 -67
  339. package/esm/types/CamStreamerAPI.js +0 -25
  340. package/esm/types/common.d.ts +0 -37
  341. package/esm/web/DefaultClient.d.ts +0 -6
  342. package/esm/web/WsClient.d.ts +0 -13
  343. package/esm/web/index.d.ts +0 -2
  344. package/cjs/{CreatePackage.d.ts → bin/CreatePackage.d.ts} +0 -0
  345. package/cjs/{internal → node}/Digest.d.ts +0 -0
  346. package/{esm/CreatePackage.d.ts → cjs/node/Digest.test.d.ts} +0 -0
  347. package/{esm/types → cjs/types/ws}/CamSwitcherEvents.d.ts +8 -8
  348. package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  349. package/esm/{internal → node}/Digest.js +0 -0
  350. package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
  351. package/{esm → types}/internal/transformers.d.ts +0 -0
  352. package/{esm/internal → types/node}/Digest.d.ts +0 -0
  353. package/{cjs/types → types/types/ws}/CamSwitcherEvents.d.ts +8 -8
  354. /package/{esm/node → types/web}/index.d.ts +0 -0
@@ -3,126 +3,147 @@ Object.defineProperty(exports, "__esModule", { value: true });
3
3
  exports.CamSwitcherAPI = void 0;
4
4
  const zod_1 = require("zod");
5
5
  const errors_1 = require("./errors/errors");
6
+ const convertors_1 = require("./internal/convertors");
6
7
  const utils_1 = require("./internal/utils");
7
8
  const CamSwitcherAPI_1 = require("./types/CamSwitcherAPI");
8
9
  const common_1 = require("./types/common");
9
10
  const VapixAPI_1 = require("./VapixAPI");
10
- const versionCompare_1 = require("./internal/versionCompare");
11
- const constants_1 = require("./internal/constants");
12
- const baseUrl = '/local/camswitcher/api';
13
- class CamSwitcherAPI {
14
- client;
11
+ const BasicAPI_1 = require("./internal/BasicAPI");
12
+ const BASE_PATH = '/local/camswitcher/api';
13
+ class CamSwitcherAPI extends BasicAPI_1.BasicAPI {
15
14
  CustomFormData;
16
15
  vapixAgent;
17
16
  constructor(client, CustomFormData = FormData) {
18
- this.client = client;
17
+ super(client);
19
18
  this.CustomFormData = CustomFormData;
20
- this.vapixAgent = new VapixAPI_1.VapixAPI(client, () => '');
21
- }
22
- static getProxyUrlPath = () => `${baseUrl}/proxy.cgi`;
23
- static getWsEventsUrlPath = () => `/local/camswitcher/events`;
24
- static getClipPreviewUrlPath = (id, storage) => `${baseUrl}/clip_preview.cgi?clip_name=${id}&storage=${storage}`;
25
- async generateSilence(sampleRate, channels) {
26
- await this.client.get(`${baseUrl}/generate_silence.cgi`, {
27
- sample_rate: sampleRate.toString(),
28
- channels,
19
+ this.vapixAgent = new VapixAPI_1.VapixAPI(client);
20
+ }
21
+ static getProxyPath = () => `${BASE_PATH}/proxy.cgi`;
22
+ static getWsEventsPath = () => `/local/camswitcher/events`;
23
+ static getClipPreviewPath = (clipId, storage) => `${BASE_PATH}/clip_preview.cgi?clip_name=${clipId}&storage=${storage}`;
24
+ async checkAPIAvailable(options) {
25
+ await this._getJson(`${BASE_PATH}/api_check.cgi`, undefined, options);
26
+ }
27
+ async checkCameraTime(options) {
28
+ const res = await this._getJson(`${BASE_PATH}/camera_time.cgi`, undefined, options);
29
+ return zod_1.z.boolean().parse(res.data);
30
+ }
31
+ async getNetworkCameraList(options) {
32
+ const res = await this._getJson(`${BASE_PATH}/network_camera_list.cgi`, undefined, options);
33
+ return common_1.networkCameraListSchema.parse(res.data);
34
+ }
35
+ async generateSilence(sampleRate, channels, options) {
36
+ const agent = this.getClient(options?.proxyParams);
37
+ await agent.get({
38
+ path: `${BASE_PATH}/generate_silence.cgi`,
39
+ parameters: {
40
+ sample_rate: sampleRate.toString(),
41
+ channels,
42
+ },
43
+ timeout: options?.timeout,
29
44
  });
30
45
  }
31
- async checkCameraTime() {
32
- const data = await this.get(`${baseUrl}/camera_time.cgi`);
33
- return zod_1.z.boolean().parse(data);
34
- }
35
- async getIpListFromNetworkCheck() {
36
- const data = await this.get(`${baseUrl}/network_camera_list.cgi`);
37
- return common_1.networkCameraListSchema.parse(data);
38
- }
39
- async getMaxFps(source) {
40
- const data = await this.get(`${baseUrl}/get_max_framerate.cgi`, {
41
- video_source: source.toString(),
42
- });
43
- return zod_1.z.number().parse(data);
46
+ async getMaxFps(source, options) {
47
+ const res = await this._getJson(`${BASE_PATH}/get_max_framerate.cgi`, {
48
+ video_source: source,
49
+ }, options);
50
+ return zod_1.z.number().parse(res.data);
44
51
  }
45
- async getStorageInfo() {
46
- const data = await this.get(`${baseUrl}/get_storage.cgi`);
47
- return CamSwitcherAPI_1.storageInfoListSchema.parse(data);
52
+ async getStorageInfo(options) {
53
+ const res = await this._getJson(`${BASE_PATH}/get_storage.cgi`, undefined, options);
54
+ return CamSwitcherAPI_1.storageInfoListSchema.parse(res.data);
48
55
  }
49
- async wsAuthorization() {
50
- const data = await this.get(`${baseUrl}/ws_authorization.cgi`);
51
- return zod_1.z.string().parse(data);
56
+ async wsAuthorization(options) {
57
+ const res = await this._getJson(`${BASE_PATH}/ws_authorization.cgi`, undefined, options);
58
+ return zod_1.z.string().parse(res.data);
52
59
  }
53
- async getOutputInfo() {
54
- const data = await this.get(`${baseUrl}/output_info.cgi`);
55
- return CamSwitcherAPI_1.outputInfoSchema.parse(data);
60
+ async getOutputInfo(options) {
61
+ const res = await this._getJson(`${BASE_PATH}/output_info.cgi`, undefined, options);
62
+ return CamSwitcherAPI_1.outputInfoSchema.parse(res.data);
56
63
  }
57
- async getAudioPushInfo() {
58
- const data = await this.get(`${baseUrl}/audio_push_info.cgi`);
59
- return CamSwitcherAPI_1.audioPushInfoSchema.parse(data);
64
+ async getAudioPushInfo(options) {
65
+ const res = await this._getJson(`${BASE_PATH}/audio_push_info.cgi`, undefined, options);
66
+ return CamSwitcherAPI_1.audioPushInfoSchema.parse(res.data);
60
67
  }
61
- async getStreamSaveList() {
62
- const data = await this.get(`${baseUrl}/streams.cgi`, { action: 'get' });
63
- return CamSwitcherAPI_1.streamSaveLoadSchema.parse(data);
68
+ async getStreamSaveList(options) {
69
+ const res = await this._getJson(`${BASE_PATH}/streams.cgi`, { action: 'get' }, options);
70
+ return CamSwitcherAPI_1.streamSaveLoadSchema.parse(res.data);
64
71
  }
65
- async getClipSaveList() {
66
- const data = await this.get(`${baseUrl}/clips.cgi`, { action: 'get' });
67
- return CamSwitcherAPI_1.clipSaveLoadSchema.parse(data);
72
+ async getClipSaveList(options) {
73
+ const res = await this._getJson(`${BASE_PATH}/clips.cgi`, { action: 'get' }, options);
74
+ return CamSwitcherAPI_1.clipSaveLoadSchema.parse(res.data);
68
75
  }
69
- async getPlaylistSaveList() {
70
- const data = await this.get(`${baseUrl}/playlists.cgi`, { action: 'get' });
71
- return CamSwitcherAPI_1.playlistSaveLoadSchema.parse(data);
76
+ async getPlaylistSaveList(options) {
77
+ const res = await this._getJson(`${BASE_PATH}/playlists.cgi`, { action: 'get' }, options);
78
+ return CamSwitcherAPI_1.playlistSaveLoadSchema.parse(res.data);
72
79
  }
73
- async getTrackerSaveList() {
74
- const data = await this.get(`${baseUrl}/trackers.cgi`, { action: 'get' });
75
- return CamSwitcherAPI_1.trackerSaveLoadSchema.parse(data);
80
+ async getTrackerSaveList(options) {
81
+ const res = await this._getJson(`${BASE_PATH}/trackers.cgi`, { action: 'get' }, options);
82
+ return CamSwitcherAPI_1.trackerSaveLoadSchema.parse(res.data);
76
83
  }
77
- async setStreamSaveList(data) {
78
- return await this.set(`${baseUrl}/streams.cgi`, data, { action: 'set' });
84
+ async setStreamSaveList(data, options) {
85
+ await this._post(`${BASE_PATH}/streams.cgi`, JSON.stringify(data), { action: 'set' }, options);
79
86
  }
80
- async setClipSaveList(data) {
81
- return await this.set(`${baseUrl}/clips.cgi`, data, { action: 'set' });
87
+ async setClipSaveList(data, options) {
88
+ await this._post(`${BASE_PATH}/clips.cgi`, JSON.stringify(data), { action: 'set' }, options);
82
89
  }
83
- async setPlaylistSaveList(data) {
84
- return await this.set(`${baseUrl}/playlists.cgi`, data, { action: 'set' });
90
+ async setPlaylistSaveList(data, options) {
91
+ await this._post(`${BASE_PATH}/playlists.cgi`, JSON.stringify(data), { action: 'set' }, options);
85
92
  }
86
- async setTrackerSaveList(data) {
87
- return await this.set(`${baseUrl}/trackers.cgi`, data, { action: 'set' });
93
+ async setTrackerSaveList(data, options) {
94
+ await this._post(`${BASE_PATH}/trackers.cgi`, JSON.stringify(data), { action: 'set' }, options);
88
95
  }
89
- async playlistSwitch(playlistName) {
90
- await this.get(`${baseUrl}/playlist_switch.cgi?playlist_name=${playlistName}`);
96
+ async playlistSwitch(playlistName, options) {
97
+ await this._getJson(`${BASE_PATH}/playlist_switch.cgi`, { playlist_name: playlistName }, options);
91
98
  }
92
- async playlistQueuePush(playlistName) {
93
- await this.get(`${baseUrl}/playlist_queue_push.cgi?playlist_name=${playlistName}`);
99
+ async playlistQueuePush(playlistName, options) {
100
+ await this._getJson(`${BASE_PATH}/playlist_queue_push.cgi`, { playlist_name: playlistName }, options);
94
101
  }
95
- async playlistQueueClear() {
96
- await this.get(`${baseUrl}/playlist_queue_clear.cgi`);
102
+ async playlistQueueClear(options) {
103
+ await this._getJson(`${BASE_PATH}/playlist_queue_clear.cgi`, undefined, options);
97
104
  }
98
- async playlistQueueList() {
99
- const data = await this.get(`${baseUrl}/playlist_queue_list.cgi`);
100
- return CamSwitcherAPI_1.playlistQueueSchema.parse(data).playlistQueueList;
105
+ async playlistQueueList(options) {
106
+ const res = await this._getJson(`${BASE_PATH}/playlist_queue_list.cgi`, undefined, options);
107
+ return CamSwitcherAPI_1.playlistQueueSchema.parse(res.data).playlistQueueList;
101
108
  }
102
- async playlistQueuePlayNext() {
103
- await this.get(`${baseUrl}/playlist_queue_play_next.cgi`);
109
+ async playlistQueuePlayNext(options) {
110
+ await this._getJson(`${BASE_PATH}/playlist_queue_play_next.cgi`, undefined, options);
104
111
  }
105
- async addNewClip(file, clipType, storage, id, fileName) {
112
+ async addNewClip(file, clipType, storage, clipId, fileName, options) {
113
+ const path = `${BASE_PATH}/clip_upload.cgi`;
106
114
  const formData = new this.CustomFormData();
107
- formData.append('clip_name', id);
115
+ formData.append('clip_name', clipId);
108
116
  formData.append('clip_type', clipType);
109
117
  formData.append('file', file, fileName);
110
- const path = `${baseUrl}/clip_upload.cgi?storage=${storage}`;
111
- const res = await this.client.post(path, formData);
118
+ const agent = this.getClient(options?.proxyParams);
119
+ const res = await agent.post({
120
+ path,
121
+ data: formData,
122
+ parameters: {
123
+ storage: storage,
124
+ },
125
+ timeout: options?.timeout,
126
+ });
112
127
  const output = (await res.json());
113
128
  if (output.status !== 200) {
114
129
  throw new errors_1.AddNewClipError(output.message);
115
130
  }
116
131
  }
117
- removeClip(id, storage) {
118
- return this.get(`${baseUrl}/clip_remove.cgi`, { clip_name: id, storage });
132
+ async removeClip(clipId, storage, options) {
133
+ await this._getJson(`${BASE_PATH}/clip_remove.cgi`, { clip_name: clipId, storage }, options);
119
134
  }
120
- async getClipList() {
121
- const data = await this.get(`${baseUrl}/clip_list.cgi`);
122
- return CamSwitcherAPI_1.clipListSchema.parse(data).clip_list;
135
+ async getClipList(options) {
136
+ const res = await this._getJson(`${BASE_PATH}/clip_list.cgi`, undefined, options);
137
+ return CamSwitcherAPI_1.clipListSchema.parse(res.data).clip_list;
123
138
  }
124
- setCamSwitchOptions(data, cameraFWVersion) {
125
- const bitrateVapixParams = parseBitrateOptionsToBitrateVapixParams(cameraFWVersion, data.bitrateMode, data);
139
+ setCamSwitchOptions(data, cameraFWVersion, options) {
140
+ const bitrateData = {
141
+ bitrateMode: data.bitrateMode,
142
+ maximumBitRate: data.maximumBitRate,
143
+ retentionTime: data.retentionTime,
144
+ bitRateLimit: data.bitRateLimit,
145
+ };
146
+ const bitrateVapixParams = (0, convertors_1.parseBitrateOptionsToVapixParams)(cameraFWVersion, data.bitrateMode, bitrateData);
126
147
  const saveData = {
127
148
  video: {
128
149
  resolution: data.resolution,
@@ -139,9 +160,9 @@ class CamSwitcherAPI {
139
160
  },
140
161
  keyboard: data.keyboard,
141
162
  };
142
- return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SETTINGS, saveData);
163
+ return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SETTINGS, saveData, options);
143
164
  }
144
- setGlobalAudioSettings(settings) {
165
+ setGlobalAudioSettings(settings, options) {
145
166
  let acceptedType = 'NONE';
146
167
  if (settings.type === 'source' && settings.source) {
147
168
  if ((0, utils_1.isClip)(settings.source)) {
@@ -157,9 +178,9 @@ class CamSwitcherAPI {
157
178
  clip_name: settings.source,
158
179
  storage: settings.storage,
159
180
  };
160
- return this.setParamFromCameraJSON(CSW_PARAM_NAMES.MASTER_AUDIO, data);
181
+ return this.setParamFromCameraJSON(CSW_PARAM_NAMES.MASTER_AUDIO, data, options);
161
182
  }
162
- setSecondaryAudioSettings(settings) {
183
+ setSecondaryAudioSettings(settings, options) {
163
184
  const data = {
164
185
  type: settings.type,
165
186
  stream_name: settings.streamName ?? '',
@@ -168,24 +189,24 @@ class CamSwitcherAPI {
168
189
  secondary_audio_level: settings.secondaryAudioLevel,
169
190
  master_audio_level: settings.masterAudioLevel,
170
191
  };
171
- return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SECONDARY_AUDIO, data);
192
+ return this.setParamFromCameraJSON(CSW_PARAM_NAMES.SECONDARY_AUDIO, data, options);
172
193
  }
173
- setDefaultPlaylist(id) {
174
- const value = JSON.stringify({ default_playlist_id: id });
194
+ setDefaultPlaylist(playlistId, options) {
195
+ const value = JSON.stringify({ default_playlist_id: playlistId });
175
196
  return this.vapixAgent.setParameter({
176
197
  [CSW_PARAM_NAMES.DEFAULT_PLAYLIST]: value,
177
- }, null);
198
+ }, options);
178
199
  }
179
- setPermanentRtspUrlToken(token) {
180
- return this.vapixAgent.setParameter({ [CSW_PARAM_NAMES.RTSP_TOKEN]: token }, null);
200
+ setPermanentRtspUrlToken(token, options) {
201
+ return this.vapixAgent.setParameter({ [CSW_PARAM_NAMES.RTSP_TOKEN]: token }, options);
181
202
  }
182
- async getCamSwitchOptions() {
183
- const saveData = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SETTINGS);
203
+ async getCamSwitchOptions(options) {
204
+ const saveData = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SETTINGS, options);
184
205
  if ((0, utils_1.isNullish)(saveData.video)) {
185
206
  return saveData;
186
207
  }
187
208
  if (!(0, utils_1.isNullish)(saveData.video?.bitrateVapixParams)) {
188
- const bitrateOptions = parseVapixParamsToBitrateOptions(saveData.video.bitrateVapixParams);
209
+ const bitrateOptions = (0, convertors_1.parseVapixParamsToBitrateOptions)(saveData.video.bitrateVapixParams);
189
210
  saveData.video.bitrateMode = bitrateOptions.bitrateMode;
190
211
  saveData.video.maximumBitRate = bitrateOptions.maximumBitRate;
191
212
  saveData.video.retentionTime = bitrateOptions.retentionTime;
@@ -205,12 +226,12 @@ class CamSwitcherAPI {
205
226
  keyboard: saveData.keyboard,
206
227
  };
207
228
  }
208
- async getGlobalAudioSettings() {
229
+ async getGlobalAudioSettings(options) {
209
230
  const settings = {
210
231
  type: 'fromSource',
211
232
  source: 'fromSource',
212
233
  };
213
- const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.MASTER_AUDIO);
234
+ const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.MASTER_AUDIO, options);
214
235
  if (res.type === 'STREAM') {
215
236
  settings.type = 'source';
216
237
  settings.source = res.stream_name;
@@ -220,52 +241,35 @@ class CamSwitcherAPI {
220
241
  settings.source = res.clip_name;
221
242
  settings.storage = res.storage;
222
243
  }
223
- return settings;
244
+ return CamSwitcherAPI_1.globalAudioSettingsSchema.parse(settings);
224
245
  }
225
- async getSecondaryAudioSettings() {
226
- const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SECONDARY_AUDIO);
246
+ async getSecondaryAudioSettings(options) {
247
+ const res = await this.getParamFromCameraAndJSONParse(CSW_PARAM_NAMES.SECONDARY_AUDIO, options);
227
248
  const settings = {
228
249
  type: res.type ?? 'NONE',
229
250
  streamName: res.stream_name,
230
251
  clipName: res.clip_name,
231
- storage: res.storage,
252
+ storage: res.storage ?? 'SD_DISK',
232
253
  secondaryAudioLevel: res.secondary_audio_level ?? 1,
233
254
  masterAudioLevel: res.master_audio_level ?? 1,
234
255
  };
235
- return settings;
256
+ return CamSwitcherAPI_1.secondaryAudioSettingsSchema.parse(settings);
236
257
  }
237
- async getPermanentRtspUrlToken() {
258
+ async getPermanentRtspUrlToken(options) {
238
259
  const paramName = CSW_PARAM_NAMES.RTSP_TOKEN;
239
- const res = await this.vapixAgent.getParameter([paramName], null);
240
- return res[paramName] ?? '';
241
- }
242
- async get(path, parameters = {}) {
243
- const res = await this.client.get(path, parameters);
244
- if (res.ok) {
245
- const d = (await res.json());
246
- return d.data;
247
- }
248
- else {
249
- throw new Error(await (0, utils_1.responseStringify)(res));
250
- }
260
+ const res = await this.vapixAgent.getParameter([paramName], options);
261
+ return zod_1.z.string().parse(res[paramName] ?? '');
251
262
  }
252
- async set(path, data, parameters = {}) {
253
- const res = await this.client.post(path, JSON.stringify(data), parameters);
254
- if (res.ok) {
255
- const parsed = await res.json();
256
- return parsed.message === 'OK';
257
- }
258
- else {
259
- throw new Error(await (0, utils_1.responseStringify)(res));
260
- }
263
+ downloadReport(options) {
264
+ return this._getText(`${BASE_PATH}/report.cgi`, undefined, options);
261
265
  }
262
- setParamFromCameraJSON(paramName, data) {
266
+ setParamFromCameraJSON(paramName, data, options) {
263
267
  const params = {};
264
268
  params[paramName] = JSON.stringify(data);
265
- return this.vapixAgent.setParameter(params, null);
269
+ return this.vapixAgent.setParameter(params, options);
266
270
  }
267
- async getParamFromCameraAndJSONParse(paramName) {
268
- const data = await this.vapixAgent.getParameter([paramName], null);
271
+ async getParamFromCameraAndJSONParse(paramName, options) {
272
+ const data = await this.vapixAgent.getParameter([paramName], options);
269
273
  if (data[paramName] !== undefined) {
270
274
  try {
271
275
  if (data[paramName] === '') {
@@ -276,10 +280,10 @@ class CamSwitcherAPI {
276
280
  }
277
281
  }
278
282
  catch {
279
- throw new Error('Error: in JSON parsing of ' + paramName + '. Cannot parse: ' + data[paramName]);
283
+ throw new errors_1.JsonParseError(paramName, data[paramName]);
280
284
  }
281
285
  }
282
- throw new Error("Error: no parametr '" + paramName + "' was found");
286
+ throw new errors_1.ParameterNotFoundError(paramName);
283
287
  }
284
288
  }
285
289
  exports.CamSwitcherAPI = CamSwitcherAPI;
@@ -290,62 +294,3 @@ const CSW_PARAM_NAMES = {
290
294
  RTSP_TOKEN: 'Camswitcher.RTSPAccessToken',
291
295
  DEFAULT_PLAYLIST: 'Camswitcher.DefaultPlaylist',
292
296
  };
293
- const parseBitrateOptionsToBitrateVapixParams = (firmWareVersion, bitrateMode, cameraOptions) => {
294
- if (!(0, versionCompare_1.isFirmwareVersionAtLeast)(firmWareVersion, constants_1.FIRMWARE_WITH_BITRATE_MODES_SUPPORT)) {
295
- return `videomaxbitrate=${cameraOptions.maximumBitRate}`;
296
- }
297
- if (bitrateMode === null) {
298
- return '';
299
- }
300
- const data = {
301
- VBR: 'videobitratemode=vbr',
302
- MBR: `videobitratemode=mbr&videomaxbitrate=${cameraOptions.maximumBitRate}`,
303
- ABR: `videobitratemode=abr&videoabrtargetbitrate=${cameraOptions.maximumBitRate}&videoabrretentiontime=${cameraOptions.retentionTime}&videoabrmaxbitrate=${cameraOptions.bitRateLimit}`,
304
- };
305
- return data[bitrateMode];
306
- };
307
- const parseVapixParamsToBitrateOptions = (bitrateVapixParams) => {
308
- const params = {};
309
- const searchParams = new URLSearchParams(bitrateVapixParams);
310
- searchParams.forEach((value, key) => {
311
- params[key] = value;
312
- });
313
- const bitrateMode = params['videobitratemode'] !== undefined ? params['videobitratemode'].toUpperCase() : undefined;
314
- const hasLowerFw = bitrateMode === undefined && params['videomaxbitrate'] !== undefined;
315
- if (hasLowerFw) {
316
- const maximumBitRate = parseInt(params['videomaxbitrate'] ?? '0', 10);
317
- return {
318
- bitrateMode: 'MBR',
319
- maximumBitRate: maximumBitRate,
320
- retentionTime: 1,
321
- bitRateLimit: Math.floor(maximumBitRate * 1.1),
322
- };
323
- }
324
- if (bitrateMode === 'ABR') {
325
- const maximumBitRate = parseInt(params['videoabrtargetbitrate'] ?? '0', 10);
326
- const retentionTime = parseInt(params['videoabrretentiontime'] ?? '0', 10);
327
- const bitRateLimit = parseInt(params['videoabrmaxbitrate'] ?? '0', 10);
328
- return {
329
- bitrateMode,
330
- maximumBitRate,
331
- retentionTime,
332
- bitRateLimit,
333
- };
334
- }
335
- else if (bitrateMode === 'MBR') {
336
- const maximumBitRate = params['videomaxbitrate'] !== undefined ? parseInt(params['videomaxbitrate'], 10) : null;
337
- const oldMaximumBitrateParamValue = parseInt(params['videombrmaxbitrate'] ?? '0', 10);
338
- return {
339
- bitrateMode: bitrateMode,
340
- maximumBitRate: maximumBitRate ?? oldMaximumBitrateParamValue,
341
- retentionTime: 1,
342
- bitRateLimit: Math.floor(maximumBitRate ?? oldMaximumBitrateParamValue * 1.1),
343
- };
344
- }
345
- return {
346
- bitrateMode: bitrateMode,
347
- retentionTime: 1,
348
- maximumBitRate: 0,
349
- bitRateLimit: 0,
350
- };
351
- };