@camstack/addon-pipeline 1.2.360 → 1.2.361

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 (34) hide show
  1. package/dist/audio-analyzer/index.js +3 -3
  2. package/dist/audio-analyzer/index.mjs +3 -3
  3. package/dist/{custom-model-catalog-K9Hx82GZ.js → custom-model-catalog-BsuqZLaN.js} +2 -2
  4. package/dist/{custom-model-catalog-ihWAlDr4.mjs → custom-model-catalog-DWFL7iBE.mjs} +2 -2
  5. package/dist/detection-pipeline/index.js +4 -4
  6. package/dist/detection-pipeline/index.mjs +4 -4
  7. package/dist/{dist-BYCrV0VR.mjs → dist-73R05PFN.mjs} +26 -19
  8. package/dist/{dist-CYakbWA8.js → dist-DFGiI5lr.js} +25 -18
  9. package/dist/{model-catalogs-C9cyLHdH.js → model-catalogs-BefhGOAc.js} +1 -1
  10. package/dist/{model-catalogs-CX9SJ9in.mjs → model-catalogs-OLyh3TdB.mjs} +1 -1
  11. package/dist/motion-wasm/index.js +1 -1
  12. package/dist/motion-wasm/index.mjs +1 -1
  13. package/dist/{node-C_qDNN9f.mjs → node-C0-Ik_JH.mjs} +3 -2
  14. package/dist/{node-CTCm8Vtw.js → node-CdOP9ELN.js} +4 -2
  15. package/dist/pipeline-runner/index.js +3 -3
  16. package/dist/pipeline-runner/index.mjs +3 -3
  17. package/dist/{process-memory-B3lkW9H-.mjs → process-memory-DKKVQV5j.mjs} +1 -1
  18. package/dist/{process-memory-Ds5S3L0F.js → process-memory-DO-ZBWdK.js} +1 -1
  19. package/dist/recorder/index.js +1675 -2
  20. package/dist/recorder/index.mjs +1675 -2
  21. package/dist/{segment-demux-js-W5FIgijf.mjs → segment-demux-js-C_27CmCq.mjs} +1 -1
  22. package/dist/{segment-demux-js-BgDpp15L.js → segment-demux-js-Dr3e9r4m.js} +1 -1
  23. package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-v95KZ2Rt.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-DJeFG_hB.mjs} +1 -1
  24. package/dist/stream-broker/demux-worker-child.js +1 -1
  25. package/dist/stream-broker/demux-worker-child.mjs +1 -1
  26. package/dist/stream-broker/{hostInit-CDaDWDva.mjs → hostInit-Buho1uzb.mjs} +1 -1
  27. package/dist/stream-broker/index.js +3 -3
  28. package/dist/stream-broker/index.mjs +3 -3
  29. package/dist/stream-broker/remoteEntry.js +1 -1
  30. package/package.json +1 -1
  31. package/python/inference_pool.py +12 -13
  32. package/python/pool_platform.py +214 -0
  33. package/python/test_inference_pool_windows.py +86 -0
  34. package/python/test_pool_platform.py +141 -0
@@ -3,9 +3,9 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../chunk-emK7D4bc.js");
6
- const require_dist = require("../dist-CYakbWA8.js");
7
- const require_model_catalogs = require("../model-catalogs-C9cyLHdH.js");
8
- const require_process_memory = require("../process-memory-Ds5S3L0F.js");
6
+ const require_dist = require("../dist-DFGiI5lr.js");
7
+ const require_model_catalogs = require("../model-catalogs-BefhGOAc.js");
8
+ const require_process_memory = require("../process-memory-DO-ZBWdK.js");
9
9
  let node_fs = require("node:fs");
10
10
  node_fs = require_chunk.__toESM(node_fs);
11
11
  let node_path = require("node:path");
@@ -1,7 +1,7 @@
1
1
  import { n as __require } from "../chunk-DnnnRqeS.mjs";
2
- import { $ as audioAnalysisCapability, Bn as expandAudioChunkToF32le, In as audioChunkBytesPerSample, Kn as nodePin, L as PoolMemoryWatchdog, Nn as BaseAddon, Rt as mapAudioLabelToMacro, Vn as hydrateSchema, cr as EventCategory, et as audioAnalyzerCapability, h as DEFAULT_AUDIO_ANALYZER_CONFIG, jn as errMsg, ln as resolvePoolMemoryPolicy, r as AUDIO_BACKEND_CHOICES } from "../dist-BYCrV0VR.mjs";
3
- import { n as AUDIO_CLASSIFIER_MODELS } from "../model-catalogs-CX9SJ9in.mjs";
4
- import { n as pickNodePlatformArch, t as readProcessMemory } from "../process-memory-B3lkW9H-.mjs";
2
+ import { An as BaseAddon, F as PoolMemoryWatchdog, Fn as audioChunkBytesPerSample, Ft as mapAudioLabelToMacro, Kn as nodePin, On as errMsg, Q as audioAnalyzerCapability, Vn as hydrateSchema, Z as audioAnalysisCapability, cr as EventCategory, h as DEFAULT_AUDIO_ANALYZER_CONFIG, on as resolvePoolMemoryPolicy, r as AUDIO_BACKEND_CHOICES, zn as expandAudioChunkToF32le } from "../dist-73R05PFN.mjs";
3
+ import { n as AUDIO_CLASSIFIER_MODELS } from "../model-catalogs-OLyh3TdB.mjs";
4
+ import { n as pickNodePlatformArch, t as readProcessMemory } from "../process-memory-DKKVQV5j.mjs";
5
5
  import * as fs from "node:fs";
6
6
  import * as path$1 from "node:path";
7
7
  import { ensureModel } from "@camstack/system/addon-utils";
@@ -1,5 +1,5 @@
1
- const require_dist = require("./dist-CYakbWA8.js");
2
- const require_model_catalogs = require("./model-catalogs-C9cyLHdH.js");
1
+ const require_dist = require("./dist-DFGiI5lr.js");
2
+ const require_model_catalogs = require("./model-catalogs-BefhGOAc.js");
3
3
  const require_worker_protocol = require("./worker-protocol-C-G8qmye.js");
