@camstack/addon-provider-hikvision 1.1.14 → 1.1.16

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/dist/addon.js CHANGED
@@ -18027,7 +18027,17 @@ var AgentAddonConfigSchema = object({
18027
18027
  });
18028
18028
  var AgentPipelineSettingsSchema = object({
18029
18029
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
18030
- maxCameras: number().int().nonnegative().nullable().default(null)
18030
+ maxCameras: number().int().nonnegative().nullable().default(null),
18031
+ /** Per-node detection weight (relative share for the quota balancer). */
18032
+ detectWeight: number().positive().optional(),
18033
+ /** Node is eligible to run the detection pipeline (decode + inference). */
18034
+ detect: boolean().optional(),
18035
+ /** Node is eligible to host decoder sessions. */
18036
+ decode: boolean().optional(),
18037
+ /** Node is eligible to run audio-analyzer sessions. */
18038
+ audio: boolean().optional(),
18039
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
18040
+ ingest: boolean().optional()
18031
18041
  });
18032
18042
  var CameraPipelineForAgentSchema = object({
18033
18043
  steps: array(PipelineStepInputSchema).readonly(),
@@ -18102,7 +18112,10 @@ var AgentLoadSummarySchema = object({
18102
18112
  online: boolean(),
18103
18113
  load: RunnerLocalLoadSchema,
18104
18114
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
18105
- score: number()
18115
+ score: number(),
18116
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
18117
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
18118
+ decodeHwaccel: string().nullable()
18106
18119
  });
18107
18120
  /**
18108
18121
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -18330,6 +18343,21 @@ method(object({
18330
18343
  }), object({ success: literal(true) }), {
18331
18344
  kind: "mutation",
18332
18345
  auth: "admin"
18346
+ }), method(object({
18347
+ agentNodeId: string(),
18348
+ detectWeight: number().positive().nullable()
18349
+ }), object({ success: literal(true) }), {
18350
+ kind: "mutation",
18351
+ auth: "admin"
18352
+ }), method(object({
18353
+ agentNodeId: string(),
18354
+ detect: boolean().nullable().optional(),
18355
+ decode: boolean().nullable().optional(),
18356
+ audio: boolean().nullable().optional(),
18357
+ ingest: boolean().nullable().optional()
18358
+ }), object({ success: literal(true) }), {
18359
+ kind: "mutation",
18360
+ auth: "admin"
18333
18361
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
18334
18362
  deviceId: number(),
18335
18363
  addonId: string(),
@@ -20778,7 +20806,7 @@ var HardwareEncoderIdSchema = _enum([
20778
20806
  "libx264",
20779
20807
  "libx265"
20780
20808
  ]);
20781
- var HardwareEncodersSchema = object({
20809
+ object({
20782
20810
  encoders: array(object({
20783
20811
  encoder: HardwareEncoderIdSchema,
20784
20812
  codec: _enum(["H264", "H265"]),
@@ -20797,15 +20825,7 @@ var HardwareEncodersSchema = object({
20797
20825
  defaultH265: HardwareEncoderIdSchema,
20798
20826
  probedAt: number()
20799
20827
  });
20800
- /**
20801
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
20802
- * methods the configured ffmpeg binary actually supports (parsed from
20803
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
20804
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
20805
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
20806
- * software fallback — this only filters out wholly-unsupported backends.
20807
- */
20808
- var HardwareDecodeAccelsSchema = object({
20828
+ object({
20809
20829
  methods: array(string()).readonly(),
20810
20830
  probedAt: number()
20811
20831
  });
@@ -20868,13 +20888,7 @@ var ResolvedInferenceConfigSchema = object({
20868
20888
  format: ModelFormatSchema,
20869
20889
  reason: string()
20870
20890
  });
20871
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
20872
- kind: "mutation",
20873
- auth: "admin"
20874
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
20875
- kind: "mutation",
20876
- auth: "admin"
20877
- });
20891
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
20878
20892
  var PtzPresetSchema = object({
20879
20893
  id: string(),
20880
20894
  name: string()
@@ -24621,6 +24635,18 @@ Object.freeze({
24621
24635
  addonId: null,
24622
24636
  access: "create"
24623
24637
  },
24638
+ "pipelineOrchestrator.setAgentCapabilities": {
24639
+ capName: "pipeline-orchestrator",
24640
+ capScope: "system",
24641
+ addonId: null,
24642
+ access: "create"
24643
+ },
24644
+ "pipelineOrchestrator.setAgentDetectWeight": {
24645
+ capName: "pipeline-orchestrator",
24646
+ capScope: "system",
24647
+ addonId: null,
24648
+ access: "create"
24649
+ },
24624
24650
  "pipelineOrchestrator.setAgentMaxCameras": {
24625
24651
  capName: "pipeline-orchestrator",
24626
24652
  capScope: "system",
@@ -24777,30 +24803,6 @@ Object.freeze({
24777
24803
  addonId: null,
24778
24804
  access: "view"
24779
24805
  },
24780
- "platformProbe.getHardwareDecodeAccels": {
24781
- capName: "platform-probe",
24782
- capScope: "system",
24783
- addonId: null,
24784
- access: "view"
24785
- },
24786
- "platformProbe.getHardwareEncoders": {
24787
- capName: "platform-probe",
24788
- capScope: "system",
24789
- addonId: null,
24790
- access: "view"
24791
- },
24792
- "platformProbe.refreshHardwareDecodeAccels": {
24793
- capName: "platform-probe",
24794
- capScope: "system",
24795
- addonId: null,
24796
- access: "create"
24797
- },
24798
- "platformProbe.refreshHardwareEncoders": {
24799
- capName: "platform-probe",
24800
- capScope: "system",
24801
- addonId: null,
24802
- access: "create"
24803
- },
24804
24806
  "platformProbe.resolveHwAccel": {
24805
24807
  capName: "platform-probe",
24806
24808
  capScope: "system",
package/dist/addon.mjs CHANGED
@@ -18028,7 +18028,17 @@ var AgentAddonConfigSchema = object({
18028
18028
  });
18029
18029
  var AgentPipelineSettingsSchema = object({
18030
18030
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
18031
- maxCameras: number().int().nonnegative().nullable().default(null)
18031
+ maxCameras: number().int().nonnegative().nullable().default(null),
18032
+ /** Per-node detection weight (relative share for the quota balancer). */
18033
+ detectWeight: number().positive().optional(),
18034
+ /** Node is eligible to run the detection pipeline (decode + inference). */
18035
+ detect: boolean().optional(),
18036
+ /** Node is eligible to host decoder sessions. */
18037
+ decode: boolean().optional(),
18038
+ /** Node is eligible to run audio-analyzer sessions. */
18039
+ audio: boolean().optional(),
18040
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
18041
+ ingest: boolean().optional()
18032
18042
  });
18033
18043
  var CameraPipelineForAgentSchema = object({
18034
18044
  steps: array(PipelineStepInputSchema).readonly(),
@@ -18103,7 +18113,10 @@ var AgentLoadSummarySchema = object({
18103
18113
  online: boolean(),
18104
18114
  load: RunnerLocalLoadSchema,
18105
18115
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
18106
- score: number()
18116
+ score: number(),
18117
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
18118
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
18119
+ decodeHwaccel: string().nullable()
18107
18120
  });
18108
18121
  /**
18109
18122
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -18331,6 +18344,21 @@ method(object({
18331
18344
  }), object({ success: literal(true) }), {
18332
18345
  kind: "mutation",
18333
18346
  auth: "admin"
18347
+ }), method(object({
18348
+ agentNodeId: string(),
18349
+ detectWeight: number().positive().nullable()
18350
+ }), object({ success: literal(true) }), {
18351
+ kind: "mutation",
18352
+ auth: "admin"
18353
+ }), method(object({
18354
+ agentNodeId: string(),
18355
+ detect: boolean().nullable().optional(),
18356
+ decode: boolean().nullable().optional(),
18357
+ audio: boolean().nullable().optional(),
18358
+ ingest: boolean().nullable().optional()
18359
+ }), object({ success: literal(true) }), {
18360
+ kind: "mutation",
18361
+ auth: "admin"
18334
18362
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
18335
18363
  deviceId: number(),
18336
18364
  addonId: string(),
@@ -20779,7 +20807,7 @@ var HardwareEncoderIdSchema = _enum([
20779
20807
  "libx264",
20780
20808
  "libx265"
20781
20809
  ]);
20782
- var HardwareEncodersSchema = object({
20810
+ object({
20783
20811
  encoders: array(object({
20784
20812
  encoder: HardwareEncoderIdSchema,
20785
20813
  codec: _enum(["H264", "H265"]),
@@ -20798,15 +20826,7 @@ var HardwareEncodersSchema = object({
20798
20826
  defaultH265: HardwareEncoderIdSchema,
20799
20827
  probedAt: number()
20800
20828
  });
20801
- /**
20802
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
20803
- * methods the configured ffmpeg binary actually supports (parsed from
20804
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
20805
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
20806
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
20807
- * software fallback — this only filters out wholly-unsupported backends.
20808
- */
20809
- var HardwareDecodeAccelsSchema = object({
20829
+ object({
20810
20830
  methods: array(string()).readonly(),
20811
20831
  probedAt: number()
20812
20832
  });
@@ -20869,13 +20889,7 @@ var ResolvedInferenceConfigSchema = object({
20869
20889
  format: ModelFormatSchema,
20870
20890
  reason: string()
20871
20891
  });
20872
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
20873
- kind: "mutation",
20874
- auth: "admin"
20875
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
20876
- kind: "mutation",
20877
- auth: "admin"
20878
- });
20892
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
20879
20893
  var PtzPresetSchema = object({
20880
20894
  id: string(),
20881
20895
  name: string()
@@ -24622,6 +24636,18 @@ Object.freeze({
24622
24636
  addonId: null,
24623
24637
  access: "create"
24624
24638
  },
24639
+ "pipelineOrchestrator.setAgentCapabilities": {
24640
+ capName: "pipeline-orchestrator",
24641
+ capScope: "system",
24642
+ addonId: null,
24643
+ access: "create"
24644
+ },
24645
+ "pipelineOrchestrator.setAgentDetectWeight": {
24646
+ capName: "pipeline-orchestrator",
24647
+ capScope: "system",
24648
+ addonId: null,
24649
+ access: "create"
24650
+ },
24625
24651
  "pipelineOrchestrator.setAgentMaxCameras": {
24626
24652
  capName: "pipeline-orchestrator",
24627
24653
  capScope: "system",
@@ -24778,30 +24804,6 @@ Object.freeze({
24778
24804
  addonId: null,
24779
24805
  access: "view"
24780
24806
  },
24781
- "platformProbe.getHardwareDecodeAccels": {
24782
- capName: "platform-probe",
24783
- capScope: "system",
24784
- addonId: null,
24785
- access: "view"
24786
- },
24787
- "platformProbe.getHardwareEncoders": {
24788
- capName: "platform-probe",
24789
- capScope: "system",
24790
- addonId: null,
24791
- access: "view"
24792
- },
24793
- "platformProbe.refreshHardwareDecodeAccels": {
24794
- capName: "platform-probe",
24795
- capScope: "system",
24796
- addonId: null,
24797
- access: "create"
24798
- },
24799
- "platformProbe.refreshHardwareEncoders": {
24800
- capName: "platform-probe",
24801
- capScope: "system",
24802
- addonId: null,
24803
- access: "create"
24804
- },
24805
24807
  "platformProbe.resolveHwAccel": {
24806
24808
  capName: "platform-probe",
24807
24809
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-hikvision",
3
- "version": "1.1.14",
3
+ "version": "1.1.16",
4
4
  "description": "Hikvision camera device provider addon for CamStack — ISAPI over HTTP(S) with digest auth (snapshot, alarm stream, RTSP discovery)",
5
5
  "keywords": [
6
6
  "camstack",