@camstack/addon-provider-onvif 1.2.0 → 1.2.1

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
@@ -11508,7 +11508,21 @@ var NativeCropResultSchema = object({
11508
11508
  /** Packed rgb (24-bit) pixels of the crop. */
11509
11509
  bytes: _instanceof(Uint8Array),
11510
11510
  width: number().int().positive(),
11511
- height: number().int().positive()
11511
+ height: number().int().positive(),
11512
+ /**
11513
+ * Which source served this crop, so a quality-sensitive consumer (the native
11514
+ * `keyFrame`) can reject a degraded fallback:
11515
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
11516
+ * quality path).
11517
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
11518
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
11519
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
11520
+ *
11521
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
11522
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
11523
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
11524
+ */
11525
+ tier: _enum(["native", "ram-fullframe"]).optional()
11512
11526
  });
11513
11527
  /** Parent detection context passed to `runDetailSubtree` — the crop's
11514
11528
  * originating detection, in FRAME-space coordinates. Reuses
@@ -15133,7 +15147,8 @@ var LinkedDeviceSchema = object({
15133
15147
  deviceId: number(),
15134
15148
  name: string(),
15135
15149
  location: string().nullable(),
15136
- features: array(string())
15150
+ features: array(string()),
15151
+ producesTrackedEvents: boolean().optional()
15137
15152
  });
15138
15153
  var SavedDeviceRowSchema = object({
15139
15154
  /** Numeric id reserved at allocateDeviceId time. */
@@ -16763,6 +16778,7 @@ var TrackSchema = object({
16763
16778
  deviceId: number(),
16764
16779
  className: string(),
16765
16780
  label: string().optional(),
16781
+ producingDeviceName: string().optional(),
16766
16782
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
16767
16783
  source: TrackSourceSchema.optional(),
16768
16784
  firstSeen: number(),
@@ -16900,7 +16916,8 @@ var MediaFileKindEnum = _enum([
16900
16916
  "fullFrameBoxed",
16901
16917
  "faceCrop",
16902
16918
  "plateCrop",
16903
- "keyFrame"
16919
+ "keyFrame",
16920
+ "keyFrameSmall"
16904
16921
  ]);
16905
16922
  var MediaFileSchema = object({
16906
16923
  key: string(),
package/dist/addon.mjs CHANGED
@@ -11509,7 +11509,21 @@ var NativeCropResultSchema = object({
11509
11509
  /** Packed rgb (24-bit) pixels of the crop. */
11510
11510
  bytes: _instanceof(Uint8Array),
11511
11511
  width: number().int().positive(),
11512
- height: number().int().positive()
11512
+ height: number().int().positive(),
11513
+ /**
11514
+ * Which source served this crop, so a quality-sensitive consumer (the native
11515
+ * `keyFrame`) can reject a degraded fallback:
11516
+ * - `native` — cut from the decode worker's retained NATIVE surface (the
11517
+ * quality path).
11518
+ * - `ram-fullframe` — the native surface MISSED but the request was full-frame,
11519
+ * so the ≤640 RAM `RetainedFrameStore` served it (honest lower-res; legit for
11520
+ * the blank-frame guard / 640-snapshot resolve, NOT for the clean keyFrame).
11521
+ *
11522
+ * OPTIONAL: a pre-tier runner (version skew) omits it — an ABSENT `tier` MUST be
11523
+ * treated as `native` (accepted) by every consumer so mixed-version clusters
11524
+ * keep the pre-tier behaviour. An ROI miss returns `null` (no tier at all).
11525
+ */
11526
+ tier: _enum(["native", "ram-fullframe"]).optional()
11513
11527
  });
11514
11528
  /** Parent detection context passed to `runDetailSubtree` — the crop's
11515
11529
  * originating detection, in FRAME-space coordinates. Reuses
@@ -15134,7 +15148,8 @@ var LinkedDeviceSchema = object({
15134
15148
  deviceId: number(),
15135
15149
  name: string(),
15136
15150
  location: string().nullable(),
15137
- features: array(string())
15151
+ features: array(string()),
15152
+ producesTrackedEvents: boolean().optional()
15138
15153
  });
15139
15154
  var SavedDeviceRowSchema = object({
15140
15155
  /** Numeric id reserved at allocateDeviceId time. */
@@ -16764,6 +16779,7 @@ var TrackSchema = object({
16764
16779
  deviceId: number(),
16765
16780
  className: string(),
16766
16781
  label: string().optional(),
16782
+ producingDeviceName: string().optional(),
16767
16783
  /** Track provenance. Absent ⇒ `pipeline` (legacy rows). */
16768
16784
  source: TrackSourceSchema.optional(),
16769
16785
  firstSeen: number(),
@@ -16901,7 +16917,8 @@ var MediaFileKindEnum = _enum([
16901
16917
  "fullFrameBoxed",
16902
16918
  "faceCrop",
16903
16919
  "plateCrop",
16904
- "keyFrame"
16920
+ "keyFrame",
16921
+ "keyFrameSmall"
16905
16922
  ]);
16906
16923
  var MediaFileSchema = object({
16907
16924
  key: string(),
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@camstack/addon-provider-onvif",
3
- "version": "1.2.0",
3
+ "version": "1.2.1",
4
4
  "description": "ONVIF camera device provider addon for CamStack",
5
5
  "keywords": [
6
6
  "camstack",