4
4
  let node_crypto = require("node:crypto");
5
5
  //#region src/detection-pipeline/registry/effective-confidence.ts
@@ -1,5 +1,5 @@
1
- import { A as LABEL_SUPPLY_VOCABULARIES, Mt as inferModelProvider, b as DEVICE_BACKEND_TO_FORMAT, f as COCO_80_LABELS, i as AUDIO_MACRO_LABELS, mn as stepModelRunsOnFormat, p as COCO_TO_MACRO, tt as audioKindId } from "./dist-BYCrV0VR.mjs";
2
- import { a as FACE_DETECTION_MODELS, c as OBJECT_DETECTION_MODELS, d as PLATE_OCR_MODELS, f as SEGMENTATION_REFINER_MODELS, i as CLIP_EMBEDDING_MODELS, l as PACKAGE_DETECTION_MODELS, n as AUDIO_CLASSIFIER_MODELS, o as FACE_EMBEDDING_MODELS, p as VEHICLE_CLASSIFIER_MODELS, r as BIRD_CLASSIFIER_MODELS, s as INSTANCE_SEGMENTATION_MODELS, t as ANIMAL_CLASSIFIER_MODELS, u as PLATE_DETECTION_MODELS } from "./model-catalogs-CX9SJ9in.mjs";
1
+ import { $ as audioKindId, b as DEVICE_BACKEND_TO_FORMAT, dn as stepModelRunsOnFormat, f as COCO_80_LABELS, i as AUDIO_MACRO_LABELS, k as LABEL_SUPPLY_VOCABULARIES, kt as inferModelProvider, p as COCO_TO_MACRO } from "./dist-73R05PFN.mjs";
2
+ import { a as FACE_DETECTION_MODELS, c as OBJECT_DETECTION_MODELS, d as PLATE_OCR_MODELS, f as SEGMENTATION_REFINER_MODELS, i as CLIP_EMBEDDING_MODELS, l as PACKAGE_DETECTION_MODELS, n as AUDIO_CLASSIFIER_MODELS, o as FACE_EMBEDDING_MODELS, p as VEHICLE_CLASSIFIER_MODELS, r as BIRD_CLASSIFIER_MODELS, s as INSTANCE_SEGMENTATION_MODELS, t as ANIMAL_CLASSIFIER_MODELS, u as PLATE_DETECTION_MODELS } from "./model-catalogs-OLyh3TdB.mjs";
3
3
  import { t as isWorkerReply } from "./worker-protocol-D_NzPcnh.mjs";
4
4
  import { randomUUID } from "node:crypto";
5
5
  //#region src/detection-pipeline/registry/effective-confidence.ts
@@ -3,11 +3,11 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../chunk-emK7D4bc.js");
6
- const require_dist = require("../dist-CYakbWA8.js");
7
- const require_node = require("../node-CTCm8Vtw.js");
8
- const require_custom_model_catalog = require("../custom-model-catalog-K9Hx82GZ.js");
6
+ const require_dist = require("../dist-DFGiI5lr.js");
7
+ const require_node = require("../node-CdOP9ELN.js");
8
+ const require_custom_model_catalog = require("../custom-model-catalog-BsuqZLaN.js");
9
9
  const require_lazy_sharp = require("../lazy-sharp-BuwKlQLR.js");
10
- const require_process_memory = require("../process-memory-Ds5S3L0F.js");
10
+ const require_process_memory = require("../process-memory-DO-ZBWdK.js");
11
11
  let node_os = require("node:os");
12
12
  node_os = require_chunk.__toESM(node_os);
13
13
  let node_fs = require("node:fs");
@@ -1,9 +1,9 @@
1
1
  import { n as __require } from "../chunk-DnnnRqeS.mjs";
2
- import { It as loadContributionCapability, Jt as pickClusterStepSettings, Kn as nodePin, Kt as overlayClusterStepSettings, L as PoolMemoryWatchdog, Ln as createEvent, Nn as BaseAddon, Pt as linkedLabelStepId, Q as applyModelBoundSettings, St as evaluateZoneRules, Vn as hydrateSchema, Wt as modelBindingKey, Y as YAMNET_TO_MACRO, Yn as sleep, Zn as array, Zt as pipelineExecutorCapability, cr as EventCategory, ct as collectModelBoundKeys, d as CLUSTER_MODEL_SCOPED_STEPS, fn as rootSuppliesOf, g as DEFAULT_CLUSTER_STEP_SETTINGS, in as resolveClusterStepModelId, jn as errMsg$1, jt as hfModelUrl, k as LABEL_SUPPLY_MACRO, ln as resolvePoolMemoryPolicy, lt as containingParentIndex, mn as stepModelRunsOnFormat, n as APPLE_SA_TO_MACRO, or as string, pn as runtimeDevices$1, pt as defaultDeviceFor$1, rr as object, sr as union, vt as detectionPipelineCapability, xt as enumerateInferenceDevices, yn as supportedRuntimes$1 } from "../dist-BYCrV0VR.mjs";
3
- import { s as readProcessCost } from "../node-C_qDNN9f.mjs";
4
- import { C as resolveModelDefaultConfidence, S as landmarkPrecisionVerdict, _ as ALL_STEPS, b as getStepDefinition, f as localFrameRegistry, g as ALL_PIPELINE_STEPS, l as resolveDefaultDetectionModel, n as mergeCustomModels, o as deviceKeyOf, r as buildSubtreeCanRun, s as resolveDeviceEngine, t as CustomModelCatalog, u as macroGateVerdict, v as getDefaultModelForFormat, x as resolveModelForFormat, y as getStep } from "../custom-model-catalog-ihWAlDr4.mjs";
2
+ import { An as BaseAddon, Bn as hfModelUrl, F as PoolMemoryWatchdog, Gt as pickClusterStepSettings, In as createEvent, Jt as pipelineExecutorCapability, Kn as nodePin, Nt as loadContributionCapability, O as LABEL_SUPPLY_MACRO, On as errMsg$1, Ut as overlayClusterStepSettings, Vn as hydrateSchema, Vt as modelBindingKey, X as applyModelBoundSettings, Yn as sleep, Zn as array, bt as evaluateZoneRules, cr as EventCategory, d as CLUSTER_MODEL_SCOPED_STEPS, dn as stepModelRunsOnFormat, dt as defaultDeviceFor$1, g as DEFAULT_CLUSTER_STEP_SETTINGS, gn as supportedRuntimes$1, gt as detectionPipelineCapability, jt as linkedLabelStepId, ln as rootSuppliesOf, n as APPLE_SA_TO_MACRO, on as resolvePoolMemoryPolicy, or as string, ot as collectModelBoundKeys, q as YAMNET_TO_MACRO, rr as object, sr as union, st as containingParentIndex, tn as resolveClusterStepModelId, un as runtimeDevices$1, yt as enumerateInferenceDevices } from "../dist-73R05PFN.mjs";
3
+ import { s as readProcessCost } from "../node-C0-Ik_JH.mjs";
4
+ import { C as resolveModelDefaultConfidence, S as landmarkPrecisionVerdict, _ as ALL_STEPS, b as getStepDefinition, f as localFrameRegistry, g as ALL_PIPELINE_STEPS, l as resolveDefaultDetectionModel, n as mergeCustomModels, o as deviceKeyOf, r as buildSubtreeCanRun, s as resolveDeviceEngine, t as CustomModelCatalog, u as macroGateVerdict, v as getDefaultModelForFormat, x as resolveModelForFormat, y as getStep } from "../custom-model-catalog-DWFL7iBE.mjs";
5
5
  import { t as getSharp } from "../lazy-sharp-DXsqwpph.mjs";
