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.
- package/README.md +143 -38
- package/cjs/CamOverlayAPI.d.ts +560 -336
- package/cjs/CamOverlayAPI.js +99 -184
- package/cjs/CamScripterAPI.d.ts +41 -17
- package/cjs/CamScripterAPI.js +50 -56
- package/cjs/CamStreamerAPI.d.ts +3139 -14
- package/cjs/CamStreamerAPI.js +151 -52
- package/cjs/CamSwitcherAPI.d.ts +155 -42
- package/cjs/CamSwitcherAPI.js +134 -189
- package/cjs/PlaneTrackerAPI.d.ts +236 -0
- package/cjs/PlaneTrackerAPI.js +194 -0
- package/cjs/VapixAPI.d.ts +84 -43
- package/cjs/VapixAPI.js +312 -216
- package/cjs/{CreatePackage.js → bin/CreatePackage.js} +44 -18
- package/cjs/errors/errors.d.ts +70 -4
- package/cjs/errors/errors.js +140 -7
- package/cjs/index.d.ts +20 -8
- package/cjs/index.js +28 -12
- package/cjs/internal/BasicAPI.d.ts +15 -0
- package/cjs/internal/BasicAPI.js +93 -0
- package/cjs/internal/ProxyClient.d.ts +8 -9
- package/cjs/internal/ProxyClient.js +28 -34
- package/cjs/internal/WsEvents.d.ts +38 -0
- package/cjs/{CamSwitcherEvents.js → internal/WsEvents.js} +33 -22
- package/cjs/internal/constants.d.ts +1 -0
- package/cjs/internal/constants.js +2 -1
- package/cjs/internal/convertors.d.ts +6 -0
- package/cjs/internal/convertors.js +115 -0
- package/cjs/internal/types.d.ts +32 -20
- package/cjs/internal/utils.d.ts +1 -3
- package/cjs/internal/utils.js +1 -12
- package/cjs/internal/versionCompare.d.ts +2 -2
- package/cjs/node/CamOverlayDrawingAPI.d.ts +41 -0
- package/cjs/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +28 -20
- package/{esm → cjs/node}/CamOverlayPainter/Frame.d.ts +8 -37
- package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
- package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.d.ts +5 -21
- package/cjs/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +5 -17
- package/cjs/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
- package/cjs/node/CamOverlayPainter/ResourceManager.js +72 -0
- package/cjs/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
- package/cjs/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +13 -13
- package/cjs/node/DefaultClient.d.ts +6 -6
- package/cjs/node/DefaultClient.js +12 -16
- package/cjs/{internal → node}/Digest.js +24 -1
- package/cjs/node/Digest.test.js +13 -0
- package/cjs/node/HttpRequestSender.d.ts +1 -0
- package/cjs/node/HttpRequestSender.js +14 -4
- package/cjs/node/HttpServer.d.ts +1 -1
- package/cjs/node/HttpServer.js +29 -6
- package/cjs/node/TimeZoneDaemon.d.ts +6 -0
- package/cjs/node/TimeZoneDaemon.js +29 -0
- package/cjs/node/VapixEvents.d.ts +16 -0
- package/cjs/{VapixEvents.js → node/VapixEvents.js} +10 -10
- package/cjs/node/WsClient.d.ts +9 -18
- package/cjs/node/WsClient.js +27 -20
- package/cjs/node/events/AxisCameraStationEvents.d.ts +12 -0
- package/cjs/{events → node/events}/AxisCameraStationEvents.js +18 -13
- package/cjs/node/events/GenetecAgent.d.ts +16 -0
- package/cjs/node/events/GenetecAgent.js +124 -0
- package/cjs/node/index.d.ts +18 -2
- package/cjs/node/index.js +39 -5
- package/cjs/{models/CamOverlayAPI/widgetsSchema.d.ts → types/CamOverlayAPI/CamOverlayAPI.d.ts} +2534 -746
- package/cjs/types/CamOverlayAPI/CamOverlayAPI.js +131 -0
- package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.d.ts +15 -15
- package/cjs/{models → types}/CamOverlayAPI/accuweatherSchema.js +7 -8
- package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.d.ts +106 -105
- package/cjs/{models → types}/CamOverlayAPI/customGraphicsSchema.js +5 -6
- package/{esm/models → cjs/types}/CamOverlayAPI/imagesSchema.d.ts +17 -17
- package/cjs/types/CamOverlayAPI/imagesSchema.js +9 -0
- package/cjs/{models → types}/CamOverlayAPI/index.d.ts +2 -4
- package/cjs/{models → types}/CamOverlayAPI/index.js +2 -4
- package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.d.ts +25 -25
- package/cjs/{models → types}/CamOverlayAPI/infotickerSchema.js +6 -7
- package/{esm/models → cjs/types}/CamOverlayAPI/pipSchema.d.ts +19 -19
- package/cjs/{models → types}/CamOverlayAPI/pipSchema.js +5 -6
- package/{esm/models → cjs/types}/CamOverlayAPI/ptzCompassSchema.d.ts +16 -13
- package/cjs/{models → types}/CamOverlayAPI/ptzCompassSchema.js +5 -5
- package/{esm/models → cjs/types}/CamOverlayAPI/ptzSchema.d.ts +26 -26
- package/cjs/types/CamOverlayAPI/ptzSchema.js +12 -0
- package/cjs/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
- package/cjs/types/CamOverlayAPI/scoreBoardSchema.js +132 -0
- package/cjs/{models → types}/CamOverlayAPI/screenSharingSchema.d.ts +13 -13
- package/cjs/types/CamOverlayAPI/screenSharingSchema.js +8 -0
- package/{esm/models/CamOverlayAPI/widgetCommonSchema.d.ts → cjs/types/CamOverlayAPI/serviceCommonTypes.d.ts} +75 -56
- package/cjs/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +33 -18
- package/{esm/models → cjs/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +13 -13
- package/cjs/types/CamOverlayAPI/webCameraSharingSchema.js +8 -0
- package/cjs/types/CamOverlayDrawingAPI.d.ts +48 -0
- package/cjs/types/CamOverlayDrawingAPI.js +2 -0
- package/cjs/types/CamOverlayPainter.d.ts +76 -0
- package/cjs/types/CamOverlayPainter.js +14 -0
- package/cjs/types/CamScripterAPI.d.ts +86 -23
- package/cjs/types/CamScripterAPI.js +24 -8
- package/cjs/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
- package/cjs/types/CamScripterAPICameraEventsGenerator.js +2 -0
- package/cjs/types/CamStreamerAPI/CamStreamerAPI.d.ts +22299 -0
- package/cjs/types/CamStreamerAPI/CamStreamerAPI.js +165 -0
- package/cjs/types/CamStreamerAPI/facebookSchema.d.ts +501 -0
- package/cjs/types/CamStreamerAPI/facebookSchema.js +23 -0
- package/cjs/types/CamStreamerAPI/index.d.ts +6 -0
- package/cjs/types/CamStreamerAPI/index.js +22 -0
- package/cjs/types/{CamStreamerAPI.d.ts → CamStreamerAPI/oldStreamSchema.d.ts} +104 -35
- package/cjs/types/CamStreamerAPI/oldStreamSchema.js +53 -0
- package/cjs/types/CamStreamerAPI/streamCommonTypes.d.ts +500 -0
- package/cjs/types/CamStreamerAPI/streamCommonTypes.js +119 -0
- package/cjs/types/CamStreamerAPI/streamsSchema.d.ts +7379 -0
- package/cjs/types/CamStreamerAPI/streamsSchema.js +59 -0
- package/cjs/types/CamStreamerAPI/windySchema.d.ts +435 -0
- package/cjs/types/CamStreamerAPI/windySchema.js +11 -0
- package/cjs/types/CamStreamerAPI/youtubeSchema.d.ts +468 -0
- package/cjs/types/CamStreamerAPI/youtubeSchema.js +22 -0
- package/cjs/types/CamSwitcherAPI.d.ts +181 -121
- package/cjs/types/CamSwitcherAPI.js +31 -1
- package/cjs/{events → types}/GenetecAgent.d.ts +47 -47
- package/cjs/types/GenetecAgent.js +31 -0
- package/cjs/types/PlaneTrackerAPI.d.ts +980 -0
- package/cjs/types/PlaneTrackerAPI.js +333 -0
- package/cjs/types/VapixAPI.d.ts +255 -15
- package/cjs/types/VapixAPI.js +66 -3
- package/cjs/types/VapixEvents.d.ts +15 -0
- package/cjs/types/VapixEvents.js +2 -0
- package/cjs/types/common.d.ts +43 -3
- package/cjs/types/common.js +17 -2
- package/cjs/types/ws/CamOverlayEvents.d.ts +88 -0
- package/cjs/types/ws/CamOverlayEvents.js +19 -0
- package/cjs/types/ws/CamStreamerEvents.d.ts +282 -0
- package/cjs/types/ws/CamStreamerEvents.js +36 -0
- package/cjs/types/ws/PlaneTrackerEvents.d.ts +1703 -0
- package/cjs/types/ws/PlaneTrackerEvents.js +207 -0
- package/cjs/web/DefaultClient.d.ts +7 -5
- package/cjs/web/DefaultClient.js +25 -11
- package/cjs/web/WsClient.d.ts +9 -5
- package/cjs/web/WsClient.js +16 -18
- package/cjs/ws/CamOverlayEvents.d.ts +8 -0
- package/cjs/ws/CamOverlayEvents.js +24 -0
- package/cjs/ws/CamStreamerEvents.d.ts +8 -0
- package/cjs/ws/CamStreamerEvents.js +24 -0
- package/cjs/ws/CamSwitcherEvents.d.ts +8 -0
- package/cjs/ws/CamSwitcherEvents.js +24 -0
- package/cjs/ws/PlaneTrackerEvents.d.ts +9 -0
- package/cjs/ws/PlaneTrackerEvents.js +30 -0
- package/esm/CamOverlayAPI.js +99 -184
- package/esm/CamScripterAPI.js +51 -57
- package/esm/CamStreamerAPI.js +149 -51
- package/esm/CamSwitcherAPI.js +137 -192
- package/esm/PlaneTrackerAPI.js +190 -0
- package/esm/VapixAPI.js +314 -218
- package/esm/{CreatePackage.js → bin/CreatePackage.js} +16 -16
- package/esm/errors/errors.js +122 -6
- package/esm/index.js +20 -8
- package/esm/internal/BasicAPI.js +89 -0
- package/esm/internal/ProxyClient.js +28 -34
- package/esm/{CamSwitcherEvents.js → internal/WsEvents.js} +31 -20
- package/esm/internal/constants.js +1 -0
- package/esm/internal/convertors.js +108 -0
- package/esm/internal/utils.js +0 -9
- package/esm/{CamOverlayDrawingAPI.js → node/CamOverlayDrawingAPI.js} +26 -18
- package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Frame.js +33 -0
- package/esm/{CamOverlayPainter → node/CamOverlayPainter}/Painter.js +2 -13
- package/esm/{CamOverlayPainter → node/CamOverlayPainter}/ResourceManager.js +7 -5
- package/esm/{CamScripterAPICameraEventsGenerator.js → node/CamScripterAPICameraEventsGenerator.js} +11 -11
- package/esm/node/DefaultClient.js +12 -16
- package/esm/node/Digest.test.js +11 -0
- package/esm/node/HttpRequestSender.js +14 -4
- package/esm/node/HttpServer.js +1 -1
- package/esm/node/TimeZoneDaemon.js +25 -0
- package/esm/{VapixEvents.js → node/VapixEvents.js} +10 -10
- package/esm/node/WsClient.js +22 -15
- package/esm/{events → node/events}/AxisCameraStationEvents.js +18 -13
- package/esm/node/events/GenetecAgent.js +120 -0
- package/esm/node/index.js +18 -2
- package/esm/types/CamOverlayAPI/CamOverlayAPI.js +110 -0
- package/esm/{models → types}/CamOverlayAPI/accuweatherSchema.js +3 -4
- package/esm/{models → types}/CamOverlayAPI/customGraphicsSchema.js +3 -4
- package/esm/types/CamOverlayAPI/imagesSchema.js +6 -0
- package/esm/{models → types}/CamOverlayAPI/index.js +2 -4
- package/esm/{models → types}/CamOverlayAPI/infotickerSchema.js +3 -4
- package/esm/{models → types}/CamOverlayAPI/pipSchema.js +4 -5
- package/esm/{models → types}/CamOverlayAPI/ptzCompassSchema.js +4 -4
- package/esm/types/CamOverlayAPI/ptzSchema.js +9 -0
- package/esm/types/CamOverlayAPI/scoreBoardSchema.js +129 -0
- package/esm/types/CamOverlayAPI/screenSharingSchema.js +5 -0
- package/esm/{models/CamOverlayAPI/widgetCommonSchema.js → types/CamOverlayAPI/serviceCommonTypes.js} +32 -17
- package/esm/types/CamOverlayAPI/webCameraSharingSchema.js +5 -0
- package/esm/types/CamOverlayDrawingAPI.js +1 -0
- package/esm/types/CamOverlayPainter.js +11 -0
- package/esm/types/CamScripterAPI.js +23 -7
- package/esm/types/CamScripterAPICameraEventsGenerator.js +1 -0
- package/esm/types/CamStreamerAPI/CamStreamerAPI.js +142 -0
- package/esm/types/CamStreamerAPI/facebookSchema.js +17 -0
- package/esm/types/CamStreamerAPI/index.js +6 -0
- package/esm/types/CamStreamerAPI/oldStreamSchema.js +50 -0
- package/esm/types/CamStreamerAPI/streamCommonTypes.js +116 -0
- package/esm/types/CamStreamerAPI/streamsSchema.js +53 -0
- package/esm/types/CamStreamerAPI/windySchema.js +5 -0
- package/esm/types/CamStreamerAPI/youtubeSchema.js +16 -0
- package/esm/types/CamSwitcherAPI.js +31 -1
- package/esm/types/GenetecAgent.js +28 -0
- package/esm/types/PlaneTrackerAPI.js +330 -0
- package/esm/types/VapixAPI.js +65 -2
- package/esm/types/VapixEvents.js +1 -0
- package/esm/types/common.js +16 -1
- package/esm/types/ws/CamOverlayEvents.js +16 -0
- package/esm/types/ws/CamStreamerEvents.js +33 -0
- package/esm/types/ws/PlaneTrackerEvents.js +204 -0
- package/esm/web/DefaultClient.js +25 -11
- package/esm/web/WsClient.js +16 -18
- package/esm/ws/CamOverlayEvents.js +20 -0
- package/esm/ws/CamStreamerEvents.js +20 -0
- package/esm/ws/CamSwitcherEvents.js +20 -0
- package/esm/ws/PlaneTrackerEvents.js +26 -0
- package/package.json +43 -9
- package/{esm → types}/CamOverlayAPI.d.ts +560 -336
- package/types/CamScripterAPI.d.ts +43 -0
- package/types/CamStreamerAPI.d.ts +3141 -0
- package/types/CamSwitcherAPI.d.ts +165 -0
- package/types/PlaneTrackerAPI.d.ts +236 -0
- package/types/VapixAPI.d.ts +119 -0
- package/types/bin/CreatePackage.d.ts +1 -0
- package/types/errors/errors.d.ts +103 -0
- package/types/index.d.ts +28 -0
- package/types/internal/BasicAPI.d.ts +15 -0
- package/types/internal/ProxyClient.d.ts +10 -0
- package/types/internal/WsEvents.d.ts +38 -0
- package/{esm → types}/internal/constants.d.ts +1 -0
- package/types/internal/convertors.d.ts +6 -0
- package/types/internal/types.d.ts +47 -0
- package/{esm → types}/internal/utils.d.ts +1 -3
- package/{esm → types}/internal/versionCompare.d.ts +2 -2
- package/types/node/CamOverlayDrawingAPI.d.ts +41 -0
- package/{cjs → types/node}/CamOverlayPainter/Frame.d.ts +8 -37
- package/{esm → types/node}/CamOverlayPainter/Painter.d.ts +5 -21
- package/types/node/CamOverlayPainter/ResourceManager.d.ts +15 -0
- package/types/node/CamScripterAPICameraEventsGenerator.d.ts +31 -0
- package/types/node/DefaultClient.d.ts +16 -0
- package/types/node/Digest.test.d.ts +1 -0
- package/{esm → types}/node/HttpRequestSender.d.ts +1 -0
- package/{esm → types}/node/HttpServer.d.ts +1 -1
- package/types/node/TimeZoneDaemon.d.ts +6 -0
- package/types/node/VapixEvents.d.ts +16 -0
- package/types/node/WsClient.d.ts +30 -0
- package/types/node/events/AxisCameraStationEvents.d.ts +12 -0
- package/types/node/events/GenetecAgent.d.ts +16 -0
- package/types/node/index.d.ts +18 -0
- package/{esm/models/CamOverlayAPI/widgetsSchema.d.ts → types/types/CamOverlayAPI/CamOverlayAPI.d.ts} +2534 -746
- package/{esm/models → types/types}/CamOverlayAPI/accuweatherSchema.d.ts +15 -15
- package/{esm/models → types/types}/CamOverlayAPI/customGraphicsSchema.d.ts +106 -105
- package/{cjs/models → types/types}/CamOverlayAPI/imagesSchema.d.ts +17 -17
- package/{esm/models → types/types}/CamOverlayAPI/index.d.ts +2 -4
- package/{esm/models → types/types}/CamOverlayAPI/infotickerSchema.d.ts +25 -25
- package/{cjs/models → types/types}/CamOverlayAPI/pipSchema.d.ts +19 -19
- package/{cjs/models → types/types}/CamOverlayAPI/ptzCompassSchema.d.ts +16 -13
- package/{cjs/models → types/types}/CamOverlayAPI/ptzSchema.d.ts +26 -26
- package/types/types/CamOverlayAPI/scoreBoardSchema.d.ts +357 -0
- package/{esm/models → types/types}/CamOverlayAPI/screenSharingSchema.d.ts +13 -13
- package/{cjs/models/CamOverlayAPI/widgetCommonSchema.d.ts → types/types/CamOverlayAPI/serviceCommonTypes.d.ts} +75 -56
- package/{cjs/models → types/types}/CamOverlayAPI/webCameraSharingSchema.d.ts +13 -13
- package/types/types/CamOverlayDrawingAPI.d.ts +48 -0
- package/types/types/CamOverlayPainter.d.ts +76 -0
- package/types/types/CamScripterAPI.d.ts +130 -0
- package/types/types/CamScripterAPICameraEventsGenerator.d.ts +45 -0
- package/types/types/CamStreamerAPI/CamStreamerAPI.d.ts +22299 -0
- package/types/types/CamStreamerAPI/facebookSchema.d.ts +501 -0
- package/types/types/CamStreamerAPI/index.d.ts +6 -0
- package/{esm/types/CamStreamerAPI.d.ts → types/types/CamStreamerAPI/oldStreamSchema.d.ts} +104 -35
- package/types/types/CamStreamerAPI/streamCommonTypes.d.ts +500 -0
- package/types/types/CamStreamerAPI/streamsSchema.d.ts +7379 -0
- package/types/types/CamStreamerAPI/windySchema.d.ts +435 -0
- package/types/types/CamStreamerAPI/youtubeSchema.d.ts +468 -0
- package/{esm → types}/types/CamSwitcherAPI.d.ts +181 -121
- package/{esm/events → types/types}/GenetecAgent.d.ts +47 -47
- package/types/types/PlaneTrackerAPI.d.ts +980 -0
- package/{esm → types}/types/VapixAPI.d.ts +255 -15
- package/types/types/VapixEvents.d.ts +15 -0
- package/types/types/common.d.ts +77 -0
- package/types/types/ws/CamOverlayEvents.d.ts +88 -0
- package/types/types/ws/CamStreamerEvents.d.ts +282 -0
- package/types/types/ws/PlaneTrackerEvents.d.ts +1703 -0
- package/types/web/DefaultClient.d.ts +8 -0
- package/types/web/WsClient.d.ts +17 -0
- package/types/ws/CamOverlayEvents.d.ts +8 -0
- package/types/ws/CamStreamerEvents.d.ts +8 -0
- package/types/ws/CamSwitcherEvents.d.ts +8 -0
- package/types/ws/PlaneTrackerEvents.d.ts +9 -0
- package/cjs/CamOverlayDrawingAPI.d.ts +0 -86
- package/cjs/CamOverlayPainter/ResourceManager.d.ts +0 -14
- package/cjs/CamOverlayPainter/ResourceManager.js +0 -46
- package/cjs/CamScripterAPICameraEventsGenerator.d.ts +0 -74
- package/cjs/CamSwitcherEvents.d.ts +0 -18
- package/cjs/VapixEvents.d.ts +0 -43
- package/cjs/events/AxisCameraStationEvents.d.ts +0 -10
- package/cjs/events/GenetecAgent.js +0 -123
- package/cjs/models/CamOverlayAPI/constants.d.ts +0 -11
- package/cjs/models/CamOverlayAPI/constants.js +0 -14
- package/cjs/models/CamOverlayAPI/fileSchema.d.ts +0 -28
- package/cjs/models/CamOverlayAPI/fileSchema.js +0 -17
- package/cjs/models/CamOverlayAPI/imagesSchema.js +0 -10
- package/cjs/models/CamOverlayAPI/ptzSchema.js +0 -13
- package/cjs/models/CamOverlayAPI/screenSharingSchema.js +0 -9
- package/cjs/models/CamOverlayAPI/webCameraSharingSchema.js +0 -9
- package/cjs/models/CamOverlayAPI/widgetsSchema.js +0 -27
- package/cjs/node/WsEventClient.d.ts +0 -13
- package/cjs/node/WsEventClient.js +0 -22
- package/cjs/types/CamOverlayAPI.d.ts +0 -328
- package/cjs/types/CamOverlayAPI.js +0 -26
- package/cjs/types/CamStreamerAPI.js +0 -28
- package/esm/CamOverlayDrawingAPI.d.ts +0 -86
- package/esm/CamOverlayPainter/ResourceManager.d.ts +0 -14
- package/esm/CamScripterAPI.d.ts +0 -19
- package/esm/CamScripterAPICameraEventsGenerator.d.ts +0 -74
- package/esm/CamStreamerAPI.d.ts +0 -16
- package/esm/CamSwitcherAPI.d.ts +0 -52
- package/esm/CamSwitcherEvents.d.ts +0 -18
- package/esm/VapixAPI.d.ts +0 -78
- package/esm/VapixEvents.d.ts +0 -43
- package/esm/errors/errors.d.ts +0 -37
- package/esm/events/AxisCameraStationEvents.d.ts +0 -10
- package/esm/events/GenetecAgent.js +0 -119
- package/esm/index.d.ts +0 -16
- package/esm/internal/ProxyClient.d.ts +0 -11
- package/esm/internal/types.d.ts +0 -35
- package/esm/models/CamOverlayAPI/constants.d.ts +0 -11
- package/esm/models/CamOverlayAPI/constants.js +0 -11
- package/esm/models/CamOverlayAPI/fileSchema.d.ts +0 -28
- package/esm/models/CamOverlayAPI/fileSchema.js +0 -14
- package/esm/models/CamOverlayAPI/imagesSchema.js +0 -7
- package/esm/models/CamOverlayAPI/ptzSchema.js +0 -10
- package/esm/models/CamOverlayAPI/screenSharingSchema.js +0 -6
- package/esm/models/CamOverlayAPI/webCameraSharingSchema.js +0 -6
- package/esm/models/CamOverlayAPI/widgetsSchema.js +0 -24
- package/esm/node/DefaultClient.d.ts +0 -16
- package/esm/node/WsClient.d.ts +0 -39
- package/esm/node/WsEventClient.d.ts +0 -13
- package/esm/node/WsEventClient.js +0 -18
- package/esm/types/CamOverlayAPI.d.ts +0 -328
- package/esm/types/CamOverlayAPI.js +0 -14
- package/esm/types/CamScripterAPI.d.ts +0 -67
- package/esm/types/CamStreamerAPI.js +0 -25
- package/esm/types/common.d.ts +0 -37
- package/esm/web/DefaultClient.d.ts +0 -6
- package/esm/web/WsClient.d.ts +0 -13
- package/esm/web/index.d.ts +0 -2
- package/cjs/{CreatePackage.d.ts → bin/CreatePackage.d.ts} +0 -0
- package/cjs/{internal → node}/Digest.d.ts +0 -0
- package/{esm/CreatePackage.d.ts → cjs/node/Digest.test.d.ts} +0 -0
- package/{esm/types → cjs/types/ws}/CamSwitcherEvents.d.ts +8 -8
- package/cjs/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
- package/esm/{internal → node}/Digest.js +0 -0
- package/esm/types/{CamSwitcherEvents.js → ws/CamSwitcherEvents.js} +0 -0
- package/{esm → types}/internal/transformers.d.ts +0 -0
- package/{esm/internal → types/node}/Digest.d.ts +0 -0
- package/{cjs/types → types/types/ws}/CamSwitcherEvents.d.ts +8 -8
- /package/{esm/node → types/web}/index.d.ts +0 -0
package/cjs/CamSwitcherAPI.js
CHANGED
|
@@ -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
|
|
11
|
-
const
|
|
12
|
-
|
|
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
|
-
|
|
17
|
+
super(client);
|
|
19
18
|
this.CustomFormData = CustomFormData;
|
|
20
|
-
this.vapixAgent = new VapixAPI_1.VapixAPI(client
|
|
21
|
-
}
|
|
22
|
-
static
|
|
23
|
-
static
|
|
24
|
-
static
|
|
25
|
-
async
|
|
26
|
-
await this.
|
|
27
|
-
|
|
28
|
-
|
|
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
|
|
32
|
-
const
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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
|
-
|
|
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.
|
|
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.
|
|
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.
|
|
102
|
+
async playlistQueueClear(options) {
|
|
103
|
+
await this._getJson(`${BASE_PATH}/playlist_queue_clear.cgi`, undefined, options);
|
|
97
104
|
}
|
|
98
|
-
async playlistQueueList() {
|
|
99
|
-
const
|
|
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.
|
|
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,
|
|
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',
|
|
115
|
+
formData.append('clip_name', clipId);
|
|
108
116
|
formData.append('clip_type', clipType);
|
|
109
117
|
formData.append('file', file, fileName);
|
|
110
|
-
const
|
|
111
|
-
const res = await
|
|
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(
|
|
118
|
-
|
|
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
|
|
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
|
|
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(
|
|
174
|
-
const value = JSON.stringify({ default_playlist_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
|
-
},
|
|
198
|
+
}, options);
|
|
178
199
|
}
|
|
179
|
-
setPermanentRtspUrlToken(token) {
|
|
180
|
-
return this.vapixAgent.setParameter({ [CSW_PARAM_NAMES.RTSP_TOKEN]: token },
|
|
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],
|
|
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
|
-
|
|
253
|
-
|
|
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,
|
|
269
|
+
return this.vapixAgent.setParameter(params, options);
|
|
266
270
|
}
|
|
267
|
-
async getParamFromCameraAndJSONParse(paramName) {
|
|
268
|
-
const data = await this.vapixAgent.getParameter([paramName],
|
|
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
|
|
283
|
+
throw new errors_1.JsonParseError(paramName, data[paramName]);
|
|
280
284
|
}
|
|
281
285
|
}
|
|
282
|
-
throw new
|
|
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
|
-
};
|