@camstack/addon-provider-rademacher 0.1.1 → 0.1.3

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
@@ -18805,7 +18805,17 @@ var AgentAddonConfigSchema = object({
18805
18805
  });
18806
18806
  var AgentPipelineSettingsSchema = object({
18807
18807
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
18808
- maxCameras: number().int().nonnegative().nullable().default(null)
18808
+ maxCameras: number().int().nonnegative().nullable().default(null),
18809
+ /** Per-node detection weight (relative share for the quota balancer). */
18810
+ detectWeight: number().positive().optional(),
18811
+ /** Node is eligible to run the detection pipeline (decode + inference). */
18812
+ detect: boolean().optional(),
18813
+ /** Node is eligible to host decoder sessions. */
18814
+ decode: boolean().optional(),
18815
+ /** Node is eligible to run audio-analyzer sessions. */
18816
+ audio: boolean().optional(),
18817
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
18818
+ ingest: boolean().optional()
18809
18819
  });
18810
18820
  var CameraPipelineForAgentSchema = object({
18811
18821
  steps: array(PipelineStepInputSchema).readonly(),
@@ -18880,7 +18890,10 @@ var AgentLoadSummarySchema = object({
18880
18890
  online: boolean(),
18881
18891
  load: RunnerLocalLoadSchema,
18882
18892
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
18883
- score: number()
18893
+ score: number(),
18894
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
18895
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
18896
+ decodeHwaccel: string().nullable()
18884
18897
  });
18885
18898
  /**
18886
18899
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -19108,6 +19121,21 @@ method(object({
19108
19121
  }), object({ success: literal(true) }), {
19109
19122
  kind: "mutation",
19110
19123
  auth: "admin"
19124
+ }), method(object({
19125
+ agentNodeId: string(),
19126
+ detectWeight: number().positive().nullable()
19127
+ }), object({ success: literal(true) }), {
19128
+ kind: "mutation",
19129
+ auth: "admin"
19130
+ }), method(object({
19131
+ agentNodeId: string(),
19132
+ detect: boolean().nullable().optional(),
19133
+ decode: boolean().nullable().optional(),
19134
+ audio: boolean().nullable().optional(),
19135
+ ingest: boolean().nullable().optional()
19136
+ }), object({ success: literal(true) }), {
19137
+ kind: "mutation",
19138
+ auth: "admin"
19111
19139
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
19112
19140
  deviceId: number(),
19113
19141
  addonId: string(),
@@ -21416,7 +21444,7 @@ var HardwareEncoderIdSchema = _enum([
21416
21444
  "libx264",
21417
21445
  "libx265"
21418
21446
  ]);
21419
- var HardwareEncodersSchema = object({
21447
+ object({
21420
21448
  encoders: array(object({
21421
21449
  encoder: HardwareEncoderIdSchema,
21422
21450
  codec: _enum(["H264", "H265"]),
@@ -21435,15 +21463,7 @@ var HardwareEncodersSchema = object({
21435
21463
  defaultH265: HardwareEncoderIdSchema,
21436
21464
  probedAt: number()
21437
21465
  });
21438
- /**
21439
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
21440
- * methods the configured ffmpeg binary actually supports (parsed from
21441
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
21442
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
21443
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
21444
- * software fallback — this only filters out wholly-unsupported backends.
21445
- */
21446
- var HardwareDecodeAccelsSchema = object({
21466
+ object({
21447
21467
  methods: array(string()).readonly(),
21448
21468
  probedAt: number()
21449
21469
  });
@@ -21506,13 +21526,7 @@ var ResolvedInferenceConfigSchema = object({
21506
21526
  format: ModelFormatSchema,
21507
21527
  reason: string()
21508
21528
  });
21509
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
21510
- kind: "mutation",
21511
- auth: "admin"
21512
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
21513
- kind: "mutation",
21514
- auth: "admin"
21515
- });
21529
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
21516
21530
  var PtzPresetSchema = object({
21517
21531
  id: string(),
21518
21532
  name: string()
@@ -24981,6 +24995,18 @@ Object.freeze({
24981
24995
  addonId: null,
24982
24996
  access: "create"
24983
24997
  },
24998
+ "pipelineOrchestrator.setAgentCapabilities": {
24999
+ capName: "pipeline-orchestrator",
25000
+ capScope: "system",
25001
+ addonId: null,
25002
+ access: "create"
25003
+ },
25004
+ "pipelineOrchestrator.setAgentDetectWeight": {
25005
+ capName: "pipeline-orchestrator",
25006
+ capScope: "system",
25007
+ addonId: null,
25008
+ access: "create"
25009
+ },
24984
25010
  "pipelineOrchestrator.setAgentMaxCameras": {
24985
25011
  capName: "pipeline-orchestrator",
24986
25012
  capScope: "system",
@@ -25137,30 +25163,6 @@ Object.freeze({
25137
25163
  addonId: null,
25138
25164
  access: "view"
25139
25165
  },
25140
- "platformProbe.getHardwareDecodeAccels": {
25141
- capName: "platform-probe",
25142
- capScope: "system",
25143
- addonId: null,
25144
- access: "view"
25145
- },
25146
- "platformProbe.getHardwareEncoders": {
25147
- capName: "platform-probe",
25148
- capScope: "system",
25149
- addonId: null,
25150
- access: "view"
25151
- },
25152
- "platformProbe.refreshHardwareDecodeAccels": {
25153
- capName: "platform-probe",
25154
- capScope: "system",
25155
- addonId: null,
25156
- access: "create"
25157
- },
25158
- "platformProbe.refreshHardwareEncoders": {
25159
- capName: "platform-probe",
25160
- capScope: "system",
25161
- addonId: null,
25162
- access: "create"
25163
- },
25164
25166
  "platformProbe.resolveHwAccel": {
25165
25167
  capName: "platform-probe",
25166
25168
  capScope: "system",
package/dist/addon.mjs CHANGED
@@ -18804,7 +18804,17 @@ var AgentAddonConfigSchema = object({
18804
18804
  });
18805
18805
  var AgentPipelineSettingsSchema = object({
18806
18806
  addonDefaults: record(string(), AgentAddonConfigSchema).readonly(),
18807
- maxCameras: number().int().nonnegative().nullable().default(null)
18807
+ maxCameras: number().int().nonnegative().nullable().default(null),
18808
+ /** Per-node detection weight (relative share for the quota balancer). */
18809
+ detectWeight: number().positive().optional(),
18810
+ /** Node is eligible to run the detection pipeline (decode + inference). */
18811
+ detect: boolean().optional(),
18812
+ /** Node is eligible to host decoder sessions. */
18813
+ decode: boolean().optional(),
18814
+ /** Node is eligible to run audio-analyzer sessions. */
18815
+ audio: boolean().optional(),
18816
+ /** Node is eligible to be the ingest / source-owner (serve the restream). */
18817
+ ingest: boolean().optional()
18808
18818
  });
18809
18819
  var CameraPipelineForAgentSchema = object({
18810
18820
  steps: array(PipelineStepInputSchema).readonly(),
@@ -18879,7 +18889,10 @@ var AgentLoadSummarySchema = object({
18879
18889
  online: boolean(),
18880
18890
  load: RunnerLocalLoadSchema,
18881
18891
  /** Computed score used by the L2 capacity balancer (lower = less loaded). */
18882
- score: number()
18892
+ score: number(),
18893
+ /** This node's decode hwaccel backend (per-node `probedBestHwaccel`), or null
18894
+ * when not yet probed — for the cluster Pipeline table UI (P0.2). */
18895
+ decodeHwaccel: string().nullable()
18883
18896
  });
18884
18897
  /**
18885
18898
  * Aggregate metrics across the whole detection cluster. Replaces the legacy
@@ -19107,6 +19120,21 @@ method(object({
19107
19120
  }), object({ success: literal(true) }), {
19108
19121
  kind: "mutation",
19109
19122
  auth: "admin"
19123
+ }), method(object({
19124
+ agentNodeId: string(),
19125
+ detectWeight: number().positive().nullable()
19126
+ }), object({ success: literal(true) }), {
19127
+ kind: "mutation",
19128
+ auth: "admin"
19129
+ }), method(object({
19130
+ agentNodeId: string(),
19131
+ detect: boolean().nullable().optional(),
19132
+ decode: boolean().nullable().optional(),
19133
+ audio: boolean().nullable().optional(),
19134
+ ingest: boolean().nullable().optional()
19135
+ }), object({ success: literal(true) }), {
19136
+ kind: "mutation",
19137
+ auth: "admin"
19110
19138
  }), method(object({ deviceId: number() }), CameraPipelineSettingsSchema.nullable()), method(object({
19111
19139
  deviceId: number(),
19112
19140
  addonId: string(),
@@ -21415,7 +21443,7 @@ var HardwareEncoderIdSchema = _enum([
21415
21443
  "libx264",
21416
21444
  "libx265"
21417
21445
  ]);
21418
- var HardwareEncodersSchema = object({
21446
+ object({
21419
21447
  encoders: array(object({
21420
21448
  encoder: HardwareEncoderIdSchema,
21421
21449
  codec: _enum(["H264", "H265"]),
@@ -21434,15 +21462,7 @@ var HardwareEncodersSchema = object({
21434
21462
  defaultH265: HardwareEncoderIdSchema,
21435
21463
  probedAt: number()
21436
21464
  });
21437
- /**
21438
- * Decode-side companion to {@link HardwareEncodersSchema}: the `-hwaccel`
21439
- * methods the configured ffmpeg binary actually supports (parsed from
21440
- * `ffmpeg -hwaccels`). Used to gate decode-hwaccel attempts so the transcode
21441
- * egress never spends a spawn on a backend this build cannot offer. Per-stream
21442
- * decode fragility (e.g. VideoToolbox HEVC) is still handled by the egress's
21443
- * software fallback — this only filters out wholly-unsupported backends.
21444
- */
21445
- var HardwareDecodeAccelsSchema = object({
21465
+ object({
21446
21466
  methods: array(string()).readonly(),
21447
21467
  probedAt: number()
21448
21468
  });
@@ -21505,13 +21525,7 @@ var ResolvedInferenceConfigSchema = object({
21505
21525
  format: ModelFormatSchema,
21506
21526
  reason: string()
21507
21527
  });
21508
- method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema), method(_void(), HardwareEncodersSchema), method(_void(), HardwareEncodersSchema, {
21509
- kind: "mutation",
21510
- auth: "admin"
21511
- }), method(_void(), HardwareDecodeAccelsSchema), method(_void(), HardwareDecodeAccelsSchema, {
21512
- kind: "mutation",
21513
- auth: "admin"
21514
- });
21528
+ method(_void(), PlatformCapabilitiesSchema), method(_void(), HardwareInfoSchema), method(object({ requirements: array(ModelRequirementSchema).readonly() }), ResolvedInferenceConfigSchema), method(object({ prefer: HwAccelBackendInputSchema }), HwAccelResolutionSchema);
21515
21529
  var PtzPresetSchema = object({
21516
21530
  id: string(),
21517
21531
  name: string()
@@ -24980,6 +24994,18 @@ Object.freeze({
24980
24994
  addonId: null,
24981
24995
  access: "create"
24982
24996
  },
24997
+ "pipelineOrchestrator.setAgentCapabilities": {
24998
+ capName: "pipeline-orchestrator",
24999
+ capScope: "system",
25000
+ addonId: null,
25001
+ access: "create"
25002
+ },
25003
+ "pipelineOrchestrator.setAgentDetectWeight": {
25004
+ capName: "pipeline-orchestrator",
25005
+ capScope: "system",
25006
+ addonId: null,
25007
+ access: "create"
25008
+ },
24983
25009
  "pipelineOrchestrator.setAgentMaxCameras": {
24984
25010
  capName: "pipeline-orchestrator",
24985
25011
  capScope: "system",
@@ -25136,30 +25162,6 @@ Object.freeze({
25136
25162
  addonId: null,
25137
25163
  access: "view"
25138
25164
  },
25139
- "platformProbe.getHardwareDecodeAccels": {
25140
- capName: "platform-probe",
25141
- capScope: "system",
25142
- addonId: null,
25143
- access: "view"
25144
- },
25145
- "platformProbe.getHardwareEncoders": {
25146
- capName: "platform-probe",
25147
- capScope: "system",
25148
- addonId: null,
25149
- access: "view"
25150
- },
25151
- "platformProbe.refreshHardwareDecodeAccels": {
25152
- capName: "platform-probe",
25153
- capScope: "system",
25154
- addonId: null,
25155
- access: "create"
25156
- },
25157
- "platformProbe.refreshHardwareEncoders": {
25158
- capName: "platform-probe",
25159
- capScope: "system",
25160
- addonId: null,
25161
- access: "create"
25162
- },
25163
25165
  "platformProbe.resolveHwAccel": {
25164
25166
  capName: "platform-probe",
25165
25167
  capScope: "system",
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-rademacher",
3
- "version": "0.1.1",
3
+ "version": "0.1.3",
4
4
  "description": "Rademacher HomePilot device-provider addon for CamStack — wraps the @apocaliss92/noderademacher local-hub client (roller shutters over the cover cap)",
5
5
  "keywords": [
6
6
  "camstack",