6
- import { n as pickNodePlatformArch, t as readProcessMemory } from "../process-memory-B3lkW9H-.mjs";
6
+ import { n as pickNodePlatformArch, t as readProcessMemory } from "../process-memory-DKKVQV5j.mjs";
7
7
  import * as os$1 from "node:os";
8
8
  import * as fs from "node:fs";
9
9
  import * as path$1 from "node:path";
@@ -5387,7 +5387,7 @@ var ZodIssueCode = {
5387
5387
  var ZodFirstPartyTypeKind;
5388
5388
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5389
5389
  //#endregion
5390
- //#region ../types/dist/sleep-BjDbnx6-.mjs
5390
+ //#region ../types/dist/sleep-vWTnHq9G.mjs
5391
5391
  /**
5392
5392
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5393
5393
  * window to float samples (D455).
@@ -8101,6 +8101,21 @@ var ProfileRtspEntrySchema = object({
8101
8101
  resolution: CamStreamResolutionSchema.optional()
8102
8102
  });
8103
8103
  /**
8104
+ * The model weight formats a catalog entry can ship. Schema-free on purpose:
8105
+ * `types/models.ts` builds Zod schemas from it, but a runner-closure consumer
8106
+ * (the model downloader in `@camstack/system`) needs only the list and must
8107
+ * reach it through `@camstack/types/addon` without building the cap schema
8108
+ * graph (D28).
8109
+ */
8110
+ var MODEL_FORMATS = [
8111
+ "onnx",
8112
+ "coreml",
8113
+ "openvino",
8114
+ "tflite",
8115
+ "pt",
8116
+ "gguf"
8117
+ ];
8118
+ /**
8104
8119
  * Per-call node pinning for `ctx.api` capability calls.
8105
8120
  *
8106
8121
  * A capability call normally resolves to its DEFAULT provider — a `singleton`
@@ -8337,6 +8352,8 @@ method(object({ deviceId: number() }), array(StreamSourceEntrySchema)), method(o
8337
8352
  kind: "mutation",
8338
8353
  auth: "admin"
8339
8354
  }), method(object({ deviceId: number() }), unknown().nullable()), method(object({ deviceId: number() }), RawStateResultSchema.nullable(), { auth: "protected" });
8355
+ var HF_REPO = "camstack/camstack-models";
8356
+ `${HF_REPO}`;
8340
8357
  /**
8341
8358
  * The ONE retry schedule for work that can fail simply because the node was
8342
8359
  * still booting.
@@ -8371,6 +8388,9 @@ var BOOT_RECOVERY_BACKOFF_MS = [
8371
8388
  60 * 6e4,
8372
8389
  90 * 6e4
8373
8390
  ];
8391
+ function hfModelUrl(repo, path) {
8392
+ return `https://huggingface.co/${repo}/resolve/main/${path}`;
8393
+ }
8374
8394
  /**
8375
8395
  * Names that, when used as URL query parameters, almost certainly carry
8376
8396
  * a secret. Matching is case-insensitive and anchored to the full param
@@ -8799,7 +8819,7 @@ function errMsg(err) {
8799
8819
  return String(err);
8800
8820
  }
8801
8821
  //#endregion
8802
- //#region ../types/dist/composition-Bzr7GwgP.mjs
8822
+ //#region ../types/dist/composition-C-WpVYTX.mjs
8803
8823
  var AUDIO_ENCODER_BY_CODEC = {
8804
8824
  opus: "libopus",
8805
8825
  aac: "aac",
@@ -9558,7 +9578,7 @@ var BASE = `https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v${FFM
9558
9578
  function portable(target) {
9559
9579
  return `${BASE}/jellyfin-ffmpeg_${FFMPEG_RELEASE}_portable_${target}-gpl.tar.xz`;
9560
9580
  }
9561
- portable("linux64"), portable("linuxarm64"), portable("macarm64"), portable("mac64");
9581
+ portable("linux64"), portable("linuxarm64"), portable("macarm64"), portable("mac64"), `${BASE}${FFMPEG_RELEASE}`;
9562
9582
  /**
9563
9583
  * THE table "which boolean of this device type counts as HIGH", and the
9564
9584
  * pure evaluator of its EDGE.
@@ -14187,14 +14207,6 @@ function containingParentIndex(child, parents) {
14187
14207
  });
14188
14208
  return best;
14189
14209
  }
14190
- var MODEL_FORMATS = [
14191
- "onnx",
14192
- "coreml",
14193
- "openvino",
14194
- "tflite",
14195
- "pt",
14196
- "gguf"
14197
- ];
14198
14210
  /**
14199
14211
  * Multi-file format payload.
14200
14212
  *
@@ -44779,8 +44791,6 @@ Object.freeze({
44779
44791
  vehicle: .65,
44780
44792
  animal: .65
44781
44793
  });
44782
- var HF_REPO = "camstack/camstack-models";
44783
- `${HF_REPO}`;
44784
44794
  /**
44785
44795
  * Accessory device helpers — shared across drivers.
44786
44796
  *
@@ -58181,9 +58191,6 @@ var BackgroundRunRegistry = class {
58181
58191
  }
58182
58192
  }
58183
58193
  };
58184
- function hfModelUrl(repo, path) {
58185
- return `https://huggingface.co/${repo}/resolve/main/${path}`;
58186
- }
58187
58194
  var MB = 1024 * 1024;
58188
58195
  var DEFAULT_POOL_MEMORY_POLICY = {
58189
58196
  sampleIntervalMs: 6e4,
@@ -58624,7 +58631,7 @@ var RUNTIMES = [
58624
58631
  value: "cuda",
58625
58632
  label: "CUDA"
58626
58633
  });
58627
- if (hw.gpu?.type === "amd") out.push({
58634
+ if (hw.gpu?.type === "amd" && hw.platform === "linux") out.push({
58628
58635
  value: "webgpu",
58629
58636
  label: "WebGPU (AMD iGPU)"
58630
58637
  });
@@ -58753,7 +58760,7 @@ function scoreRuntimes(hw) {
58753
58760
  });
58754
58761
  }
58755
58762
  if (hw.gpu?.type === "amd") {
58756
- scores.push({
58763
+ if (hw.platform === "linux") scores.push({
58757
58764
  runtime: "python",
58758
58765
  backend: "onnx",
58759
58766
  format: "onnx",
@@ -58846,4 +58853,4 @@ function enumerateInferenceDevices(hw) {
58846
58853
  return out;
58847
58854
  }
58848
58855
  //#endregion
58849
- export { audioAnalysisCapability as $, discriminatedUnion as $n, rankStreams as $t, LABEL_SUPPLY_VOCABULARIES as A, DeviceType as An, gifFromMp4Args as At, RECORDING_EXPORT_MAX_READ_BYTES as B, expandAudioChunkToF32le as Bn, mayWriteToLocation as Bt, EVENT_PAD_MS as C, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as Cn, evictionPolicyForMode as Ct, G711_SCALE_CORRECTION_DB as D, invocationFromEncodeProfile as Dn, ffmpegRate as Dt, FailureCounters as E, evaluateSensorEdge as En, failureContributionCapability as Et, OpsLogEntrySchema as F, CamProfileSchema as Fn, linkedStepOf as Ft, RecordingSignalStatusSchema as G, maskUrlCredentials as Gn, motionDetectionCapability as Gt, RECORDING_SOURCE_CAMSTACK_ADDON as H, isEvent as Hn, migrateLegacyDeviceSignalConfig as Ht, PIPELINE_RAMP as I, audioChunkBytesPerSample as In, loadContributionCapability as It, VISIT_MERGE_GAP_MS as J, selectAssignedProfileSlots as Jn, pickClusterStepSettings as Jt, RingBuffer as K, nodePin as Kn, overlayClusterStepSettings as Kt, PoolMemoryWatchdog as L, createEvent as Ln, logChannelsCapability as Lt, NativeLeaseAdmissionSchema as M, BOOT_RECOVERY_BACKOFF_MS as Mn, inferModelProvider as Mt, NativeLeaseSettingsSchema as N, BaseAddon as Nn, isFirstLevelMacroClass as Nt, HF_REPO as O, isSoftwareDecode as On, gbToBytes as Ot, NodeBenchRunnerInputSchema as P, CAM_PROFILE_ORDER as Pn, linkedLabelStepId as Pt, applyModelBoundSettings as Q, boolean as Qn, pipelineRunnerCapability as Qt, RATE_CONTROL_RELAXED as R, customAction as Rn, mapAudioLabelToMacro as Rt, EVENT_OWNER_TYPES as S, AUDIO_PRESETS as Sn, evaluateZoneRules as St, ExportRecordSchema as T, buildFfmpegArgs as Tn, exportSubjectOf as Tt, ROOT_SUPPLIABLE_STEP_IDS as U, makeProfileBrokerId as Un, modeMayWrite as Ut, RECORDING_SOURCE_CAMSTACK as V, hydrateSchema as Vn, memoizePinnedFfmpeg as Vt, RecordingConfigSchema as W, makeSourceBrokerId as Wn, modelBindingKey as Wt, addonWidgetsSourceCapability as X, _enum as Xn, pickNativeLeaseOverride as Xt, YAMNET_TO_MACRO as Y, sleep as Yn, pickDetailCropConvention as Yt, allowedSuppliedEffect as Z, array as Zn, pipelineExecutorCapability as Zt, DEFAULT_DETAIL_CROP_CONVENTION as _, streamBrokerCapability as _n, deriveRootFaceRefineRect as _t, BackgroundRunRegistry as a, resolveCreateExportSubject as an, record as ar, cameraStreamsCapability as at, DEVICE_BACKEND_TO_FORMAT as b, videoclipsCapability as bn, egressTransportFromRequest as bt, CLIP_STILL_REASON_CODE_HEADER as c, resolveModelBoundSetting as cn, EventCategory as cr, collectModelBoundKeys as ct, CLUSTER_MODEL_SCOPED_STEPS as d, resolveRootSupply as dn, createLogChannelsProvider as dt, recordingArchiveCapability as en, lazy as er, audioAnalyzerCapability as et, COCO_80_LABELS as f, rootSuppliesOf as fn, declareLogChannel as ft, DEFAULT_CLUSTER_STEP_SETTINGS as g, storageOccupancyCapability as gn, deriveRecordingMode as gt, DEFAULT_AUDIO_ANALYZER_CONFIG as h, storageEvictableCapability as hn, deriveDetailCropRect as ht, AUDIO_MACRO_LABELS as i, resolveClusterStepModelId as in, preprocess as ir, cameraOwnsMotionViaSensor as it, MODEL_FORMATS as j, errMsg as jn, hfModelUrl as jt, LABEL_SUPPLY_MACRO as k, DeviceFeature as kn, gifDeriveSpeed as kt, CLIP_STILL_REASON_HEADER as l, resolvePoolMemoryPolicy as ln, containingParentIndex as lt, CROP_SUPPLY_SOURCES as m, stepModelRunsOnFormat as mn, deriveBatteryPresence as mt, APPLE_SA_TO_MACRO as n, recordingExportCapability as nn, number as nr, batteryCapability as nt, BatteryStatusSchema as o, resolveEgressDecodeHwAccel as on, string as or, clipExportFailure as ot, COCO_TO_MACRO as p, runtimeDevices as pn, defaultDeviceFor as pt, VIDEOCLIPS_MAX_OFFER_BYTES as q, parseProfileBrokerId as qn, parseProcStatus as qt, AUDIO_BACKEND_CHOICES as r, recordingSignalCapability as rn, object as rr, buildBenchStepTree as rt, CLIP_BROKER_PACED_RATES as s, resolveLocationMode as sn, union as sr, clipExportFailureOf as st, APPEARANCE_BLOCKS as t, recordingCapability as tn, literal as tr, audioKindId as tt, CLIP_STREAM_TRANSPORT_HEADER as u, resolveRecordingProfiles as un, createHwAccelCache as ut, DEFAULT_EVENTS_BAND_BUFFER_SEC as v, stripRetiredBandPreBufferSec as vn, detectionPipelineCapability as vt, EncodeProfileSchema as w, Fmp4BoxSplitter as wn, evictionPolicyOfLocation as wt, DEVICE_RAMP as x, webrtcSessionCapability as xn, enumerateInferenceDevices as xt, DEFAULT_NATIVE_LEASE_SETTINGS as y, supportedRuntimes as yn, egressTranscodeSharingKey as yt, RATE_CONTROL_TIGHT as z, defineCustomActions as zn, mayReadLocation as zt };
58856
+ export { audioKindId as $, discriminatedUnion as $n, recordingExportCapability as $t, NativeLeaseAdmissionSchema as A, BaseAddon as An, isFirstLevelMacroClass as At, RECORDING_SOURCE_CAMSTACK_ADDON as B, hfModelUrl as Bn, modeMayWrite as Bt, EVENT_PAD_MS as C, evaluateSensorEdge as Cn, exportSubjectOf as Ct, G711_SCALE_CORRECTION_DB as D, DeviceType as Dn, gifDeriveSpeed as Dt, FailureCounters as E, DeviceFeature as En, gbToBytes as Et, PoolMemoryWatchdog as F, audioChunkBytesPerSample as Fn, mapAudioLabelToMacro as Ft, VIDEOCLIPS_MAX_OFFER_BYTES as G, maskUrlCredentials as Gn, pickClusterStepSettings as Gt, RecordingConfigSchema as H, isEvent as Hn, motionDetectionCapability as Ht, RATE_CONTROL_RELAXED as I, createEvent as In, mayReadLocation as It, addonWidgetsSourceCapability as J, selectAssignedProfileSlots as Jn, pipelineExecutorCapability as Jt, VISIT_MERGE_GAP_MS as K, nodePin as Kn, pickDetailCropConvention as Kt, RATE_CONTROL_TIGHT as L, customAction as Ln, mayWriteToLocation as Lt, NodeBenchRunnerInputSchema as M, CamProfileSchema as Mn, linkedStepOf as Mt, OpsLogEntrySchema as N, HF_REPO as Nn, loadContributionCapability as Nt, LABEL_SUPPLY_MACRO as O, errMsg as On, gifFromMp4Args as Ot, PIPELINE_RAMP as P, MODEL_FORMATS as Pn, logChannelsCapability as Pt, audioAnalyzerCapability as Q, boolean as Qn, recordingCapability as Qt, RECORDING_EXPORT_MAX_READ_BYTES as R, defineCustomActions as Rn, memoizePinnedFfmpeg as Rt, EVENT_OWNER_TYPES as S, buildFfmpegArgs as Sn, evictionPolicyOfLocation as St, ExportRecordSchema as T, isSoftwareDecode as Tn, ffmpegRate as Tt, RecordingSignalStatusSchema as U, makeProfileBrokerId as Un, overlayClusterStepSettings as Ut, ROOT_SUPPLIABLE_STEP_IDS as V, hydrateSchema as Vn, modelBindingKey as Vt, RingBuffer as W, makeSourceBrokerId as Wn, parseProcStatus as Wt, applyModelBoundSettings as X, _enum as Xn, rankStreams as Xt, allowedSuppliedEffect as Y, sleep as Yn, pipelineRunnerCapability as Yt, audioAnalysisCapability as Z, array as Zn, recordingArchiveCapability as Zt, DEFAULT_DETAIL_CROP_CONVENTION as _, videoclipsCapability as _n, egressTranscodeSharingKey as _t, BackgroundRunRegistry as a, resolveModelBoundSetting as an, record as ar, clipExportFailureOf as at, DEVICE_BACKEND_TO_FORMAT as b, DEFAULT_FIRST_SIGHTING_FRESHNESS_MS as bn, evaluateZoneRules as bt, CLIP_STILL_REASON_CODE_HEADER as c, resolveRootSupply as cn, EventCategory as cr, createHwAccelCache as ct, CLUSTER_MODEL_SCOPED_STEPS as d, stepModelRunsOnFormat as dn, defaultDeviceFor as dt, recordingSignalCapability as en, lazy as er, batteryCapability as et, COCO_80_LABELS as f, storageEvictableCapability as fn, deriveBatteryPresence as ft, DEFAULT_CLUSTER_STEP_SETTINGS as g, supportedRuntimes as gn, detectionPipelineCapability as gt, DEFAULT_AUDIO_ANALYZER_CONFIG as h, stripRetiredBandPreBufferSec as hn, deriveRootFaceRefineRect as ht, AUDIO_MACRO_LABELS as i, resolveLocationMode as in, preprocess as ir, clipExportFailure as it, NativeLeaseSettingsSchema as j, CAM_PROFILE_ORDER as jn, linkedLabelStepId as jt, LABEL_SUPPLY_VOCABULARIES as k, BOOT_RECOVERY_BACKOFF_MS as kn, inferModelProvider as kt, CLIP_STILL_REASON_HEADER as l, rootSuppliesOf as ln, createLogChannelsProvider as lt, CROP_SUPPLY_SOURCES as m, streamBrokerCapability as mn, deriveRecordingMode as mt, APPLE_SA_TO_MACRO as n, resolveCreateExportSubject as nn, number as nr, cameraOwnsMotionViaSensor as nt, BatteryStatusSchema as o, resolvePoolMemoryPolicy as on, string as or, collectModelBoundKeys as ot, COCO_TO_MACRO as p, storageOccupancyCapability as pn, deriveDetailCropRect as pt, YAMNET_TO_MACRO as q, parseProfileBrokerId as qn, pickNativeLeaseOverride as qt, AUDIO_BACKEND_CHOICES as r, resolveEgressDecodeHwAccel as rn, object as rr, cameraStreamsCapability as rt, CLIP_BROKER_PACED_RATES as s, resolveRecordingProfiles as sn, union as sr, containingParentIndex as st, APPEARANCE_BLOCKS as t, resolveClusterStepModelId as tn, literal as tr, buildBenchStepTree as tt, CLIP_STREAM_TRANSPORT_HEADER as u, runtimeDevices as un, declareLogChannel as ut, DEFAULT_EVENTS_BAND_BUFFER_SEC as v, webrtcSessionCapability as vn, egressTransportFromRequest as vt, EncodeProfileSchema as w, invocationFromEncodeProfile as wn, failureContributionCapability as wt, DEVICE_RAMP as x, Fmp4BoxSplitter as xn, evictionPolicyForMode as xt, DEFAULT_NATIVE_LEASE_SETTINGS as y, AUDIO_PRESETS as yn, enumerateInferenceDevices as yt, RECORDING_SOURCE_CAMSTACK as z, expandAudioChunkToF32le as zn, migrateLegacyDeviceSignalConfig as zt };
@@ -5387,7 +5387,7 @@ var ZodIssueCode = {
5387
5387
  var ZodFirstPartyTypeKind;
5388
5388
  ZodFirstPartyTypeKind || (ZodFirstPartyTypeKind = {});
5389
5389
  //#endregion
5390
- //#region ../types/dist/sleep-BjDbnx6-.mjs
5390
+ //#region ../types/dist/sleep-vWTnHq9G.mjs
5391
5391
  /**
5392
5392
  * The audio chunk plane's byte format, and the ONE expansion from a coded
5393
5393
  * window to float samples (D455).
@@ -8101,6 +8101,21 @@ var ProfileRtspEntrySchema = object({
8101
8101
  resolution: CamStreamResolutionSchema.optional()
8102
8102
  });
8103
8103
  /**
8104
+ * The model weight formats a catalog entry can ship. Schema-free on purpose:
8105
+ * `types/models.ts` builds Zod schemas from it, but a runner-closure consumer
8106
+ * (the model downloader in `@camstack/system`) needs only the list and must
8107
+ * reach it through `@camstack/types/addon` without building the cap schema
8108
+ * graph (D28).
8109
+ */
8110
+ var MODEL_FORMATS = [
8111
+ "onnx",
8112
+ "coreml",
8113
+ "openvino",
8114
+ "tflite",
8115
+ "pt",
8116
+ "gguf"
8117
+ ];
8118
+ /**
8104
8119
  * Per-call node pinning for `ctx.api` capability calls.
8105
8120
  *
8106
8121
  * A capability call normally resolves to its DEFAULT provider — a `singleton`
@@ -8337,6 +8352,8 @@ method(object({ deviceId: number() }), array(StreamSourceEntrySchema)), method(o
8337
8352
  kind: "mutation",
8338
8353
  auth: "admin"
8339
8354
  }), method(object({ deviceId: number() }), unknown().nullable()), method(object({ deviceId: number() }), RawStateResultSchema.nullable(), { auth: "protected" });
8355
+ var HF_REPO = "camstack/camstack-models";
8356
+ `${HF_REPO}`;
8340
8357
  /**
8341
8358
  * The ONE retry schedule for work that can fail simply because the node was
8342
8359
  * still booting.
@@ -8371,6 +8388,9 @@ var BOOT_RECOVERY_BACKOFF_MS = [
8371
8388
  60 * 6e4,
8372
8389
  90 * 6e4
8373
8390
  ];
8391
+ function hfModelUrl(repo, path) {
8392
+ return `https://huggingface.co/${repo}/resolve/main/${path}`;
8393
+ }
8374
8394
  /**
8375
8395
  * Names that, when used as URL query parameters, almost certainly carry
8376
8396
  * a secret. Matching is case-insensitive and anchored to the full param
@@ -8799,7 +8819,7 @@ function errMsg(err) {
8799
8819
  return String(err);
8800
8820
  }
8801
8821
  //#endregion
8802
- //#region ../types/dist/composition-Bzr7GwgP.mjs
8822
+ //#region ../types/dist/composition-C-WpVYTX.mjs
8803
8823
  var AUDIO_ENCODER_BY_CODEC = {
8804
8824
  opus: "libopus",
8805
8825
  aac: "aac",
@@ -9558,7 +9578,7 @@ var BASE = `https://github.com/jellyfin/jellyfin-ffmpeg/releases/download/v${FFM
9558
9578
  function portable(target) {
9559
9579
  return `${BASE}/jellyfin-ffmpeg_${FFMPEG_RELEASE}_portable_${target}-gpl.tar.xz`;
9560
9580
  }
9561
- portable("linux64"), portable("linuxarm64"), portable("macarm64"), portable("mac64");
9581
+ portable("linux64"), portable("linuxarm64"), portable("macarm64"), portable("mac64"), `${BASE}${FFMPEG_RELEASE}`;
9562
9582
  /**
9563
9583
  * THE table "which boolean of this device type counts as HIGH", and the
9564
9584
  * pure evaluator of its EDGE.
@@ -14187,14 +14207,6 @@ function containingParentIndex(child, parents) {
14187
14207
  });
14188
14208
  return best;
14189
14209
  }
14190
- var MODEL_FORMATS = [
14191
- "onnx",
14192
- "coreml",
14193
- "openvino",
14194
- "tflite",
14195
- "pt",
14196
- "gguf"
14197
- ];
14198
14210
  /**
14199
14211
  * Multi-file format payload.
14200
14212
  *
@@ -44779,8 +44791,6 @@ Object.freeze({
44779
44791
  vehicle: .65,
44780
44792
  animal: .65
44781
44793
  });
44782
- var HF_REPO = "camstack/camstack-models";
44783
- `${HF_REPO}`;
44784
44794
  /**
44785
44795
  * Accessory device helpers — shared across drivers.
44786
44796
  *
@@ -58181,9 +58191,6 @@ var BackgroundRunRegistry = class {
58181
58191
  }
58182
58192
  }
58183
58193
  };
58184
- function hfModelUrl(repo, path) {
58185
- return `https://huggingface.co/${repo}/resolve/main/${path}`;
58186
- }
58187
58194
  var MB = 1024 * 1024;
58188
58195
  var DEFAULT_POOL_MEMORY_POLICY = {
58189
58196
  sampleIntervalMs: 6e4,
@@ -58624,7 +58631,7 @@ var RUNTIMES = [
58624
58631
  value: "cuda",
58625
58632
  label: "CUDA"
58626
58633
  });
58627
- if (hw.gpu?.type === "amd") out.push({
58634
+ if (hw.gpu?.type === "amd" && hw.platform === "linux") out.push({
58628
58635
  value: "webgpu",
58629
58636
  label: "WebGPU (AMD iGPU)"
58630
58637
  });
@@ -58753,7 +58760,7 @@ function scoreRuntimes(hw) {
58753
58760
  });
58754
58761
  }
58755
58762
  if (hw.gpu?.type === "amd") {
58756
- scores.push({
58763
+ if (hw.platform === "linux") scores.push({
58757
58764
  runtime: "python",
58758
58765
  backend: "onnx",
58759
58766
  format: "onnx",
@@ -1,4 +1,4 @@
1
- const require_dist = require("./dist-CYakbWA8.js");
1
+ const require_dist = require("./dist-DFGiI5lr.js");
2
2
  //#region src/detection-pipeline/registry/model-licenses.ts
3
3
  var COCO_DATA = {
4
4
  name: "COCO 2017",
@@ -1,4 +1,4 @@
1
- import { jt as hfModelUrl } from "./dist-BYCrV0VR.mjs";
1
+ import { Bn as hfModelUrl } from "./dist-73R05PFN.mjs";
2
2
  //#region src/detection-pipeline/registry/model-licenses.ts
3
3
  var COCO_DATA = {
4
4
  name: "COCO 2017",
@@ -2,7 +2,7 @@ Object.defineProperties(exports, {
2
2
  __esModule: { value: true },
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
- const require_dist = require("../dist-CYakbWA8.js");
5
+ const require_dist = require("../dist-DFGiI5lr.js");
6
6
  const require_lazy_sharp = require("../lazy-sharp-BuwKlQLR.js");
7
7
  let node_fs = require("node:fs");
8
8
  let node_path = require("node:path");
@@ -1,4 +1,4 @@
1
- import { An as DeviceType, Gt as motionDetectionCapability, Nn as BaseAddon, St as evaluateZoneRules, Vn as hydrateSchema } from "../dist-BYCrV0VR.mjs";
1
+ import { An as BaseAddon, Dn as DeviceType, Ht as motionDetectionCapability, Vn as hydrateSchema, bt as evaluateZoneRules } from "../dist-73R05PFN.mjs";
2
2
  import { t as getSharp } from "../lazy-sharp-DXsqwpph.mjs";
3
3
  import { readFileSync } from "node:fs";
4
4
  import { join } from "node:path";
@@ -1,10 +1,11 @@
1
- import { On as isSoftwareDecode, Tn as buildFfmpegArgs, jn as errMsg, wn as Fmp4BoxSplitter } from "./dist-BYCrV0VR.mjs";
1
+ import { On as errMsg, Sn as buildFfmpegArgs, Tn as isSoftwareDecode, xn as Fmp4BoxSplitter } from "./dist-73R05PFN.mjs";
2
2
  import { randomUUID } from "node:crypto";
3
3
  import { realpathSync } from "node:fs";
4
4
  import path from "node:path";
5
5
  import { execFile } from "node:child_process";
6
+ import "node:zlib";
6
7
  import { readFile } from "node:fs/promises";
7
- //#region ../types/dist/node.mjs
8
+ process.platform, process.env["SystemRoot"];
8
9
  /**
9
10
  * What an ffmpeg binary can actually DO, asked of the binary itself.
10
11
  *
@@ -1,13 +1,15 @@
1
1
  const require_chunk = require("./chunk-emK7D4bc.js");
2
- const require_dist = require("./dist-CYakbWA8.js");
2
+ const require_dist = require("./dist-DFGiI5lr.js");
3
+ require("node:os");
3
4
  let node_crypto = require("node:crypto");
4
5
  let node_fs = require("node:fs");
5
6
  node_fs = require_chunk.__toESM(node_fs, 1);
6
7
  let node_path = require("node:path");
7
8
  node_path = require_chunk.__toESM(node_path, 1);
8
9
  let node_child_process = require("node:child_process");
10
+ require("node:zlib");
9
11
  let node_fs_promises = require("node:fs/promises");
10
- //#region ../types/dist/node.mjs
12
+ process.platform, process.env["SystemRoot"];
11
13
  /**
12
14
  * What an ffmpeg binary can actually DO, asked of the binary itself.
13
15
  *
@@ -3,9 +3,9 @@ Object.defineProperties(exports, {
3
3
  [Symbol.toStringTag]: { value: "Module" }
4
4
  });
5
5
  const require_chunk = require("../chunk-emK7D4bc.js");
6
- const require_dist = require("../dist-CYakbWA8.js");
7
- const require_node = require("../node-CTCm8Vtw.js");
8
- const require_custom_model_catalog = require("../custom-model-catalog-K9Hx82GZ.js");
6
+ const require_dist = require("../dist-DFGiI5lr.js");
7
+ const require_node = require("../node-CdOP9ELN.js");
8
+ const require_custom_model_catalog = require("../custom-model-catalog-BsuqZLaN.js");
9
9
  const require_hub_hostname = require("../hub-hostname-DAJXlOgV.js");
10
10
  const require_lazy_sharp = require("../lazy-sharp-BuwKlQLR.js");
11
11
  const require_restream_intent = require("../restream-intent-7uDNqMKs.js");
@@ -1,6 +1,6 @@
1
- import { E as FailureCounters, Et as failureContributionCapability, Ft as linkedStepOf, I as PIPELINE_RAMP, It as loadContributionCapability, Kn as nodePin, Ln as createEvent, M as NativeLeaseAdmissionSchema, N as NativeLeaseSettingsSchema, Nn as BaseAddon, P as NodeBenchRunnerInputSchema, Qn as boolean, Qt as pipelineRunnerCapability, Rn as customAction, U as ROOT_SUPPLIABLE_STEP_IDS, Xn as _enum, Xt as pickNativeLeaseOverride, Yt as pickDetailCropConvention, Z as allowedSuppliedEffect, Zn as array, _ as DEFAULT_DETAIL_CROP_CONVENTION, _t as deriveRootFaceRefineRect, a as BackgroundRunRegistry, cn as resolveModelBoundSetting, cr as EventCategory, dn as resolveRootSupply, er as lazy, fn as rootSuppliesOf, ht as deriveDetailCropRect, it as cameraOwnsMotionViaSensor, j as MODEL_FORMATS, jn as errMsg, m as CROP_SUPPLY_SOURCES, nr as number, or as string, rr as object, rt as buildBenchStepTree, tr as literal, x as DEVICE_RAMP, y as DEFAULT_NATIVE_LEASE_SETTINGS, zn as defineCustomActions } from "../dist-BYCrV0VR.mjs";
2
- import { i as NO_COST_CLAIM, t as ChildCostRegistry } from "../node-C_qDNN9f.mjs";
3
- import { a as stepsForElectedPool, b as getStepDefinition, d as rootObjectGate, f as localFrameRegistry, h as resolveFrameViewGeometry, i as placeDetailStep, l as resolveDefaultDetectionModel, m as createSessionDecodeCoordinator, p as isSessionDecodeReadGone, s as resolveDeviceEngine, t as CustomModelCatalog, u as macroGateVerdict, y as getStep } from "../custom-model-catalog-ihWAlDr4.mjs";
1
+ import { A as NativeLeaseAdmissionSchema, An as BaseAddon, E as FailureCounters, In as createEvent, Kn as nodePin, Kt as pickDetailCropConvention, Ln as customAction, M as NodeBenchRunnerInputSchema, Mt as linkedStepOf, Nt as loadContributionCapability, On as errMsg, P as PIPELINE_RAMP, Pn as MODEL_FORMATS, Qn as boolean, Rn as defineCustomActions, V as ROOT_SUPPLIABLE_STEP_IDS, Xn as _enum, Y as allowedSuppliedEffect, Yt as pipelineRunnerCapability, Zn as array, _ as DEFAULT_DETAIL_CROP_CONVENTION, a as BackgroundRunRegistry, an as resolveModelBoundSetting, cn as resolveRootSupply, cr as EventCategory, er as lazy, ht as deriveRootFaceRefineRect, j as NativeLeaseSettingsSchema, ln as rootSuppliesOf, m as CROP_SUPPLY_SOURCES, nr as number, nt as cameraOwnsMotionViaSensor, or as string, pt as deriveDetailCropRect, qt as pickNativeLeaseOverride, rr as object, tr as literal, tt as buildBenchStepTree, wt as failureContributionCapability, x as DEVICE_RAMP, y as DEFAULT_NATIVE_LEASE_SETTINGS } from "../dist-73R05PFN.mjs";
2
+ import { i as NO_COST_CLAIM, t as ChildCostRegistry } from "../node-C0-Ik_JH.mjs";
3
+ import { a as stepsForElectedPool, b as getStepDefinition, d as rootObjectGate, f as localFrameRegistry, h as resolveFrameViewGeometry, i as placeDetailStep, l as resolveDefaultDetectionModel, m as createSessionDecodeCoordinator, p as isSessionDecodeReadGone, s as resolveDeviceEngine, t as CustomModelCatalog, u as macroGateVerdict, y as getStep } from "../custom-model-catalog-DWFL7iBE.mjs";
4
4
  import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
5
5
  import { t as getSharp } from "../lazy-sharp-DXsqwpph.mjs";
6
6
  import { c as withDetectionIntent, o as preRollRequestOf, t as DETECTION_PRE_ROLL_REQUEST_MS } from "../restream-intent-DyGmLAU9.mjs";
@@ -1,4 +1,4 @@
1
- import { qt as parseProcStatus } from "./dist-BYCrV0VR.mjs";
1
+ import { Wt as parseProcStatus } from "./dist-73R05PFN.mjs";
2
2
  import * as fs from "node:fs";
3
3
  import { execFile } from "node:child_process";
4
4
  //#region src/shared/node-topology-platform.ts
@@ -1,5 +1,5 @@
1
1
  const require_chunk = require("./chunk-emK7D4bc.js");
2
- const require_dist = require("./dist-CYakbWA8.js");
2
+ const require_dist = require("./dist-DFGiI5lr.js");
3
3
  let node_fs = require("node:fs");
4
4
  node_fs = require_chunk.__toESM(node_fs);
5
5
  let node_child_process = require("node:child_process");