@camstack/addon-pipeline 1.2.77 → 1.2.78
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-utils-bZcwLaVW.js → addon-utils-C-XbUkiG.js} +1 -1
- package/dist/audio-analyzer/index.js +2 -2
- package/dist/audio-analyzer/index.mjs +1 -1
- package/dist/detection-pipeline/index.js +4 -4
- package/dist/detection-pipeline/index.mjs +2 -2
- package/dist/{dist-DQZzL0Ri.js → dist-BdVCXl5n.js} +74 -5
- package/dist/{dist-HhcoV-Ky.mjs → dist-CsP_DikG.mjs} +74 -5
- package/dist/{event-loop-stall-monitor-CBOo1oh_.js → event-loop-stall-monitor-BOu8lGee.js} +1 -1
- package/dist/{event-loop-stall-monitor-CqBEWGSZ.mjs → event-loop-stall-monitor-C3cvE_Xk.mjs} +1 -1
- package/dist/{lazy-sharp-DIC1rpea.js → lazy-sharp-1LkmyWqV.js} +1 -1
- package/dist/motion-wasm/index.js +2 -2
- package/dist/motion-wasm/index.mjs +1 -1
- package/dist/pipeline-runner/index.js +4 -4
- package/dist/pipeline-runner/index.mjs +3 -3
- package/dist/recorder/index.js +293 -34
- package/dist/recorder/index.mjs +292 -33
- package/dist/session-decode/decode-worker-child.js +2 -2
- package/dist/session-decode/decode-worker-child.mjs +1 -1
- package/dist/stream-broker/_stub.js +1 -1
- package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-De_xzvjU.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-DUi-lR4R.mjs} +1 -1
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-1QMyGZMB.mjs +26 -0
- package/dist/stream-broker/{hostInit-CDS5frmk.mjs → hostInit-DEtsjgBO.mjs} +1 -1
- package/dist/stream-broker/index.js +106 -23
- package/dist/stream-broker/index.mjs +106 -23
- package/dist/stream-broker/remoteEntry.js +1 -1
- package/dist/{worker-protocol-DZVGVAPU.js → worker-protocol-B4fPjmXk.js} +1 -1
- package/dist/{worker-protocol-BNlLGLBV.mjs → worker-protocol-BRwzX3f_.mjs} +1 -1
- package/package.json +1 -1
- package/dist/stream-broker/_virtual_mf___mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js-DHJSxHH1.mjs +0 -26
|
@@ -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-
|
|
5
|
+
const require_dist = require("../dist-BdVCXl5n.js");
|
|
6
6
|
const require_remote_restream = require("../remote-restream-BYbAsgUf.js");
|
|
7
7
|
let node_crypto = require("node:crypto");
|
|
8
8
|
node_crypto = require_dist.__toESM(node_crypto, 1);
|
|
@@ -22539,11 +22539,19 @@ var MonotonicClock = class {
|
|
|
22539
22539
|
this.rate = rate;
|
|
22540
22540
|
}
|
|
22541
22541
|
};
|
|
22542
|
+
var SCRUB_FRAGMENT_CACHE_MAX_BYTES = 2 * 1024 * 1024;
|
|
22543
|
+
/** Demuxed bytes an entry holds — what the byte bound actually counts. */
|
|
22544
|
+
function fragmentBytes(frag) {
|
|
22545
|
+
let total = 0;
|
|
22546
|
+
for (const au of frag.aus) total += au.data.length;
|
|
22547
|
+
return total;
|
|
22548
|
+
}
|
|
22542
22549
|
var ScrubFragmentCache = class {
|
|
22543
|
-
|
|
22550
|
+
maxBytes;
|
|
22544
22551
|
map = /* @__PURE__ */ new Map();
|
|
22545
|
-
|
|
22546
|
-
|
|
22552
|
+
bytes = 0;
|
|
22553
|
+
constructor(maxBytes = SCRUB_FRAGMENT_CACHE_MAX_BYTES) {
|
|
22554
|
+
this.maxBytes = maxBytes;
|
|
22547
22555
|
}
|
|
22548
22556
|
key(profile, startMs) {
|
|
22549
22557
|
return `${profile}|${startMs}`;
|
|
@@ -22574,17 +22582,26 @@ var ScrubFragmentCache = class {
|
|
|
22574
22582
|
}
|
|
22575
22583
|
return null;
|
|
22576
22584
|
}
|
|
22577
|
-
/** Insert (or refresh) a fragment, evicting the oldest past the bound. */
|
|
22585
|
+
/** Insert (or refresh) a fragment, evicting the oldest past the byte bound. */
|
|
22578
22586
|
put(profile, frag) {
|
|
22579
22587
|
const k = this.key(profile, frag.startMs);
|
|
22588
|
+
const held = this.map.get(k);
|
|
22589
|
+
if (held) this.bytes -= fragmentBytes(held);
|
|
22580
22590
|
this.map.delete(k);
|
|
22581
22591
|
this.map.set(k, frag);
|
|
22582
|
-
|
|
22592
|
+
this.bytes += fragmentBytes(frag);
|
|
22593
|
+
while (this.bytes > this.maxBytes && this.map.size > 4) {
|
|
22583
22594
|
const oldest = this.map.keys().next().value;
|
|
22584
22595
|
if (oldest === void 0) break;
|
|
22596
|
+
const evicted = this.map.get(oldest);
|
|
22585
22597
|
this.map.delete(oldest);
|
|
22598
|
+
if (evicted) this.bytes -= fragmentBytes(evicted);
|
|
22586
22599
|
}
|
|
22587
22600
|
}
|
|
22601
|
+
/** Demuxed bytes currently held — the number the MB bound governs. */
|
|
22602
|
+
get byteSize() {
|
|
22603
|
+
return this.bytes;
|
|
22604
|
+
}
|
|
22588
22605
|
get size() {
|
|
22589
22606
|
return this.map.size;
|
|
22590
22607
|
}
|
|
@@ -22650,6 +22667,9 @@ var ScrubDragStats = class {
|
|
|
22650
22667
|
wholeReads = 0;
|
|
22651
22668
|
readBytes = 0;
|
|
22652
22669
|
parks = 0;
|
|
22670
|
+
prefetchReads = 0;
|
|
22671
|
+
prefetchBytes = 0;
|
|
22672
|
+
prefetchHits = 0;
|
|
22653
22673
|
ackTimeouts = 0;
|
|
22654
22674
|
failures = 0;
|
|
22655
22675
|
firstPushMs = null;
|
|
@@ -22697,6 +22717,15 @@ var ScrubDragStats = class {
|
|
|
22697
22717
|
recordPark() {
|
|
22698
22718
|
this.parks += 1;
|
|
22699
22719
|
}
|
|
22720
|
+
/** One speculative GOP read and what it cost the disk. */
|
|
22721
|
+
recordPrefetchRead(bytes) {
|
|
22722
|
+
this.prefetchReads += 1;
|
|
22723
|
+
this.prefetchBytes += bytes;
|
|
22724
|
+
}
|
|
22725
|
+
/** A tick served by a fragment speculation had already landed. */
|
|
22726
|
+
recordPrefetchHit() {
|
|
22727
|
+
this.prefetchHits += 1;
|
|
22728
|
+
}
|
|
22700
22729
|
/** Pushes written off after the ack timeout — dropped work, never silent. */
|
|
22701
22730
|
recordAckTimeout(pushes) {
|
|
22702
22731
|
this.ackTimeouts += pushes;
|
|
@@ -22750,6 +22779,9 @@ var ScrubDragStats = class {
|
|
|
22750
22779
|
travel: this.travel,
|
|
22751
22780
|
bytes: this.bytes,
|
|
22752
22781
|
parks: this.parks,
|
|
22782
|
+
prefetchReads: this.prefetchReads,
|
|
22783
|
+
prefetchBytes: this.prefetchBytes,
|
|
22784
|
+
prefetchHits: this.prefetchHits,
|
|
22753
22785
|
ackTimeouts: this.ackTimeouts,
|
|
22754
22786
|
failures: this.failures,
|
|
22755
22787
|
creditEndedAt: this.creditEndedAt,
|
|
@@ -22845,6 +22877,24 @@ var SCRUB_JUMP_TRAVEL_MAX_STILLS = 3;
|
|
|
22845
22877
|
*/
|
|
22846
22878
|
var SCRUB_PREFETCH_DIR_THRESHOLD = 2;
|
|
22847
22879
|
/**
|
|
22880
|
+
* How many speculative GOP reads may be in flight at once, i.e. how many drag
|
|
22881
|
+
* steps ahead the feeder reads.
|
|
22882
|
+
*
|
|
22883
|
+
* The scrub tick IS the read: measured on salone 590 over `low`,
|
|
22884
|
+
* `tickMsP50 = 270` of which `readMsP50 = 263` — a cold ~135 KB fragment off
|
|
22885
|
+
* the HDD array through shfs/FUSE, `demuxMsP50 = 1`. One read at a time is a
|
|
22886
|
+
* hard ~3.8 push/s ceiling no cache can lift, because a drag whose steps are
|
|
22887
|
+
* tens of seconds apart revisits nothing. Reading N steps ahead is the only
|
|
22888
|
+
* thing that converts wall-clock the drag is ALREADY spending into pushes.
|
|
22889
|
+
*
|
|
22890
|
+
* 2 and not more: these reads land on the same spindles the recorder is writing
|
|
22891
|
+
* every camera to, and past a small number concurrent random reads stop
|
|
22892
|
+
* overlapping and start thrashing. Raise it only against a measured
|
|
22893
|
+
* `prefetchHits` / `readMsP50` pair — it is the knob, and the census carries
|
|
22894
|
+
* both halves of the evidence.
|
|
22895
|
+
*/
|
|
22896
|
+
var SCRUB_PREFETCH_MAX_INFLIGHT = 2;
|
|
22897
|
+
/**
|
|
22848
22898
|
* Max forward TARGET delta (ms of timeline, between consecutive drag targets)
|
|
22849
22899
|
* that SWEEPS predicted frames instead of jumping. A steady forward drag is
|
|
22850
22900
|
* playback with a moving target: once a keyframe decoded, the predicted frames
|
|
@@ -23063,12 +23113,25 @@ var RecordedFeeder = class {
|
|
|
23063
23113
|
*/
|
|
23064
23114
|
scrubDirRun = 0;
|
|
23065
23115
|
/**
|
|
23066
|
-
*
|
|
23067
|
-
*
|
|
23068
|
-
* `scrubCache` —
|
|
23069
|
-
* state, and never
|
|
23116
|
+
* Prefetch reads in flight. Bounded by {@link SCRUB_PREFETCH_MAX_INFLIGHT}:
|
|
23117
|
+
* these are the SPECULATIVE concurrency slots, and they only fill
|
|
23118
|
+
* `scrubCache` — they never push, never touch the pending/timer/latest-wins
|
|
23119
|
+
* state, and never block the live coalesced tick.
|
|
23120
|
+
*
|
|
23121
|
+
* More than one because the read IS the tick (263 of 270 ms measured): with a
|
|
23122
|
+
* single slot the drag can never go faster than one cold read, however well
|
|
23123
|
+
* the speculation guesses.
|
|
23124
|
+
*/
|
|
23125
|
+
scrubPrefetchInFlight = 0;
|
|
23126
|
+
/** Probe instants currently being read, so two horizons never duplicate one. */
|
|
23127
|
+
scrubPrefetchProbes = /* @__PURE__ */ new Set();
|
|
23128
|
+
/**
|
|
23129
|
+
* Fragment starts this drag put in the cache SPECULATIVELY. A later tick that
|
|
23130
|
+
* hits one of them is what makes speculation provably worth its I/O
|
|
23131
|
+
* (`prefetchHits`) — without this the feeder could double the load on the disk
|
|
23132
|
+
* that is the bottleneck and the census would look calm.
|
|
23070
23133
|
*/
|
|
23071
|
-
|
|
23134
|
+
scrubPrefetched = /* @__PURE__ */ new Set();
|
|
23072
23135
|
constructor(deps) {
|
|
23073
23136
|
this.deps = deps;
|
|
23074
23137
|
this.audioClock = new MonotonicClock(deps.audioClockRateHz ?? 8e3);
|
|
@@ -23358,6 +23421,7 @@ var RecordedFeeder = class {
|
|
|
23358
23421
|
this.scrubCredit = SCRUB_CREDIT_CAP;
|
|
23359
23422
|
this.scrubPrevTarget = null;
|
|
23360
23423
|
this.scrubDirRun = 0;
|
|
23424
|
+
this.scrubPrefetched = /* @__PURE__ */ new Set();
|
|
23361
23425
|
this.scrubCursor = null;
|
|
23362
23426
|
this.scrubNoFootageLogged = false;
|
|
23363
23427
|
this.scrubParkLogged = false;
|
|
@@ -23533,7 +23597,10 @@ var RecordedFeeder = class {
|
|
|
23533
23597
|
coverage = "memo";
|
|
23534
23598
|
} else {
|
|
23535
23599
|
seg = this.scrubCache.covering(this.deps.profile, target);
|
|
23536
|
-
if (seg)
|
|
23600
|
+
if (seg) {
|
|
23601
|
+
coverage = "cache";
|
|
23602
|
+
if (this.scrubPrefetched.has(seg.startMs)) this.scrubStats?.recordPrefetchHit();
|
|
23603
|
+
}
|
|
23537
23604
|
}
|
|
23538
23605
|
if (!seg) {
|
|
23539
23606
|
const locateStartMs = performance.now();
|
|
@@ -23955,28 +24022,41 @@ var RecordedFeeder = class {
|
|
|
23955
24022
|
this.scrubDirRun = 0;
|
|
23956
24023
|
return;
|
|
23957
24024
|
}
|
|
23958
|
-
const
|
|
24025
|
+
const stepMs = target - prev;
|
|
24026
|
+
const dir = stepMs > 0 ? 1 : stepMs < 0 ? -1 : 0;
|
|
23959
24027
|
if (dir === 0) {
|
|
23960
24028
|
this.scrubDirRun = 0;
|
|
23961
24029
|
return;
|
|
23962
24030
|
}
|
|
23963
24031
|
this.scrubDirRun = Math.sign(this.scrubDirRun) === dir ? this.scrubDirRun + dir : dir;
|
|
23964
24032
|
if (Math.abs(this.scrubDirRun) < SCRUB_PREFETCH_DIR_THRESHOLD) return;
|
|
23965
|
-
|
|
23966
|
-
const
|
|
23967
|
-
|
|
23968
|
-
|
|
24033
|
+
const aheadMs = Math.max(Math.abs(stepMs), seg.durMs + 1);
|
|
24034
|
+
const horizons = Math.abs(stepMs) > seg.durMs ? SCRUB_PREFETCH_MAX_INFLIGHT : 1;
|
|
24035
|
+
for (let horizon = 1; horizon <= horizons; horizon++) {
|
|
24036
|
+
if (this.scrubPrefetchInFlight >= SCRUB_PREFETCH_MAX_INFLIGHT) return;
|
|
24037
|
+
const probeMs = target + dir * aheadMs * horizon;
|
|
24038
|
+
if (probeMs < 0) continue;
|
|
24039
|
+
if (this.scrubPrefetchProbes.has(probeMs)) continue;
|
|
24040
|
+
if (this.scrubCache.covering(this.deps.profile, probeMs)) continue;
|
|
24041
|
+
this.scrubPrefetch(probeMs, gen);
|
|
24042
|
+
}
|
|
23969
24043
|
}
|
|
23970
24044
|
/**
|
|
23971
|
-
*
|
|
23972
|
-
*
|
|
24045
|
+
* Speculative read: locate + read + demux the fragment covering `probeMs` into
|
|
24046
|
+
* `scrubCache`. Bounded by {@link SCRUB_PREFETCH_MAX_INFLIGHT}; aborts at any
|
|
23973
24047
|
* teardown (`disposed` / left scrub / a bumped `scrubToken`); a failure is
|
|
23974
|
-
* swallowed (the
|
|
24048
|
+
* swallowed (the fragment just demuxes on demand). Never pushes and never
|
|
23975
24049
|
* mutates latest-wins state.
|
|
24050
|
+
*
|
|
24051
|
+
* Every read it issues is COUNTED (`prefetchReads` / `prefetchBytes`), and the
|
|
24052
|
+
* fragment it lands is remembered so a later tick hitting it counts as a
|
|
24053
|
+
* `prefetchHit`. Speculation that cannot be shown to pay for itself is just
|
|
24054
|
+
* load on the disk the drag is already waiting for.
|
|
23976
24055
|
*/
|
|
23977
24056
|
async scrubPrefetch(probeMs, gen) {
|
|
23978
|
-
if (this.scrubPrefetchInFlight) return;
|
|
23979
|
-
this.scrubPrefetchInFlight
|
|
24057
|
+
if (this.scrubPrefetchInFlight >= SCRUB_PREFETCH_MAX_INFLIGHT) return;
|
|
24058
|
+
this.scrubPrefetchInFlight += 1;
|
|
24059
|
+
this.scrubPrefetchProbes.add(probeMs);
|
|
23980
24060
|
try {
|
|
23981
24061
|
if (this.disposed || !this.scrubbing || gen !== this.scrubToken) return;
|
|
23982
24062
|
if (this.scrubCache.covering(this.deps.profile, probeMs)) return;
|
|
@@ -23989,9 +24069,12 @@ var RecordedFeeder = class {
|
|
|
23989
24069
|
if (loc.kind !== "segment") return;
|
|
23990
24070
|
const load = await this.loadScrubFragment(loc, probeMs);
|
|
23991
24071
|
if (this.disposed || !this.scrubbing || gen !== this.scrubToken || load === null) return;
|
|
24072
|
+
this.scrubStats?.recordPrefetchRead(load.readBytes);
|
|
23992
24073
|
this.scrubCache.put(this.deps.profile, load.seg);
|
|
24074
|
+
this.scrubPrefetched.add(load.seg.startMs);
|
|
23993
24075
|
} catch {} finally {
|
|
23994
|
-
this.scrubPrefetchInFlight
|
|
24076
|
+
this.scrubPrefetchInFlight -= 1;
|
|
24077
|
+
this.scrubPrefetchProbes.delete(probeMs);
|
|
23995
24078
|
}
|
|
23996
24079
|
}
|
|
23997
24080
|
/**
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { r as __toESM, t as __commonJSMin } from "../chunk-DnnnRqeS.mjs";
|
|
2
|
-
import { At as string, Ct as boolean, D as cameraStreamsCapability, Dt as number, Et as literal, F as egressTranscodeSharingKey, I as egressTransportFromRequest, Mt as EventCategory, O as createHwAccelCache, Ot as object, Q as streamBrokerCapability, S as RingBuffer, St as array, V as maskUrlCredentials, Y as resolveEgressDecodeHwAccel, at as invocationFromEncodeProfile, ct as CAM_PROFILE_ORDER, dt as createEvent, et as webrtcSessionCapability, f as EncodeProfileSchema, gt as nodePin, ht as makeSourceBrokerId, it as buildFfmpegArgs$1, jt as union, kt as record, lt as DeviceFeature, mt as makeProfileBrokerId, nt as AUDIO_PRESETS, ot as isSoftwareDecode, pt as isEvent, rt as Fmp4BoxSplitter, st as BaseAddon, tt as errMsg, ut as DeviceType, v as RATE_CONTROL_RELAXED, vt as parseProfileBrokerId, w as addonWidgetsSourceCapability, wt as discriminatedUnion, xt as _enum, y as RATE_CONTROL_TIGHT } from "../dist-
|
|
2
|
+
import { At as string, Ct as boolean, D as cameraStreamsCapability, Dt as number, Et as literal, F as egressTranscodeSharingKey, I as egressTransportFromRequest, Mt as EventCategory, O as createHwAccelCache, Ot as object, Q as streamBrokerCapability, S as RingBuffer, St as array, V as maskUrlCredentials, Y as resolveEgressDecodeHwAccel, at as invocationFromEncodeProfile, ct as CAM_PROFILE_ORDER, dt as createEvent, et as webrtcSessionCapability, f as EncodeProfileSchema, gt as nodePin, ht as makeSourceBrokerId, it as buildFfmpegArgs$1, jt as union, kt as record, lt as DeviceFeature, mt as makeProfileBrokerId, nt as AUDIO_PRESETS, ot as isSoftwareDecode, pt as isEvent, rt as Fmp4BoxSplitter, st as BaseAddon, tt as errMsg, ut as DeviceType, v as RATE_CONTROL_RELAXED, vt as parseProfileBrokerId, w as addonWidgetsSourceCapability, wt as discriminatedUnion, xt as _enum, y as RATE_CONTROL_TIGHT } from "../dist-CsP_DikG.mjs";
|
|
3
3
|
import { n as profileForStreamId, r as parseRestreamPath } from "../remote-restream-Ci7RXNGb.mjs";
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import * as crypto$1 from "node:crypto";
|
|
@@ -22534,11 +22534,19 @@ var MonotonicClock = class {
|
|
|
22534
22534
|
this.rate = rate;
|
|
22535
22535
|
}
|
|
22536
22536
|
};
|
|
22537
|
+
var SCRUB_FRAGMENT_CACHE_MAX_BYTES = 2 * 1024 * 1024;
|
|
22538
|
+
/** Demuxed bytes an entry holds — what the byte bound actually counts. */
|
|
22539
|
+
function fragmentBytes(frag) {
|
|
22540
|
+
let total = 0;
|
|
22541
|
+
for (const au of frag.aus) total += au.data.length;
|
|
22542
|
+
return total;
|
|
22543
|
+
}
|
|
22537
22544
|
var ScrubFragmentCache = class {
|
|
22538
|
-
|
|
22545
|
+
maxBytes;
|
|
22539
22546
|
map = /* @__PURE__ */ new Map();
|
|
22540
|
-
|
|
22541
|
-
|
|
22547
|
+
bytes = 0;
|
|
22548
|
+
constructor(maxBytes = SCRUB_FRAGMENT_CACHE_MAX_BYTES) {
|
|
22549
|
+
this.maxBytes = maxBytes;
|
|
22542
22550
|
}
|
|
22543
22551
|
key(profile, startMs) {
|
|
22544
22552
|
return `${profile}|${startMs}`;
|
|
@@ -22569,17 +22577,26 @@ var ScrubFragmentCache = class {
|
|
|
22569
22577
|
}
|
|
22570
22578
|
return null;
|
|
22571
22579
|
}
|
|
22572
|
-
/** Insert (or refresh) a fragment, evicting the oldest past the bound. */
|
|
22580
|
+
/** Insert (or refresh) a fragment, evicting the oldest past the byte bound. */
|
|
22573
22581
|
put(profile, frag) {
|
|
22574
22582
|
const k = this.key(profile, frag.startMs);
|
|
22583
|
+
const held = this.map.get(k);
|
|
22584
|
+
if (held) this.bytes -= fragmentBytes(held);
|
|
22575
22585
|
this.map.delete(k);
|
|
22576
22586
|
this.map.set(k, frag);
|
|
22577
|
-
|
|
22587
|
+
this.bytes += fragmentBytes(frag);
|
|
22588
|
+
while (this.bytes > this.maxBytes && this.map.size > 4) {
|
|
22578
22589
|
const oldest = this.map.keys().next().value;
|
|
22579
22590
|
if (oldest === void 0) break;
|
|
22591
|
+
const evicted = this.map.get(oldest);
|
|
22580
22592
|
this.map.delete(oldest);
|
|
22593
|
+
if (evicted) this.bytes -= fragmentBytes(evicted);
|
|
22581
22594
|
}
|
|
22582
22595
|
}
|
|
22596
|
+
/** Demuxed bytes currently held — the number the MB bound governs. */
|
|
22597
|
+
get byteSize() {
|
|
22598
|
+
return this.bytes;
|
|
22599
|
+
}
|
|
22583
22600
|
get size() {
|
|
22584
22601
|
return this.map.size;
|
|
22585
22602
|
}
|
|
@@ -22645,6 +22662,9 @@ var ScrubDragStats = class {
|
|
|
22645
22662
|
wholeReads = 0;
|
|
22646
22663
|
readBytes = 0;
|
|
22647
22664
|
parks = 0;
|
|
22665
|
+
prefetchReads = 0;
|
|
22666
|
+
prefetchBytes = 0;
|
|
22667
|
+
prefetchHits = 0;
|
|
22648
22668
|
ackTimeouts = 0;
|
|
22649
22669
|
failures = 0;
|
|
22650
22670
|
firstPushMs = null;
|
|
@@ -22692,6 +22712,15 @@ var ScrubDragStats = class {
|
|
|
22692
22712
|
recordPark() {
|
|
22693
22713
|
this.parks += 1;
|
|
22694
22714
|
}
|
|
22715
|
+
/** One speculative GOP read and what it cost the disk. */
|
|
22716
|
+
recordPrefetchRead(bytes) {
|
|
22717
|
+
this.prefetchReads += 1;
|
|
22718
|
+
this.prefetchBytes += bytes;
|
|
22719
|
+
}
|
|
22720
|
+
/** A tick served by a fragment speculation had already landed. */
|
|
22721
|
+
recordPrefetchHit() {
|
|
22722
|
+
this.prefetchHits += 1;
|
|
22723
|
+
}
|
|
22695
22724
|
/** Pushes written off after the ack timeout — dropped work, never silent. */
|
|
22696
22725
|
recordAckTimeout(pushes) {
|
|
22697
22726
|
this.ackTimeouts += pushes;
|
|
@@ -22745,6 +22774,9 @@ var ScrubDragStats = class {
|
|
|
22745
22774
|
travel: this.travel,
|
|
22746
22775
|
bytes: this.bytes,
|
|
22747
22776
|
parks: this.parks,
|
|
22777
|
+
prefetchReads: this.prefetchReads,
|
|
22778
|
+
prefetchBytes: this.prefetchBytes,
|
|
22779
|
+
prefetchHits: this.prefetchHits,
|
|
22748
22780
|
ackTimeouts: this.ackTimeouts,
|
|
22749
22781
|
failures: this.failures,
|
|
22750
22782
|
creditEndedAt: this.creditEndedAt,
|
|
@@ -22840,6 +22872,24 @@ var SCRUB_JUMP_TRAVEL_MAX_STILLS = 3;
|
|
|
22840
22872
|
*/
|
|
22841
22873
|
var SCRUB_PREFETCH_DIR_THRESHOLD = 2;
|
|
22842
22874
|
/**
|
|
22875
|
+
* How many speculative GOP reads may be in flight at once, i.e. how many drag
|
|
22876
|
+
* steps ahead the feeder reads.
|
|
22877
|
+
*
|
|
22878
|
+
* The scrub tick IS the read: measured on salone 590 over `low`,
|
|
22879
|
+
* `tickMsP50 = 270` of which `readMsP50 = 263` — a cold ~135 KB fragment off
|
|
22880
|
+
* the HDD array through shfs/FUSE, `demuxMsP50 = 1`. One read at a time is a
|
|
22881
|
+
* hard ~3.8 push/s ceiling no cache can lift, because a drag whose steps are
|
|
22882
|
+
* tens of seconds apart revisits nothing. Reading N steps ahead is the only
|
|
22883
|
+
* thing that converts wall-clock the drag is ALREADY spending into pushes.
|
|
22884
|
+
*
|
|
22885
|
+
* 2 and not more: these reads land on the same spindles the recorder is writing
|
|
22886
|
+
* every camera to, and past a small number concurrent random reads stop
|
|
22887
|
+
* overlapping and start thrashing. Raise it only against a measured
|
|
22888
|
+
* `prefetchHits` / `readMsP50` pair — it is the knob, and the census carries
|
|
22889
|
+
* both halves of the evidence.
|
|
22890
|
+
*/
|
|
22891
|
+
var SCRUB_PREFETCH_MAX_INFLIGHT = 2;
|
|
22892
|
+
/**
|
|
22843
22893
|
* Max forward TARGET delta (ms of timeline, between consecutive drag targets)
|
|
22844
22894
|
* that SWEEPS predicted frames instead of jumping. A steady forward drag is
|
|
22845
22895
|
* playback with a moving target: once a keyframe decoded, the predicted frames
|
|
@@ -23058,12 +23108,25 @@ var RecordedFeeder = class {
|
|
|
23058
23108
|
*/
|
|
23059
23109
|
scrubDirRun = 0;
|
|
23060
23110
|
/**
|
|
23061
|
-
*
|
|
23062
|
-
*
|
|
23063
|
-
* `scrubCache` —
|
|
23064
|
-
* state, and never
|
|
23111
|
+
* Prefetch reads in flight. Bounded by {@link SCRUB_PREFETCH_MAX_INFLIGHT}:
|
|
23112
|
+
* these are the SPECULATIVE concurrency slots, and they only fill
|
|
23113
|
+
* `scrubCache` — they never push, never touch the pending/timer/latest-wins
|
|
23114
|
+
* state, and never block the live coalesced tick.
|
|
23115
|
+
*
|
|
23116
|
+
* More than one because the read IS the tick (263 of 270 ms measured): with a
|
|
23117
|
+
* single slot the drag can never go faster than one cold read, however well
|
|
23118
|
+
* the speculation guesses.
|
|
23119
|
+
*/
|
|
23120
|
+
scrubPrefetchInFlight = 0;
|
|
23121
|
+
/** Probe instants currently being read, so two horizons never duplicate one. */
|
|
23122
|
+
scrubPrefetchProbes = /* @__PURE__ */ new Set();
|
|
23123
|
+
/**
|
|
23124
|
+
* Fragment starts this drag put in the cache SPECULATIVELY. A later tick that
|
|
23125
|
+
* hits one of them is what makes speculation provably worth its I/O
|
|
23126
|
+
* (`prefetchHits`) — without this the feeder could double the load on the disk
|
|
23127
|
+
* that is the bottleneck and the census would look calm.
|
|
23065
23128
|
*/
|
|
23066
|
-
|
|
23129
|
+
scrubPrefetched = /* @__PURE__ */ new Set();
|
|
23067
23130
|
constructor(deps) {
|
|
23068
23131
|
this.deps = deps;
|
|
23069
23132
|
this.audioClock = new MonotonicClock(deps.audioClockRateHz ?? 8e3);
|
|
@@ -23353,6 +23416,7 @@ var RecordedFeeder = class {
|
|
|
23353
23416
|
this.scrubCredit = SCRUB_CREDIT_CAP;
|
|
23354
23417
|
this.scrubPrevTarget = null;
|
|
23355
23418
|
this.scrubDirRun = 0;
|
|
23419
|
+
this.scrubPrefetched = /* @__PURE__ */ new Set();
|
|
23356
23420
|
this.scrubCursor = null;
|
|
23357
23421
|
this.scrubNoFootageLogged = false;
|
|
23358
23422
|
this.scrubParkLogged = false;
|
|
@@ -23528,7 +23592,10 @@ var RecordedFeeder = class {
|
|
|
23528
23592
|
coverage = "memo";
|
|
23529
23593
|
} else {
|
|
23530
23594
|
seg = this.scrubCache.covering(this.deps.profile, target);
|
|
23531
|
-
if (seg)
|
|
23595
|
+
if (seg) {
|
|
23596
|
+
coverage = "cache";
|
|
23597
|
+
if (this.scrubPrefetched.has(seg.startMs)) this.scrubStats?.recordPrefetchHit();
|
|
23598
|
+
}
|
|
23532
23599
|
}
|
|
23533
23600
|
if (!seg) {
|
|
23534
23601
|
const locateStartMs = performance.now();
|
|
@@ -23950,28 +24017,41 @@ var RecordedFeeder = class {
|
|
|
23950
24017
|
this.scrubDirRun = 0;
|
|
23951
24018
|
return;
|
|
23952
24019
|
}
|
|
23953
|
-
const
|
|
24020
|
+
const stepMs = target - prev;
|
|
24021
|
+
const dir = stepMs > 0 ? 1 : stepMs < 0 ? -1 : 0;
|
|
23954
24022
|
if (dir === 0) {
|
|
23955
24023
|
this.scrubDirRun = 0;
|
|
23956
24024
|
return;
|
|
23957
24025
|
}
|
|
23958
24026
|
this.scrubDirRun = Math.sign(this.scrubDirRun) === dir ? this.scrubDirRun + dir : dir;
|
|
23959
24027
|
if (Math.abs(this.scrubDirRun) < SCRUB_PREFETCH_DIR_THRESHOLD) return;
|
|
23960
|
-
|
|
23961
|
-
const
|
|
23962
|
-
|
|
23963
|
-
|
|
24028
|
+
const aheadMs = Math.max(Math.abs(stepMs), seg.durMs + 1);
|
|
24029
|
+
const horizons = Math.abs(stepMs) > seg.durMs ? SCRUB_PREFETCH_MAX_INFLIGHT : 1;
|
|
24030
|
+
for (let horizon = 1; horizon <= horizons; horizon++) {
|
|
24031
|
+
if (this.scrubPrefetchInFlight >= SCRUB_PREFETCH_MAX_INFLIGHT) return;
|
|
24032
|
+
const probeMs = target + dir * aheadMs * horizon;
|
|
24033
|
+
if (probeMs < 0) continue;
|
|
24034
|
+
if (this.scrubPrefetchProbes.has(probeMs)) continue;
|
|
24035
|
+
if (this.scrubCache.covering(this.deps.profile, probeMs)) continue;
|
|
24036
|
+
this.scrubPrefetch(probeMs, gen);
|
|
24037
|
+
}
|
|
23964
24038
|
}
|
|
23965
24039
|
/**
|
|
23966
|
-
*
|
|
23967
|
-
*
|
|
24040
|
+
* Speculative read: locate + read + demux the fragment covering `probeMs` into
|
|
24041
|
+
* `scrubCache`. Bounded by {@link SCRUB_PREFETCH_MAX_INFLIGHT}; aborts at any
|
|
23968
24042
|
* teardown (`disposed` / left scrub / a bumped `scrubToken`); a failure is
|
|
23969
|
-
* swallowed (the
|
|
24043
|
+
* swallowed (the fragment just demuxes on demand). Never pushes and never
|
|
23970
24044
|
* mutates latest-wins state.
|
|
24045
|
+
*
|
|
24046
|
+
* Every read it issues is COUNTED (`prefetchReads` / `prefetchBytes`), and the
|
|
24047
|
+
* fragment it lands is remembered so a later tick hitting it counts as a
|
|
24048
|
+
* `prefetchHit`. Speculation that cannot be shown to pay for itself is just
|
|
24049
|
+
* load on the disk the drag is already waiting for.
|
|
23971
24050
|
*/
|
|
23972
24051
|
async scrubPrefetch(probeMs, gen) {
|
|
23973
|
-
if (this.scrubPrefetchInFlight) return;
|
|
23974
|
-
this.scrubPrefetchInFlight
|
|
24052
|
+
if (this.scrubPrefetchInFlight >= SCRUB_PREFETCH_MAX_INFLIGHT) return;
|
|
24053
|
+
this.scrubPrefetchInFlight += 1;
|
|
24054
|
+
this.scrubPrefetchProbes.add(probeMs);
|
|
23975
24055
|
try {
|
|
23976
24056
|
if (this.disposed || !this.scrubbing || gen !== this.scrubToken) return;
|
|
23977
24057
|
if (this.scrubCache.covering(this.deps.profile, probeMs)) return;
|
|
@@ -23984,9 +24064,12 @@ var RecordedFeeder = class {
|
|
|
23984
24064
|
if (loc.kind !== "segment") return;
|
|
23985
24065
|
const load = await this.loadScrubFragment(loc, probeMs);
|
|
23986
24066
|
if (this.disposed || !this.scrubbing || gen !== this.scrubToken || load === null) return;
|
|
24067
|
+
this.scrubStats?.recordPrefetchRead(load.readBytes);
|
|
23987
24068
|
this.scrubCache.put(this.deps.profile, load.seg);
|
|
24069
|
+
this.scrubPrefetched.add(load.seg.startMs);
|
|
23988
24070
|
} catch {} finally {
|
|
23989
|
-
this.scrubPrefetchInFlight
|
|
24071
|
+
this.scrubPrefetchInFlight -= 1;
|
|
24072
|
+
this.scrubPrefetchProbes.delete(probeMs);
|
|
23990
24073
|
}
|
|
23991
24074
|
}
|
|
23992
24075
|
/**
|
|
@@ -30,7 +30,7 @@ async function d(e) {
|
|
|
30
30
|
}
|
|
31
31
|
}
|
|
32
32
|
async function f() {
|
|
33
|
-
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-
|
|
33
|
+
return l ||= d(() => import("./_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-DUi-lR4R.mjs")).catch((e) => {
|
|
34
34
|
throw l = void 0, e;
|
|
35
35
|
}), l;
|
|
36
36
|
}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { g as NativeLeaseSettingsSchema, h as NativeLeaseAdmissionSchema, l as DEFAULT_NATIVE_LEASE_SETTINGS } from "./dist-
|
|
1
|
+
import { g as NativeLeaseSettingsSchema, h as NativeLeaseAdmissionSchema, l as DEFAULT_NATIVE_LEASE_SETTINGS } from "./dist-CsP_DikG.mjs";
|
|
2
2
|
//#region src/session-decode/native-lease-config.ts
|
|
3
3
|
/**
|
|
4
4
|
* Resolution of the native-frame hold / tile knobs for one decode worker.
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@camstack/addon-pipeline",
|
|
3
|
-
"version": "1.2.
|
|
3
|
+
"version": "1.2.78",
|
|
4
4
|
"description": "Pipeline bundle — runner, detection, motion, audio + stream broker. Multi-entry npm package shipping pipeline addons under a single bundle.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"camstack",
|
|
@@ -1,26 +0,0 @@
|
|
|
1
|
-
//#region \0virtual:mf:__mfe_internal__addon_stream_broker_widgets__loadShare___mf_0_camstack_mf_1_types__loadShare__.js
|
|
2
|
-
var e = "__mf_init__virtual:mf:__mfe_internal__addon_stream_broker_widgets__mf_v__runtimeInit__mf_v__.js__", t = globalThis[e];
|
|
3
|
-
if (!t) {
|
|
4
|
-
let n, r, i = new Promise((e, t) => {
|
|
5
|
-
n = e, r = t;
|
|
6
|
-
});
|
|
7
|
-
t = globalThis[e] = {
|
|
8
|
-
initPromise: i,
|
|
9
|
-
initResolve: n,
|
|
10
|
-
initReject: r
|
|
11
|
-
};
|
|
12
|
-
}
|
|
13
|
-
var n = t.initPromise, r = "__mf_module_cache__";
|
|
14
|
-
globalThis[r] ||= {
|
|
15
|
-
share: {},
|
|
16
|
-
remote: {}
|
|
17
|
-
}, globalThis[r].share ||= {}, globalThis[r].remote ||= {};
|
|
18
|
-
var i = globalThis[r], a, o = (e) => {
|
|
19
|
-
e.ACCESSORY_LABEL, e.ACCESS_ROLES, e.ALEXA_EGRESS_PROFILE, e.ALL_CAPABILITY_DEFINITIONS, e.APPLE_SA_TO_MACRO, e.AUDIO_ANALYSIS_CAP_NAME, e.AUDIO_BACKEND_CHOICES, e.AUDIO_MACRO_LABELS, e.AUDIO_PRESETS, e.AccessoriesStatusSchema, e.AccessoryKind, e.AddBrokerInputSchema, e.AddonAutoUpdateSchema, e.AddonListItemSchema, e.AddonPageDeclarationSchema, e.AddonPageInfoSchema, e.AdoptionAdoptInputSchema, e.AdoptionAdoptResultSchema, e.AdoptionCandidateResultSchema, e.AdoptionFilterSchema, e.AdoptionGetCandidateInputSchema, e.AdoptionJobSchema, e.AdoptionJobStateSchema, e.AdoptionListCandidatesInputSchema, e.AdoptionListCandidatesOutputSchema, e.AdoptionOutcomeSchema, e.AdoptionReleaseInputSchema, e.AdoptionStatusSchema, e.AgentLoadSummarySchema, e.AirQualitySensorStatusSchema, e.AlarmArmModeSchema, e.AlarmPanelStatusSchema, e.AlarmStateSchema, e.AlertSchema, e.AlertSeveritySchema, e.AlertSourceSchema, e.AlertStatusSchema, e.AmbientLightSensorStatusSchema, e.ApiKeyRecordSchema, e.ApiKeySummarySchema, e.ArchiveEntrySchema, e.ArchiveManifestSchema, e.AttachmentMediaTypeSchema, e.AttachmentSchema, e.AudioAnalysisResultSchema, e.AudioAnalysisSettingsSchema, e.AudioChunkInputSchema, e.AudioClassSummarySchema, e.AudioClassificationLabelSchema, e.AudioClassificationResultSchema, e.AudioCodecInfoSchema, e.AudioDecodeSessionConfigSchema, e.AudioEncodeSchema, e.AudioEncodeSessionConfigSchema, e.AudioEncodedChunkSchema, e.AudioEventSchema, e.AudioLevelSchema, e.AudioMetricsHistoryPointSchema, e.AudioMetricsHistorySchema, e.AudioMetricsSnapshotSchema, e.AudioPcmChunkSchema, e.AuthResultSchema, e.AutoUpdateSettingsSchema, e.AutomationActionSchema, e.AutomationConditionOperatorSchema, e.AutomationConditionSchema, e.AutomationControlStatusSchema, e.AutomationRecipeSchema, e.AutomationTriggerSchema, e.AvailableIntegrationTypeSchema, e.BACKEND_TO_FORMAT, e.BASE_LIVE_EGRESS_PROFILE, e.BATTERY_DEVICE_PROFILE, e.BacklightModeSchema, e.BackupDestinationInfoSchema, e.BackupEntrySchema, e.BaseAddon, e.BaseDevice, e.BaseDeviceProvider, e.BatteryStatusSchema, e.BinaryStatusSchema, e.BoundingBoxSchema, e.BrightnessStatusSchema, e.BrokerAddInputSchema, e.BrokerAudioClientSchema, e.BrokerClientsSchema, e.BrokerConnectionDetailsSchema, e.BrokerConsumerAttributionSchema, e.BrokerConsumerKindSchema, e.BrokerDecodedClientSchema, e.BrokerEncodedClientSchema, e.BrokerGetStateInputSchema, e.BrokerInfoSchema, e.BrokerProviderInfoSchema, e.BrokerPublishInputSchema, e.BrokerRegistryStatusSchema, e.BrokerRtspClientSchema, e.BrokerStatsSchema, e.BrokerStatusEnum, e.BrokerStatusSchema, e.BrokerSubscribeInputSchema, e.BrokerSubscribeResultSchema, e.BrokerTestConnectionResultSchema, e.BrokerUnsubscribeInputSchema, e.CAMERA_SWITCH_CATALOG, e.CAMERA_SWITCH_ORDER, e.CAM_PROFILE_ORDER, e.CAPABILITY_NAMES, e.CAPABILITY_ROUTER_KEYS, e.CAP_NAMES_WITH_STATUS, e.CAP_NODE_PIN_CONTEXT_KEY, e.CAP_PROVIDER_KIND_MAP, e.COCO_80_LABELS, e.COCO_TO_MACRO, e.CONNECTION_TEST_TIMEOUT_MS, e.CORE_BLOCKS_ADDON_ID, e.CORE_BLOCK_ADDON_PREFIX, e.CamProfileSchema, e.CamStreamDescriptorSchema, e.CamStreamKindSchema, e.CamStreamResolutionSchema, e.CameraAssignmentStatusSchema, e.CameraAudioStatusSchema, e.CameraBrokerProfileSchema, e.CameraBrokerStatusSchema, e.CameraCredentialsSchema, e.CameraCredentialsStatusSchema, e.CameraDecoderShmSchema, e.CameraDecoderStatusSchema, e.CameraDetectionPhaseSchema, e.CameraDetectionProvisioningSchema, e.CameraDetectionProvisioningStateSchema, e.CameraDetectionStatusSchema, e.CameraMetricsSchema, e.CameraMetricsWithDeviceIdSchema, e.CameraMotionStatusSchema, e.CameraRecordingModeSchema, e.CameraRecordingStatusSchema, e.CameraSourceStatusSchema, e.CameraSourceStreamSchema, e.CameraStatusDegradationReasonSchema, e.CameraStatusDegradationSchema, e.CameraStatusSchema, e.CameraStatusStageSchema, e.CameraStreamSchema, e.CameraSwitchAuthoritySchema, e.CameraSwitchGroupSchema, e.CameraSwitchIdSchema, e.CameraSwitchSchema, e.CameraSwitchUnavailableReasonSchema, e.CandidateQueryFilterSchema, e.CapScopeSchema, e.CapabilityBindingsSchema, e.CarbonMonoxideStatusSchema, e.ChargingStatus, e.ClientNetworkStatsSchema, e.ClimateControlStatusSchema, e.ClipPlaybackSchema, e.ClipSchema, e.ClusterAddonNodeDeploymentSchema, e.ClusterAddonStatusEntrySchema, e.CollectionColumnSchema, e.CollectionIndexSchema, e.ColorStatusSchema, e.ConfigEntrySchema, e.ConfigSectionWithValuesSchema, e.ConfigTabDeclarationSchema, e.ConnectionTestDescriptorSchema, e.ConnectionTestInputSchema, e.ConnectionTestOutcomeSchema, e.ConnectivityStatusSchema, e.ConsumableItemSchema, e.ConsumablesStatusSchema, e.ContactStatusSchema, e.ControlKindSchema, e.ControlStatusSchema, e.ConvertArtifactSchema, e.ConvertResultSchema, e.ConvertTargetSchema, e.CoreBlockCompileResultSchema, e.CoreBlockInputSchema, e.CoreBlockPlacementSchema, e.CoreBlockSchema, e.CoreBlockStatusSchema, e.CoverStateSchema, e.CoverStatusSchema, e.CreateApiKeyInputSchema, e.CreateApiKeyResultSchema, e.CreateIntegrationInputSchema, e.CreateScopedTokenInputSchema, e.CreateScopedTokenResultSchema, e.CreateUserInputSchema, e.CustomActionInputSchema, e.CustomModelDescriptorSchema, e.DATAPLANE_SECRET_HEADER, e.DECLARED_DEVICE_SWEEP_LIMIT, e.DECLARED_INTEGRATION_FIXED_KEY, e.DEFAULT_ADDON_PLACEMENT, e.DEFAULT_AUDIO_ANALYZER_CONFIG, e.DEFAULT_DECODER_HWACCEL_CONFIG, e.DEFAULT_DETAIL_CROP_CONVENTION, e.DEFAULT_EVENTS_BAND_BUFFER_SEC, e.DEFAULT_EVENT_COLOR, e.DEFAULT_FEATURES, e.DEFAULT_NATIVE_LEASE_SETTINGS, e.DEFAULT_RETENTION, e.DEFAULT_RUNTIME_STATE_DURABILITY, e.DEFAULT_SCRUB_THUMBNAIL_PRESET, e.DEFAULT_TIMELAPSE_PREVIEW_TEXT, e.DETAIL_CROP_PADDING_FIELD, e.DETAIL_CROP_PADDING_KEY, e.DETAIL_CROP_SECTION_ID, e.DETAIL_CROP_SQUARE_KEY, e.DETECTION_MACRO_CLASSES, e.DETECTION_PIPELINE_CAP_NAME, e.DEVICE_BACKEND_TO_FORMAT, e.DEVICE_CAP_NAMES, e.DEVICE_PROFILES, e.DEVICE_SCOPED_CAPS, e.DEVICE_SETTINGS_CONTRIBUTION_METHODS, e.DEVICE_STATE_READERS, e.DEVICE_STATUS_METHOD, e.DEVICE_TYPE_CONTROL_KIND, e.DEVICE_TYPE_INFO, e.DataStoreEngineInfoSchema, e.DayNightModeSchema, e.DayNightOptionsSchema, e.DayNightSettingsPatchSchema, e.DayNightStatusSchema, e.DeclaredDevices, e.DecodedAudioChunkSchema, e.DecodedFrameSchema, e.DecoderSessionConfigSchema, e.DecoderStatsSchema, e.DeleteIntegrationResultSchema, e.DetailCropConventionSchema, e.DetectionSourceSchema, e.DeviceCodeSeveritySchema, e.DeviceConfig, e.DeviceDiscoveryStatusSchema, e.DeviceExportExposeInputSchema, e.DeviceExportStatusSchema, e.DeviceExportUnexposeInputSchema, e.DeviceFeature, e.DeviceInfoSchema, e.DeviceNetworkStatsSchema, e.DeviceRole, e.DeviceRuntimeState, e.DeviceSelectorSchema, e.DeviceStatusSchema, e.DeviceType, e.DiscoveredChildDeviceSchema, e.DiscoveredChildStatusSchema, e.DiscoveredDeviceSchema, e.DiscoveredTargetSchema, e.DisposerChain, e.DoorbellPressEventSchema, e.DoorbellStatusSchema, e.EVENTFUL_CAP_NAMES, e.EVENT_KIND_BY_CAP, e.EVENT_PAD_MS, e.EVENT_TAXONOMY, e.EXPORT_DENSE_MAX_RANGES, e.EXPRESSION_BUILTINS, e.EXPRESSION_BUILTIN_NAMES, e.EXPRESSION_COMPILE_CACHE_CAPACITY, e.EXPRESSION_IDENTIFIER_RE, e.EXPRESSION_INJECTED_NOW, e.EgressEncodeSchema, e.EgressRateControlSchema, e.EgressTranscodeRequestSchema, e.EgressTranscodeSchema, e.ElementConfigStore, e.EmbeddingInfoSchema, e.EmbeddingResultSchema, e.EncodeProfileSchema, e.EncodedPacketSchema, e.EnrichedWidgetMetadataSchema, e.EnumSensorDateTimeFormatSchema, e.EnumSensorStatusSchema, e.EventCategory, e.EventEmitterStatusSchema, e.EventFireSchema, e.EventItemSchema, e.EventKindCategorySchema, e.EventKindDescriptorSchema, e.EventKindIconSchema, e.EventKindSchema, e.EventKindsForDeviceSchema, e.EventMediaArtifactSchema, e.EventMediaCoverageSchema, e.EventMediaKindSchema, e.EventMediaProductionSchema, e.EventSourceType, e.ExportBytesSchema, e.ExportDenseRangeSchema, e.ExportDenseSchema, e.ExportDownloadSchema, e.ExportOptionsSchema, e.ExportRecordSchema, e.ExportSetupFieldSchema, e.ExportSetupSchema, e.ExportSpeedSchema, e.ExportStateSchema, e.ExportTimelapseSchema, e.ExposedDeviceSchema, e.ExposureModeSchema, e.ExpressionBindingSourceSchema, e.ExpressionEvalError, e.ExpressionFieldBindingSchema, e.ExpressionGlobalBindingSchema, e.ExpressionLiteralBindingSchema, e.ExpressionParseError, e.ExpressionSourceSchema, e.FanControlStatusSchema, e.FanDirectionSchema, e.FeatureManifestSchema, e.FeatureProbeStatusSchema, e.FloodStatusSchema, e.Fmp4BoxSplitter, e.FrameHandleFormatSchema, e.FrameHandleSchema, e.FrameInputSchema, e.GasStatusSchema, e.GetStreamWithCodecInputSchema, e.GlobalMetricsSchema, e.HAP_AUDIO_BASE, e.HAP_AUDIO_BITRATE_KBPS, e.HAP_AUDIO_VBV_KBITS, e.HAP_KEYFRAME_INTERVAL_SEC, e.HF_BASE_URL, e.HF_REPO, e.HWACCEL_OPTIONS, e.HealthStatusSchema, e.HistoryPointSchema, e.HistoryResolutionEnum, e.HumidifierStatusSchema, e.HumiditySensorStatusSchema, e.HvacModeSchema, e.ImageContractSchema, e.ImageContractStateSchema, e.ImageRotateSchema, e.ImageSettingsOptionsSchema, e.ImageSettingsPatchSchema, e.ImageSettingsStatusSchema, e.ImageStatusSchema, e.IngestOwnerSchema, e.InstalledPackageSchema, e.IntegrationLiteSchema, e.IntegrationWithStateSchema, e.IntercomAbilitySchema, e.IntercomStatusSchema, e.KNOWN_CAP_NAMES, e.KeyEventSchema, e.LOG_LEVEL_RANK, e.LabelAttributionSchema, e.LabelDefinitionSchema, e.LabelTierSchema, e.LawnMowerActivitySchema, e.LawnMowerControlStatusSchema, e.LinkedDeviceSchema, e.LinkedDevicesModeSchema, e.LlmDefaultSchema, e.LlmDefaultSelectorSchema, e.LlmErrorCodeSchema, e.LlmGenerateBaseInputSchema, e.LlmGenerateErrSchema, e.LlmGenerateOkSchema, e.LlmGenerateResultSchema, e.LlmImageSchema, e.LlmNodeModelSchema, e.LlmProfileKindDescriptorSchema, e.LlmProfileKindSchema, e.LlmProfileSchema, e.LlmRetryPolicySchema, e.LlmRuntimeCompleteInputSchema, e.LlmRuntimeDiskUsageSchema, e.LlmRuntimeNodeSchema, e.LlmRuntimeStatusSchema, e.LlmTimeoutDefaults, e.LlmUsageRollupSchema, e.LlmUsageSchema, e.LocateSegmentResultSchema, e.LocationStatSchema, e.LockControlStatusSchema, e.LockStateSchema, e.LogEntrySchema, e.LogLevelSchema, e.LogStreamEntrySchema, e.LoginMethodContributionSchema, e.LoginStageEnum, e.MACRO_LABELS, e.MAX_CONDITION_DEPTH, e.MAX_CONDITION_LEAVES, e.MAX_EXPRESSION_AST_NODES, e.MAX_EXPRESSION_BINDINGS, e.MAX_EXPRESSION_CALL_ARGS, e.MAX_EXPRESSION_EVAL_STEPS, e.MAX_EXPRESSION_SOURCE_LENGTH, e.METHOD_ACCESS_MAP, e.METHOD_DEVICE_SELECTORS, e.MODEL_FORMATS, e.MOTION_TRIGGER_FEATURE, e.ManagedModelCatalogEntrySchema, e.ManagedModelRefSchema, e.ManagedRuntimeConfigSchema, e.MaskGridDimsSchema, e.MaskGridShapeSchema, e.MaskLineShapeSchema, e.MaskPointSchema, e.MaskPolygonShapeSchema, e.MaskPolygonVerticesSchema, e.MaskRectShapeSchema, e.MaskShapeKindSchema, e.MaskShapeSchema, e.MediaFileInfoSchema, e.MediaFileSchema, e.MediaPlayerRepeatSchema, e.MediaPlayerStateSchema, e.MediaPlayerStatusSchema, e.MeshPeerSchema, e.MeshStatusSchema, e.MethodAccessSchema, e.ModelCatalogEntrySchema, e.ModelConvertInputSchema, e.ModelConvertMetadataSchema, e.ModelDistributeInputSchema, e.ModelDistributeResultSchema, e.ModelExtraFileSchema, e.ModelFormatEntrySchema, e.ModelFormatsSchema, e.ModelSubstitutionSchema, e.ModelVariantGroupSchema, e.MotionAnalysisResultSchema, e.MotionEventSchema, e.MotionOnMotionChangedDataSchema, e.MotionRegionSchema, e.MotionSourceEnum, e.MotionSourcesSchema, e.MotionStatusSchema, e.MotionTriggerRuntimeStateSchema, e.MotionTriggerStatusSchema, e.MotionZoneOptionsSchema, e.MotionZonePatchSchema, e.MotionZoneRegionSchema, e.MotionZoneStatusSchema, e.MqttBrokerStatusSchema, e.MutationFilterSchema, e.NATIVE_LEASE_ACTIVITY_FIELD, e.NATIVE_LEASE_ACTIVITY_KEY, e.NATIVE_LEASE_ADMISSION_FIELD, e.NATIVE_LEASE_ADMISSION_KEY, e.NATIVE_LEASE_BUDGET_FIELD, e.NATIVE_LEASE_BUDGET_KEY, e.NATIVE_LEASE_HOLD_FIELD, e.NATIVE_LEASE_HOLD_KEY, e.NATIVE_LEASE_SECTION_ID, e.NATIVE_LEASE_TILE_BUDGET_FIELD, e.NATIVE_LEASE_TILE_BUDGET_KEY, e.NC_ALARM_SYSTEM_EVENT_KINDS, e.NC_AUDIO_DBFS_FLOOR, e.NC_AUDIO_DB_MAX, e.NC_AUDIO_DB_MIN, e.NC_AUDIO_DB_OFFERED, e.NC_AUDIO_DB_STEP, e.NC_AUDIO_DEFAULTS, e.NC_AUDIO_HIT_PERCENT_MAX, e.NC_AUDIO_HIT_PERCENT_MIN, e.NC_AUDIO_SAMPLING_MAX_SEC, e.NC_AUDIO_SAMPLING_MIN_SEC, e.NC_AUTHORABLE_SYSTEM_EVENT_KINDS, e.NC_BASE_CONDITION_KEYS, e.NC_CONDITION_CATALOG, e.NC_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.NC_CONFIRM_DEFAULT_TIMEOUT_MS, e.NC_CONFIRM_MAX_TIMEOUT_MS, e.NC_CONFIRM_MIN_TIMEOUT_MS, e.NC_DEFAULT_SNOOZE_MINUTES, e.NC_HISTORY_LIMIT_DEFAULT, e.NC_HISTORY_LIMIT_MAX, e.NC_MAX_PER_TRACK_IMMEDIATE, e.NC_SNOOZE_MAX_MINUTES, e.NC_TAXONOMY, e.NativeCropBboxSchema, e.NativeCropRefSchema, e.NativeCropResultSchema, e.NativeDetectionSchema, e.NativeLeaseAdmissionSchema, e.NativeLeaseSettingsSchema, e.NativeObjectClassEnum, e.NativeObjectDetectionRuntimeStateSchema, e.NativeObjectDetectionStatusSchema, e.NcAlarmConfigSchema, e.NcAlarmModeCoverageSchema, e.NcAlarmSettingsPatchSchema, e.NcAlarmSettingsSchema, e.NcAlarmSkipReasonSchema, e.NcAlarmSkippedDeviceSchema, e.NcAudioConditionSchema, e.NcConditionDescriptorSchema, e.NcConditionsSchema, e.NcConfirmExpectSchema, e.NcConfirmSchema, e.NcCrossingSchema, e.NcDeliverySchema, e.NcDeviceStateConditionSchema, e.NcHistoryEntrySchema, e.NcHistoryFilterSchema, e.NcHistoryRecordKindSchema, e.NcHistoryStatusSchema, e.NcHistorySubjectSchema, e.NcMediaFrameSchema, e.NcMediaPolicySchema, e.NcOccupancyConditionSchema, e.NcPlateMatcherSchema, e.NcRuleActionSchema, e.NcRuleActionSequenceSchema, e.NcRuleActionsSchema, e.NcRuleInputSchema, e.NcRuleNotificationButtonSchema, e.NcRulePatchSchema, e.NcRuleSchema, e.NcRuleTargetSchema, e.NcScheduleSchema, e.NcScheduleWindowSchema, e.NcSnoozeInputSchema, e.NcSnoozeSchema, e.NcSnoozeScopeSchema, e.NcSnoozeSuppressedSchema, e.NcSystemEventConditionSchema, e.NcSystemEventKindSchema, e.NcTaxonomyEntrySchema, e.NcTaxonomySchema, e.NcTestResultSchema, e.NcThrottleGranularitySchema, e.NcThrottleSchema, e.NcZoneConditionSchema, e.NetworkAccessStatusSchema, e.NetworkAddressSchema, e.NetworkEndpointSchema, e.NotificationActionIconSchema, e.NotificationActionSchema, e.NotificationFormatSchema, e.NotificationSchema, e.NotifierStatusSchema, e.NumericSensorStatusSchema, e.OPS_LOG_DEFAULT_LIMIT, e.OPS_LOG_RING_DEFAULT_MAX, e.OauthIntegrationDescriptorSchema, e.ObjectEventSchema, e.OpsLogDomainSchema, e.OpsLogEntrySchema, e.OpsLogOpSchema, e.OpsLogQueryInputSchema, e.OpsLogReasonSchema, e.OrchestratorMetricsSchema, e.OsdOverlayKindEnum, e.OsdOverlayPatchSchema, e.OsdOverlaySchema, e.OsdPositionEnum, e.OsdRenderOutcomeEnum, e.OsdRenderResultSchema, e.OsdSlotBindingSchema, e.OsdSlotViewSchema, e.OsdSourceOptionSchema, e.OsdSourceSchema, e.OsdSourceValueTypeEnum, e.OsdStatusSchema, e.PET_FEEDER_MANUAL_FEED_MAX, e.PET_FEEDER_MANUAL_FEED_MIN, e.PIPELINE_FLOW_CAPABILITY_NAMES, e.PIPELINE_OWNER_CAPABILITY_NAMES, e.PRIVACY_MASK_CAP_NAME, e.PROVIDER_KIND_CAP_NAMES, e.PYTHON_SCRIPT, e.PackageUpdateSchema, e.PackageVersionInfoSchema, e.PasskeyLoginMethodSchema, e.PasskeySummarySchema, e.PcmSampleFormatSchema, e.PerScopeBreakdownSchema, e.PetFeederStatusSchema, e.PickStreamPreferencesSchema, e.PickStreamRequirementsSchema, e.PickedCamStreamSchema, e.PipelineAssignmentSchema, e.PipelineDefaultStepSchema, e.PipelineEngineChoiceSchema, e.PipelineRunResultBridge, e.PipelineStepInputSchema, e.PipelineValidationIssueSchema, e.PipelineValidationResultSchema, e.PlaceholderReasonSchema, e.PolygonPointSchema, e.PowerMeterStatusSchema, e.PresenceStatusSchema, e.PressureSensorStatusSchema, e.PrivacyMaskOptionsSchema, e.PrivacyMaskPatchSchema, e.PrivacyMaskRegionSchema, e.PrivacyMaskShapeSchema, e.PrivacyMaskStatusSchema, e.ProfileRtspEntrySchema, e.ProfileSlotSchema, e.ProfileSlotStatusSchema, e.ProviderStatusSchema, e.PtzAutotrackRuntimeStateSchema, e.PtzAutotrackSettingsSchema, e.PtzAutotrackStatusSchema, e.PtzAutotrackTargetOptionSchema, e.PtzMoveCommandSchema, e.PtzOptionsSchema, e.PtzPositionSchema, e.PtzPresetSchema, e.PtzStatusSchema, e.QueryFilterSchema, e.RATE_CONTROL_RELAXED, e.RATE_CONTROL_TIGHT, e.REACHABILITY_FAILURES_TO_OFFLINE, e.REACHABILITY_POLL_INTERVAL_MS, e.REACHABILITY_PROBE_TIMEOUT_MS, e.RECOGNITION_TYPES, e.RECORDING_EXPORT_MAX_READ_BYTES, e.RESERVED_BINDING_NAMES, e.RESTORED_CAP_NAMES, e.RUNTIME_DEFAULTS, e.RUNTIME_STATE_POLICY, e.RUNTIME_TO_FORMAT, e.RawStateResultSchema, e.ReadGopBytesResultSchema, e.ReadSegmentBytesResultSchema, e.ReadinessRegistry, e.ReadinessTimeoutError, e.RecentTracksPageSchema, e.RecentTracksQueryInput, e.RecordingAvailabilitySchema, e.RecordingBandModeSchema, e.RecordingBandSchema, e.RecordingBandTriggersSchema, e.RecordingConfigSchema, e.RecordingDaysSchema, e.RecordingDeviceUsageSchema, e.RecordingLocationUsageSchema, e.RecordingManifestSchema, e.RecordingRangeSchema, e.RecordingRebalanceInputSchema, e.RecordingRebalanceMoveSchema, e.RecordingRebalancePlanSchema, e.RecordingRebalanceSkipReasonSchema, e.RecordingRebalanceSkipSchema, e.RecordingRetentionSchema, e.RecordingStatusSchema, e.RecordingStorageModeSchema, e.RecordingStorageUsageSchema, e.RecordingTriggersSchema, e.RecordingWeekdaySchema, e.RedirectLoginMethodSchema, e.RelocateFootageClassSchema, e.RelocateFootageInputSchema, e.RelocateJobSchema, e.RelocateJobStateSchema, e.RelocateMediaInputSchema, e.RenderedAsSchema, e.ReportMotionInputSchema, e.RetrainAnnotationDraftSchema, e.RetrainAnnotationKindSchema, e.RetrainAnnotationSchema, e.RetrainAnnotationSourceSchema, e.RetrainAssistResultSchema, e.RetrainAssistSubjectSchema, e.RetrainCopyRefusalSchema, e.RetrainFrameCandidateSchema, e.RetrainFrameListSchema, e.RetrainFrameSchema, e.RetrainFrameSelectionSchema, e.RetrainMacroClassSchema, e.RetrainStatusSchema, e.RetrainTrackSchema, e.RetrainTransitionResultSchema, e.RingBuffer, e.RtpSourceSchema, e.RtspRestreamEntrySchema, e.RunnerCameraConfigSchema, e.RunnerCameraDeviceUIFields, e.RunnerFrameSourceSchema, e.RunnerInferenceDeviceSchema, e.RunnerLocalLoadSchema, e.RunnerLocalMetricsSchema, e.SCENE_CONDITIONS, e.SCENE_CONFIRM_DEFAULT_MAX_IMAGE_PX, e.SCENE_CONFIRM_DEFAULT_TIMEOUT_MS, e.SCENE_DEFAULT_ANCHOR_THRESHOLD, e.SCENE_DEFAULT_CHECK_INTERVAL_SEC, e.SCENE_DEFAULT_OBSERVATION_SPACING_SEC, e.SCENE_DEFAULT_QUIET_SECONDS, e.SCENE_DIVERGED, e.SCENE_RESET_RECAPTURES, e.SCOPE_PRESETS, e.SCRUB_THUMBNAIL_PRESETS, e.SCRUB_THUMBNAIL_PRESET_LABELS, e.SCRUB_THUMBNAIL_PRESET_ORDER, e.SENSOR_FEATURES, e.SENSOR_MAP, e.SOURCE_INFO_METADATA_KEY, e.STREAM_PROFILE_META, e.STREAM_QUALITY_LABELS, e.SUB_DETECTION_TYPES, e.SYSTEM_CAP_NAMES, e.SYSTEM_SCOPE_DEVICE_METHODS, e.SceneCheckSchema, e.SceneConditionSchema, e.SceneConfirmSchema, e.SceneMonitorSchema, e.SceneMonitorStateSchema, e.SceneMonitorStatusSchema, e.SceneReferenceSchema, e.SceneUnavailableSchema, e.SceneVerdictSchema, e.ScopedTokenSchema, e.ScopedTokenSummarySchema, e.ScoredObjectEventSchema, e.ScriptRunnerStatusSchema, e.ScrubThumbnailPresetSchema, e.SearchResultSchema, e.SendEmailInputSchema, e.SendEmailResultSchema, e.SendResultSchema, e.SensorEventSchema, e.ServerBootModeSchema, e.ServerPackageStatusSchema, e.ServerRollbackInfoSchema, e.ServerUpdateActionResultSchema, e.ServerUpdateCheckResultSchema, e.ServerUpdateStateSchema, e.SetSiteLocationInputSchema, e.SettingsPatchSchema, e.SettingsRecordSchema, e.SettingsSchemaWithValuesSchema, e.SettingsUpdateResultSchema, e.ShmRingStatsSchema, e.SiteLocationSchema, e.SiteLocationSourceSchema, e.SiteLocationStatusSchema, e.SmokeStatusSchema, e.SmtpStatusSchema, e.SnapshotImageSchema, e.SourceInfoSchema, e.SpatialDetectionSchema, e.SsoBridgeClaimsSchema, e.StartEmbeddedInputSchema, e.StationaryObjectSchema, e.StorageAbortUploadInputSchema, e.StorageBeginDownloadInputSchema, e.StorageBeginDownloadResultSchema, e.StorageBeginUploadInputSchema, e.StorageBeginUploadResultSchema, e.StorageEndDownloadInputSchema, e.StorageFinalizeUploadInputSchema, e.StorageLocationDeclarationSchema, e.StorageLocationRefSchema, e.StorageLocationSchema, e.StorageLocationTypeSchema, e.StorageMigrationClassSchema, e.StorageMigrationDestinationsSchema, e.StorageMigrationFootageMoveInputSchema, e.StorageMigrationInputSchema, e.StorageMigrationJobSchema, e.StorageMigrationLeaseInputSchema, e.StorageMigrationMediaMoveInputSchema, e.StorageMigrationMoveSchema, e.StorageMigrationParticipantSchema, e.StorageMigrationPhaseSchema, e.StorageMigrationPlanSchema, e.StorageProviderInfoSchema, e.StorageReadChunkInputSchema, e.StorageTestLocationResultSchema, e.StorageWriteChunkInputSchema, e.StreamCodecSchema, e.StreamFormatSchema, e.StreamNetworkStatsSchema, e.StreamParamsOptionsSchema, e.StreamParamsStatusSchema, e.StreamProfileConfigSchema, e.StreamProfileOptionsSchema, e.StreamProfilePatchSchema, e.StreamProfileSchema, e.StreamSourceEntrySchema, e.StreamSourceSchema, e.SubscribeAudioChunksInputSchema, e.SubscribeAudioChunksResultSchema, e.SubscribeFramesInputSchema, e.SubscribeFramesResultSchema, e.SwitchStatusSchema, e.SystemMetricsSchema, e.SystemMirror, e.TAXONOMY_COLORS, e.TIMELAPSE_DENSE_FLOOR_SEC, e.TIMEZONES, e.TRANSCODE_DOWN_MAX_BITRATE_KBPS, e.TRANSCODE_DOWN_MAX_HEIGHT, e.TamperStatusSchema, e.TankStatusSchema, e.TargetKindCapsSchema, e.TargetKindLevelSchema, e.TargetKindSchema, e.TargetSchema, e.TemperatureSensorStatusSchema, e.TerminalInstanceInfoSchema, e.TerminalLegacyCameraSchema, e.TerminalOutputBatchSchema, e.TerminalOutputEventSchema, e.TerminalProfileInfoSchema, e.TerminalSessionInfoSchema, e.TestConnectionResultSchema, e.TestConnectionStatusEnum, e.TestResultSchema, e.TimelapseRuleInputSchema, e.TimelapseRulePatchSchema, e.TimelapseRuleSchema, e.TimelapseTemplateSchema, e.ToastSchema, e.TokenScopeSchema, e.TopologyNodeSchema, e.TopologyProcessSchema, e.TopologyServiceSchema, e.TrackCascadeCountsSchema, e.TrackEnvelopeSchema, e.TrackFlagsPatchSchema, e.TrackFlagsSchema, e.TrackProjectionSchema, e.TrackSchema, e.TrackSourceSchema, e.TrackStateSchema, e.TrackZoneFilterSchema, e.TrackedDetectionSchema, e.TrainingExportDeviceTotalsSchema, e.TrainingExportSummarySchema, e.TurnServerSchema, e.UNIT_TABLE, e.UnifiedBrokerInfoSchema, e.UnitConversionError, e.UpdateIntegrationInputSchema, e.UpdateStatusSchema, e.UpdateUserInputSchema, e.UserRecordSchema, e.UserSummarySchema, e.VacuumControlStatusSchema, e.VacuumStateSchema, e.ValveStateSchema, e.ValveStatusSchema, e.VectorDeclareIndexInputSchema, e.VectorDeleteByFilterInputSchema, e.VectorDeleteInputSchema, e.VectorDeleteResultSchema, e.VectorFilterSchema, e.VectorGetInputSchema, e.VectorGetResultSchema, e.VectorItemSchema, e.VectorMatchSchema, e.VectorMetadataSchema, e.VectorMetricSchema, e.VectorQueryInputSchema, e.VectorQueryResultSchema, e.VectorStatsInputSchema, e.VectorStatsResultSchema, e.VectorUpsertInputSchema, e.VectorUpsertResultSchema, e.VibrationStatusSchema, e.VideoEncodeSchema, e.WEBRTC_EGRESS_PROFILE, e.WELL_KNOWN_TABS, e.WELL_KNOWN_TAB_MAP, e.WaterHeaterStatusSchema, e.WeatherStatusSchema, e.WebrtcStreamChoiceSchema, e.WebrtcStreamTargetSchema, e.WhiteBalanceModeSchema, e.WidgetHostEnum, e.WidgetLoginMethodSchema, e.WidgetMetadataSchema, e.WidgetRemoteSchema, e.WidgetSizeEnum, e.YAMNET_TO_MACRO, e.ZoneCrossingDirectionSchema, e.ZoneCrossingSchema, e.ZoneKindEnum, e.ZoneRuleModeEnum, e.ZoneRuleSchema, e.ZoneRuleStageEnum, e.ZoneRulesArraySchema, e.ZoneSchema, e.ZoneScopeBreakdownSchema, e.accessoriesCapability, e.accessoryStableId, e.addonPagesCapability, e.addonPagesSourceCapability, e.addonRoutesCapability, e.addonSettingsCapability, e.addonWidgetsCapability, e.addonWidgetsSourceCapability, e.addonsCapability, e.adminUiCapability, e.airQualitySensorCapability, e.alarmPanelCapability, e.alertsCapability, e.ambientLightSensorCapability, e.asBoolean, e.asJsonArray, e.asJsonObject, e.asNumber, e.asString, e.assertTimelapseCadences, e.audioAnalysisCapability, e.audioAnalyzerCapability, e.audioCodecCapability, e.audioIsFailClosed, e.audioLabelChoices, e.audioMetricsCapability, e.audioModeOf, e.audioOrDefaults, e.audioPlanFromEncodeProfile, e.authProviderCapability, e.autoAssignProfiles, e.automationControlCapability, e.backupCapability, e.bareAddonId, e.batteryCapability, e.bestLocationMatch, e.binaryCapability, e.bindAddonActions, e.brightnessCapability, e.brokerCapability, e.buildAddonRouteProvider, e.buildAudioArgs, e.buildEventKindDescriptor, e.buildFfmpegArgs, e.buildInputArgs, e.buildModelVariantGroups, e.buildNcTaxonomy, e.buildRoleScopes, e.buildStreamParamsConfigSchema, e.buildVideoArgs, e.buttonCapability, e.cameraCredentialsCapability, e.cameraPipelineConfigCapability, e.cameraStreamsCapability, e.canConvertUnit, e.canonicalEgressPlan, e.carbonMonoxideCapability, e.cellsToRects, e.classifyBearerPrincipal, e.classifyStream, e.classifyStreams, e.climateControlCapability, e.collectHydratedFieldEntries, e.collectHydratedFieldValues, e.colorCapability, e.colorForKind, e.compileExpression, e.compileExpressionSafe, e.composeSwitchedOff, e.conditionDepth, e.connectionTestCapability, e.connectivityCapability, e.consumablesCapability, e.contactCapability, e.controlCapability, e.convertUnit, e.coreBlockAddonId, e.coreBlockIdFromAddonId, e.coreBlocksCapability, e.cosineSimilarity, e.countConditionLeaves, e.coverCapability, e.createDeviceProxy, e.createDurableState, e.createEvent, e.createExpressionScope, e.createHwAccelCache, e.createLazyTrpcSource, e.createMirrorSource, e.createRuntimeStateBridge, e.createSliceHandle, e.createSystemProxy, e.customAction, e.customModelRegistryCapability, e.dataStoreProviderCapability, e.dayNightCapability, e.declarationOwnerNodeId, e.decodeVectorBase64, e.decoderCapability, e.defaultDeviceFor, e.defineCustomActions, e.deriveCameraSwitches, e.deriveDetailCropRect, e.deriveRecordingMode, e.describeModelVariant, e.detectAccessRole, e.detectionPipelineCapability, e.deviceAdoptionCapability, e.deviceBackendToFormat, e.deviceCustomAction, e.deviceDiscoveryCapability, e.deviceExportCapability, e.deviceManagerCapability, e.deviceMatchesProfile, e.deviceOpsCapability, e.deviceProviderCapability, e.deviceSelectorMatches, e.deviceStateCapability, e.deviceStatusCapability, e.doorbellCapability, e.egressTranscodeSharingKey, e.egressTransportFromRequest, e.embeddingEncoderCapability, e.emitDownForOwnedCaps, e.emitReadiness, e.encodeProfileFromStreamShape, e.encodeVectorBase64, e.enumSensorCapability, e.enumerateInferenceDevices, e.enumerateItemArrayFields, e.enumerateSchemaFields, e.errMsg, e.evaluateAst, e.evaluateExpressionSource, e.evaluateZoneRules, e.event, e.eventEmitterCapability, e.eventsCapability, e.expandCapMethods, e.extractNestedAddonId, e.extractSourceInfoFromMetadata, e.faceGalleryCapability, e.fanControlCapability, e.featureProbeCapability, e.filesystemBrowseCapability, e.findTimezone, e.floodCapability, e.formatForBackend, e.formatForRuntime, e.gasCapability, e.generateAutomationBlock, e.getAudioMacroClassIds, e.getByPath, e.getCapsByProviderKind, e.getTaxonomyEntry, e.hasMotionTrigger, e.hfModelUrl, e.htmlToText, e.humidifierCapability, e.humiditySensorCapability, e.hydrateSchema, e.imageCapability, e.imageSettingsCapability, e.integrationsCapability, e.intercomCapability, e.invocationFromEncodeProfile, e.isAgentOnlyPlacement, e.isArrayOutputSchema, e.isAudioLabelSelected, e.isBaseConditionKey, e.isCollectionArrayMethod, e.isDeployableToAgent, e.isDetectionMacroClass, e.isDeviceConfigCap, e.isDeviceScopedCap, e.isEvent, e.isIsolatedBuiltin, e.isNode, e.isObjectInput, e.isRestoredCap, e.isSameAddonId, e.isScheduleActive, e.isSoftwareDecode, e.isVoidInput, e.jobKindSchema, e.kebabToCamel, e.knownValues, e.lawnMowerControlCapability, e.lifecycleJobSchema, e.lifecycleJobScopeSchema, e.lifecycleJobStateSchema, e.lifecycleTaskSchema, e.llmCapability, e.llmRuntimeCapability, e.localNetworkCapability, e.locationSimilarity, e.lockControlCapability, e.logBannerArgs, e.logDestinationCapability, e.logLevelAtMost, e.loginMethodCapability, e.looseSchema, e.makeProfileBrokerId, a = e.makeSourceBrokerId, e.mapAudioLabelToMacro, e.markdownToHtmlLite, e.markdownToText, e.maskUrlCredentials, e.mediaPlayerCapability, e.mergeSourceInfo, e.meshNetworkCapability, e.method, e.methodAccessForHttpMethod, e.metricsProviderCapability, e.modelConvertCapability, e.modelDistributorCapability, e.modelFormatForRuntime, e.motionCapability, e.motionDetectionCapability, e.motionTriggerCapability, e.motionZonesCapability, e.mqttBrokerCapability, e.nativeObjectDetectionCapability, e.networkAccessCapability, e.networkQualityCapability, e.nodePin, e.nodesCapability, e.normalizeAddonInitResult, e.normalizeAudioLabel, e.normalizeTokenScopes, e.normalizeUnit, e.notificationOutputCapability, e.notificationRulesCapability, e.notifierCapability, e.numericSensorCapability, e.oauthIntegrationCapability, e.objectInputDeclaresAddonId, e.osdCapability, e.osdManagerCapability, e.parseCameraStreamConfig, e.parseExpression, e.parseJsonArray, e.parseJsonObject, e.parseJsonUnknown, e.parseProfileBrokerId, e.parseStreamParamsFormPatch, e.patchAudio, e.petFeederCapability, e.pickAccessoryControl, e.pickDetailCropConvention, e.pickNativeLeaseOverride, e.pickPreferredRtspEntry, e.pickVideoEncoder, e.pickerForCondition, e.pipelineAnalyticsCapability, e.pipelineExecutorCapability, e.pipelineOrchestratorCapability, e.pipelineRunnerCapability, e.plateGalleryCapability, e.platformProbeCapability, e.powerMeterCapability, e.prepareNotification, e.presenceCapability, e.pressureSensorCapability, e.principalMayReachAddon, e.privacyMaskCapability, e.procedureAuthKey, e.ptzAutotrackCapability, e.ptzCapability, e.pythonScriptForBackend, e.readDetailCropConvention, e.readDeviceStateFrom, e.readNativeLeaseOverride, e.readNodePin, e.readTimelapseGeneratedAt, e.readinessKey, e.rebootCapability, e.recordingCapability, e.recordingExportCapability, e.rectsToCells, e.requiresPython, e.resolveAddonExecution, e.resolveAddonGroup, e.resolveAddonPlacement, e.resolveAddonRuntime, e.resolveCapMount, e.resolveDetectionRuntime, e.resolveDeviceControlKind, e.resolveDeviceProfile, e.resolveEgressDecodeHwAccel, e.resolveFormat, e.resolveHydratedFieldValue, e.resolveModelFormat, e.resolveMutate, e.resolveRunnerId, e.resolveScrubThumbnailGeometry, e.resolveVariantModelId, e.resolveViewableDeviceIds, e.roleSpec, e.runInferenceStep, e.runtimeDevices, e.runtimeStatePolicyFor, e.sceneMonitorCapability, e.scopeInherits, e.scopeKey, e.scopesAllowAddon, e.scopesAllowDeviceCap, e.scoreRuntimes, e.scriptRunnerCapability, e.selectAssignedProfileSlots, e.serverManagementCapability, e.setByPath, e.settingsStoreCapability, e.sleep, e.sleepCancellable, e.smokeCapability, e.smtpProviderCapability, e.snapshotCapability, e.ssoBridgeCapability, e.startReachabilityPoll, e.stateVocabularyFor, e.storageCapability, e.storageEvictableCapability, e.storageMigrationCapability, e.storageProviderCapability, e.streamBrokerCapability, e.streamCatalogCapability, e.streamParamsCapability, e.streamPixels, e.streamQualityLabel, e.subKindsOf, e.summarisePrivacyAudio, e.summarizeEffectiveScope, e.supportedRuntimes, e.switchCapability, e.switchedOffIds, e.synthesizeSourceInfo, e.systemCapability, e.tamperCapability, e.taskLogEntrySchema, e.taskPhaseSchema, e.taskTargetSchema, e.temperatureSensorCapability, e.terminalSessionCapability, e.textToHtml, e.toDeviceSummary, e.toExpressionValue, e.toNodeId, e.toStreamSourceEntry, e.toastCapability, e.toggleAudioLabel, e.tokenize, e.transcodeBody, e.tryConvertUnit, e.turnProviderCapability, e.unitDimension, e.unitsForDimension, e.updateCapability, e.userManagementCapability, e.userPasskeysCapability, e.vacuumControlCapability, e.validateExpressionSource, e.validateRecipeBounds, e.valveCapability, e.vectorDimFromBase64, e.vectorStoreCapability, e.vibrationCapability, e.videoclipsCapability, e.viewerUiCapability, e.waterHeaterCapability, e.weatherCapability, e.webrtcClientHintsSchema, e.webrtcSessionCapability, e.wiringAddonHealthSchema, e.wiringHealthSnapshotSchema, e.wiringNodeHealthSchema, e.wiringProbeKindSchema, e.wiringProbeResultSchema, e.zodEntriesToConfigUI, e.zoneAnalyticsCapability, e.zoneRulesCapability, e.zonesCapability, e.default;
|
|
20
|
-
}, s = i.share["default:@camstack/types"];
|
|
21
|
-
s === void 0 ? n.then(() => {
|
|
22
|
-
if (s = i.share["default:@camstack/types"], s === void 0) throw Error("[Module Federation] Shared module @camstack/types was imported before federation bootstrap finished.");
|
|
23
|
-
o(s);
|
|
24
|
-
}) : o(s);
|
|
25
|
-
//#endregion
|
|
26
|
-
export { a as t };
|