@camstack/addon-pipeline 1.2.67 → 1.2.68
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/audio-analyzer/index.js +1 -1
- package/dist/audio-analyzer/index.mjs +1 -1
- package/dist/detection-pipeline/index.js +2 -2
- package/dist/detection-pipeline/index.mjs +2 -2
- package/dist/{dist-B6GWr9am.js → dist-Bv9CqUAF.js} +9 -9
- package/dist/{dist-BEbyhqoG.mjs → dist-CwUPxdAB.mjs} +9 -9
- package/dist/{event-loop-stall-monitor-BHOEgVnP.js → event-loop-stall-monitor-Bz3lx_aY.js} +1 -1
- package/dist/{event-loop-stall-monitor-BNyf5yEt.mjs → event-loop-stall-monitor-D2dL-_bE.mjs} +1 -1
- package/dist/motion-wasm/index.js +1 -1
- package/dist/motion-wasm/index.mjs +1 -1
- package/dist/pipeline-runner/index.js +3 -3
- package/dist/pipeline-runner/index.mjs +3 -3
- package/dist/recorder/index.js +8 -8
- package/dist/recorder/index.mjs +8 -8
- package/dist/session-decode/decode-worker-child.js +1 -1
- package/dist/session-decode/decode-worker-child.mjs +1 -1
- package/dist/stream-broker/{_virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-BkKnIpb0.mjs → _virtual_mf-localSharedImportMap___mfe_internal__addon_stream_broker_widgets-Cl4eU4eN.mjs} +1 -1
- package/dist/stream-broker/{hostInit-y3zWHWoe.mjs → hostInit-_NJ0GBOO.mjs} +1 -1
- package/dist/stream-broker/index.js +1 -1
- package/dist/stream-broker/index.mjs +1 -1
- package/dist/stream-broker/remoteEntry.js +1 -1
- package/dist/{worker-protocol-CBg9bqCs.mjs → worker-protocol-0uQE5Lfd.mjs} +1 -1
- package/dist/{worker-protocol-qzaozj7t.js → worker-protocol-D8M43suz.js} +1 -1
- package/package.json +2 -2
|
@@ -3,7 +3,7 @@ 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-
|
|
6
|
+
const require_dist = require("../dist-Bv9CqUAF.js");
|
|
7
7
|
const require_node_topology_platform = require("../node-topology-platform-CFZ7F4xW.js");
|
|
8
8
|
const require_addon_utils = require("../addon-utils-CQs-AjTJ.js");
|
|
9
9
|
let node_fs = require("node:fs");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { n as __require } from "../chunk-DnnnRqeS.mjs";
|
|
2
|
-
import { B as mapAudioLabelToMacro, E as audioAnalyzerCapability, T as audioAnalysisCapability, ft as hydrateSchema, m as HF_BASE_URL, n as AUDIO_BACKEND_CHOICES, o as DEFAULT_AUDIO_ANALYZER_CONFIG, st as BaseAddon, tt as errMsg } from "../dist-
|
|
2
|
+
import { B as mapAudioLabelToMacro, E as audioAnalyzerCapability, T as audioAnalysisCapability, ft as hydrateSchema, m as HF_BASE_URL, n as AUDIO_BACKEND_CHOICES, o as DEFAULT_AUDIO_ANALYZER_CONFIG, st as BaseAddon, tt as errMsg } from "../dist-CwUPxdAB.mjs";
|
|
3
3
|
import { t as pickNodePlatformArch } from "../node-topology-platform-BkR_k6WT.mjs";
|
|
4
4
|
import { i as downloadFile } from "../addon-utils-CZ2xo67g.mjs";
|
|
5
5
|
import * as fs from "node:fs";
|
|
@@ -3,8 +3,8 @@ 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-
|
|
7
|
-
const require_event_loop_stall_monitor = require("../event-loop-stall-monitor-
|
|
6
|
+
const require_dist = require("../dist-Bv9CqUAF.js");
|
|
7
|
+
const require_event_loop_stall_monitor = require("../event-loop-stall-monitor-Bz3lx_aY.js");
|
|
8
8
|
const require_lazy_sharp = require("../lazy-sharp-CcYuXtsa.js");
|
|
9
9
|
const require_node_topology_platform = require("../node-topology-platform-CFZ7F4xW.js");
|
|
10
10
|
const require_addon_utils = require("../addon-utils-CQs-AjTJ.js");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { n as __require } from "../chunk-DnnnRqeS.mjs";
|
|
2
|
-
import { $ as supportedRuntimes$1, A as defaultDeviceFor$1, At as string, C as YAMNET_TO_MACRO, G as pipelineExecutorCapability, L as enumerateInferenceDevices, Mt as EventCategory, Ot as object, P as detectionPipelineCapability, R as evaluateZoneRules, St as array, X as runtimeDevices$1, _t as parseJsonUnknown, bt as sleep, dt as createEvent, ft as hydrateSchema, gt as nodePin, jt as union, st as BaseAddon, t as APPLE_SA_TO_MACRO, tt as errMsg, u as DEVICE_BACKEND_TO_FORMAT } from "../dist-
|
|
3
|
-
import { a as getDefaultModelForFormat, c as getStepDefinition, i as ALL_STEPS, l as resolveModelForFormat, n as startEventLoopStallMonitor, o as getDefaultModelForFormatFromDef, r as ALL_PIPELINE_STEPS, s as getStep } from "../event-loop-stall-monitor-
|
|
2
|
+
import { $ as supportedRuntimes$1, A as defaultDeviceFor$1, At as string, C as YAMNET_TO_MACRO, G as pipelineExecutorCapability, L as enumerateInferenceDevices, Mt as EventCategory, Ot as object, P as detectionPipelineCapability, R as evaluateZoneRules, St as array, X as runtimeDevices$1, _t as parseJsonUnknown, bt as sleep, dt as createEvent, ft as hydrateSchema, gt as nodePin, jt as union, st as BaseAddon, t as APPLE_SA_TO_MACRO, tt as errMsg, u as DEVICE_BACKEND_TO_FORMAT } from "../dist-CwUPxdAB.mjs";
|
|
3
|
+
import { a as getDefaultModelForFormat, c as getStepDefinition, i as ALL_STEPS, l as resolveModelForFormat, n as startEventLoopStallMonitor, o as getDefaultModelForFormatFromDef, r as ALL_PIPELINE_STEPS, s as getStep } from "../event-loop-stall-monitor-D2dL-_bE.mjs";
|
|
4
4
|
import { t as getSharp } from "../lazy-sharp-B-mb8uWx.mjs";
|
|
5
5
|
import { t as pickNodePlatformArch } from "../node-topology-platform-BkR_k6WT.mjs";
|
|
6
6
|
import { a as ensureModel, o as isModelDownloaded, r as deleteModelFromDisk } from "../addon-utils-CZ2xo67g.mjs";
|
|
@@ -25482,7 +25482,7 @@ var recordingCapability = {
|
|
|
25482
25482
|
}
|
|
25483
25483
|
};
|
|
25484
25484
|
/**
|
|
25485
|
-
* `
|
|
25485
|
+
* `recording-export` cap — render a footage time range into a single downloadable
|
|
25486
25486
|
* MP4 (regular / accelerated / decelerated / timelapse, ± audio), kept for a
|
|
25487
25487
|
* bounded lifetime with a durable history, auto-expiry, and optional
|
|
25488
25488
|
* delete-after-download.
|
|
@@ -25623,7 +25623,7 @@ var ExportBytesSchema = object({
|
|
|
25623
25623
|
bytes: number().int().nonnegative()
|
|
25624
25624
|
});
|
|
25625
25625
|
var recordingExportCapability = {
|
|
25626
|
-
name: "
|
|
25626
|
+
name: "recording-export",
|
|
25627
25627
|
scope: "system",
|
|
25628
25628
|
mode: "singleton",
|
|
25629
25629
|
methods: {
|
|
@@ -31005,43 +31005,43 @@ Object.freeze({
|
|
|
31005
31005
|
access: "create"
|
|
31006
31006
|
},
|
|
31007
31007
|
"recordingExport.cancelExport": {
|
|
31008
|
-
capName: "
|
|
31008
|
+
capName: "recording-export",
|
|
31009
31009
|
capScope: "system",
|
|
31010
31010
|
addonId: null,
|
|
31011
31011
|
access: "create"
|
|
31012
31012
|
},
|
|
31013
31013
|
"recordingExport.createExport": {
|
|
31014
|
-
capName: "
|
|
31014
|
+
capName: "recording-export",
|
|
31015
31015
|
capScope: "system",
|
|
31016
31016
|
addonId: null,
|
|
31017
31017
|
access: "create"
|
|
31018
31018
|
},
|
|
31019
31019
|
"recordingExport.deleteExport": {
|
|
31020
|
-
capName: "
|
|
31020
|
+
capName: "recording-export",
|
|
31021
31021
|
capScope: "system",
|
|
31022
31022
|
addonId: null,
|
|
31023
31023
|
access: "delete"
|
|
31024
31024
|
},
|
|
31025
31025
|
"recordingExport.getDownloadUrl": {
|
|
31026
|
-
capName: "
|
|
31026
|
+
capName: "recording-export",
|
|
31027
31027
|
capScope: "system",
|
|
31028
31028
|
addonId: null,
|
|
31029
31029
|
access: "view"
|
|
31030
31030
|
},
|
|
31031
31031
|
"recordingExport.getExport": {
|
|
31032
|
-
capName: "
|
|
31032
|
+
capName: "recording-export",
|
|
31033
31033
|
capScope: "system",
|
|
31034
31034
|
addonId: null,
|
|
31035
31035
|
access: "view"
|
|
31036
31036
|
},
|
|
31037
31037
|
"recordingExport.listExports": {
|
|
31038
|
-
capName: "
|
|
31038
|
+
capName: "recording-export",
|
|
31039
31039
|
capScope: "system",
|
|
31040
31040
|
addonId: null,
|
|
31041
31041
|
access: "view"
|
|
31042
31042
|
},
|
|
31043
31043
|
"recordingExport.readExportBytes": {
|
|
31044
|
-
capName: "
|
|
31044
|
+
capName: "recording-export",
|
|
31045
31045
|
capScope: "system",
|
|
31046
31046
|
addonId: null,
|
|
31047
31047
|
access: "view"
|
|
@@ -25482,7 +25482,7 @@ var recordingCapability = {
|
|
|
25482
25482
|
}
|
|
25483
25483
|
};
|
|
25484
25484
|
/**
|
|
25485
|
-
* `
|
|
25485
|
+
* `recording-export` cap — render a footage time range into a single downloadable
|
|
25486
25486
|
* MP4 (regular / accelerated / decelerated / timelapse, ± audio), kept for a
|
|
25487
25487
|
* bounded lifetime with a durable history, auto-expiry, and optional
|
|
25488
25488
|
* delete-after-download.
|
|
@@ -25623,7 +25623,7 @@ var ExportBytesSchema = object({
|
|
|
25623
25623
|
bytes: number().int().nonnegative()
|
|
25624
25624
|
});
|
|
25625
25625
|
var recordingExportCapability = {
|
|
25626
|
-
name: "
|
|
25626
|
+
name: "recording-export",
|
|
25627
25627
|
scope: "system",
|
|
25628
25628
|
mode: "singleton",
|
|
25629
25629
|
methods: {
|
|
@@ -31005,43 +31005,43 @@ Object.freeze({
|
|
|
31005
31005
|
access: "create"
|
|
31006
31006
|
},
|
|
31007
31007
|
"recordingExport.cancelExport": {
|
|
31008
|
-
capName: "
|
|
31008
|
+
capName: "recording-export",
|
|
31009
31009
|
capScope: "system",
|
|
31010
31010
|
addonId: null,
|
|
31011
31011
|
access: "create"
|
|
31012
31012
|
},
|
|
31013
31013
|
"recordingExport.createExport": {
|
|
31014
|
-
capName: "
|
|
31014
|
+
capName: "recording-export",
|
|
31015
31015
|
capScope: "system",
|
|
31016
31016
|
addonId: null,
|
|
31017
31017
|
access: "create"
|
|
31018
31018
|
},
|
|
31019
31019
|
"recordingExport.deleteExport": {
|
|
31020
|
-
capName: "
|
|
31020
|
+
capName: "recording-export",
|
|
31021
31021
|
capScope: "system",
|
|
31022
31022
|
addonId: null,
|
|
31023
31023
|
access: "delete"
|
|
31024
31024
|
},
|
|
31025
31025
|
"recordingExport.getDownloadUrl": {
|
|
31026
|
-
capName: "
|
|
31026
|
+
capName: "recording-export",
|
|
31027
31027
|
capScope: "system",
|
|
31028
31028
|
addonId: null,
|
|
31029
31029
|
access: "view"
|
|
31030
31030
|
},
|
|
31031
31031
|
"recordingExport.getExport": {
|
|
31032
|
-
capName: "
|
|
31032
|
+
capName: "recording-export",
|
|
31033
31033
|
capScope: "system",
|
|
31034
31034
|
addonId: null,
|
|
31035
31035
|
access: "view"
|
|
31036
31036
|
},
|
|
31037
31037
|
"recordingExport.listExports": {
|
|
31038
|
-
capName: "
|
|
31038
|
+
capName: "recording-export",
|
|
31039
31039
|
capScope: "system",
|
|
31040
31040
|
addonId: null,
|
|
31041
31041
|
access: "view"
|
|
31042
31042
|
},
|
|
31043
31043
|
"recordingExport.readExportBytes": {
|
|
31044
|
-
capName: "
|
|
31044
|
+
capName: "recording-export",
|
|
31045
31045
|
capScope: "system",
|
|
31046
31046
|
addonId: null,
|
|
31047
31047
|
access: "view"
|
package/dist/{event-loop-stall-monitor-BNyf5yEt.mjs → event-loop-stall-monitor-D2dL-_bE.mjs}
RENAMED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { a as COCO_TO_MACRO, i as COCO_80_LABELS, r as AUDIO_MACRO_LABELS, z as hfModelUrl } from "./dist-
|
|
1
|
+
import { a as COCO_TO_MACRO, i as COCO_80_LABELS, r as AUDIO_MACRO_LABELS, z as hfModelUrl } from "./dist-CwUPxdAB.mjs";
|
|
2
2
|
import { PerformanceObserver } from "node:perf_hooks";
|
|
3
3
|
//#region src/detection-pipeline/registry/model-catalogs.ts
|
|
4
4
|
var HF_REPO = "camstack/camstack-models";
|
|
@@ -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-Bv9CqUAF.js");
|
|
6
6
|
const require_lazy_sharp = require("../lazy-sharp-CcYuXtsa.js");
|
|
7
7
|
let node_fs = require("node:fs");
|
|
8
8
|
let node_path = require("node:path");
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { H as motionDetectionCapability, R as evaluateZoneRules, ft as hydrateSchema, st as BaseAddon, ut as DeviceType } from "../dist-
|
|
1
|
+
import { H as motionDetectionCapability, R as evaluateZoneRules, ft as hydrateSchema, st as BaseAddon, ut as DeviceType } from "../dist-CwUPxdAB.mjs";
|
|
2
2
|
import { t as getSharp } from "../lazy-sharp-B-mb8uWx.mjs";
|
|
3
3
|
import { readFileSync } from "node:fs";
|
|
4
4
|
import { join } from "node:path";
|
|
@@ -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-
|
|
7
|
-
const require_event_loop_stall_monitor = require("../event-loop-stall-monitor-
|
|
8
|
-
const require_worker_protocol = require("../worker-protocol-
|
|
6
|
+
const require_dist = require("../dist-Bv9CqUAF.js");
|
|
7
|
+
const require_event_loop_stall_monitor = require("../event-loop-stall-monitor-Bz3lx_aY.js");
|
|
8
|
+
const require_worker_protocol = require("../worker-protocol-D8M43suz.js");
|
|
9
9
|
const require_hub_hostname = require("../hub-hostname-DAJXlOgV.js");
|
|
10
10
|
const require_lazy_sharp = require("../lazy-sharp-CcYuXtsa.js");
|
|
11
11
|
const require_remote_restream = require("../remote-restream-BYbAsgUf.js");
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { At as string, Ct as boolean, Dt as number, Et as literal, K as pipelineRunnerCapability, M as deriveDetailCropRect, Mt as EventCategory, Ot as object, St as array, Tt as lazy, U as pickDetailCropConvention, W as pickNativeLeaseOverride, dt as createEvent, gt as nodePin, j as defineCustomActions, k as customAction, s as DEFAULT_DETAIL_CROP_CONVENTION, st as BaseAddon, tt as errMsg, u as DEVICE_BACKEND_TO_FORMAT, xt as _enum } from "../dist-
|
|
2
|
-
import { c as getStepDefinition, t as attributeStall } from "../event-loop-stall-monitor-
|
|
3
|
-
import { a as nativeLeaseSettingEnv, t as isWorkerReply } from "../worker-protocol-
|
|
1
|
+
import { At as string, Ct as boolean, Dt as number, Et as literal, K as pipelineRunnerCapability, M as deriveDetailCropRect, Mt as EventCategory, Ot as object, St as array, Tt as lazy, U as pickDetailCropConvention, W as pickNativeLeaseOverride, dt as createEvent, gt as nodePin, j as defineCustomActions, k as customAction, s as DEFAULT_DETAIL_CROP_CONVENTION, st as BaseAddon, tt as errMsg, u as DEVICE_BACKEND_TO_FORMAT, xt as _enum } from "../dist-CwUPxdAB.mjs";
|
|
2
|
+
import { c as getStepDefinition, t as attributeStall } from "../event-loop-stall-monitor-D2dL-_bE.mjs";
|
|
3
|
+
import { a as nativeLeaseSettingEnv, t as isWorkerReply } from "../worker-protocol-0uQE5Lfd.mjs";
|
|
4
4
|
import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
|
|
5
5
|
import { t as getSharp } from "../lazy-sharp-B-mb8uWx.mjs";
|
|
6
6
|
import { i as withDetectionIntent, n as profileForStreamId, t as isRemoteRestream } from "../remote-restream-Ci7RXNGb.mjs";
|
package/dist/recorder/index.js
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
const require_chunk = require("../chunk-emK7D4bc.js");
|
|
2
|
-
const require_dist = require("../dist-
|
|
2
|
+
const require_dist = require("../dist-Bv9CqUAF.js");
|
|
3
3
|
const require_hub_hostname = require("../hub-hostname-DAJXlOgV.js");
|
|
4
4
|
const require_addon_utils = require("../addon-utils-CQs-AjTJ.js");
|
|
5
5
|
let node_crypto = require("node:crypto");
|
|
@@ -3320,15 +3320,15 @@ function hasFootage(index, deviceId, profile, fromMs, toMs) {
|
|
|
3320
3320
|
/** Load a record or throw a clear NOT_FOUND-style error. */
|
|
3321
3321
|
async function requireRecord(state, exportId) {
|
|
3322
3322
|
const rec = await getExportRecord(state, exportId);
|
|
3323
|
-
if (!rec) throw new Error(`
|
|
3323
|
+
if (!rec) throw new Error(`recording-export: unknown export "${exportId}"`);
|
|
3324
3324
|
return rec;
|
|
3325
3325
|
}
|
|
3326
3326
|
/** Build the `recordingExport` provider over the injected deps. */
|
|
3327
3327
|
function buildRecordingExportProvider(deps) {
|
|
3328
3328
|
return {
|
|
3329
3329
|
createExport: async ({ deviceId, profile, fromMs, toMs, options }) => {
|
|
3330
|
-
if (!(fromMs < toMs)) throw new Error(`
|
|
3331
|
-
if (!hasFootage(deps.index, deviceId, profile, fromMs, toMs)) throw new Error(`
|
|
3330
|
+
if (!(fromMs < toMs)) throw new Error(`recording-export: invalid range ${fromMs}..${toMs}`);
|
|
3331
|
+
if (!hasFootage(deps.index, deviceId, profile, fromMs, toMs)) throw new Error(`recording-export: no footage for ${deviceId}/${profile} in ${fromMs}..${toMs}`);
|
|
3332
3332
|
const now = deps.now();
|
|
3333
3333
|
const record = {
|
|
3334
3334
|
id: deps.newId(),
|
|
@@ -3385,7 +3385,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3385
3385
|
state: rec.state
|
|
3386
3386
|
}
|
|
3387
3387
|
});
|
|
3388
|
-
throw new Error(`
|
|
3388
|
+
throw new Error(`recording-export: export "${exportId}" is not ready (${rec.state})`);
|
|
3389
3389
|
}
|
|
3390
3390
|
if (deps.now() >= rec.expiresAt) {
|
|
3391
3391
|
deps.logger.warn("export byte read refused: export has expired", {
|
|
@@ -3395,7 +3395,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3395
3395
|
expiresAt: rec.expiresAt
|
|
3396
3396
|
}
|
|
3397
3397
|
});
|
|
3398
|
-
throw new Error(`
|
|
3398
|
+
throw new Error(`recording-export: export "${exportId}" has expired`);
|
|
3399
3399
|
}
|
|
3400
3400
|
const file = deps.outPath(rec);
|
|
3401
3401
|
let size;
|
|
@@ -3409,7 +3409,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3409
3409
|
error: String(err)
|
|
3410
3410
|
}
|
|
3411
3411
|
});
|
|
3412
|
-
throw new Error(`
|
|
3412
|
+
throw new Error(`recording-export: export "${exportId}" has no file on disk`, { cause: err });
|
|
3413
3413
|
}
|
|
3414
3414
|
if (size > 52428800) {
|
|
3415
3415
|
deps.logger.warn("export byte read refused: file is too large to inline", {
|
|
@@ -3420,7 +3420,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3420
3420
|
maxBytes: require_dist.RECORDING_EXPORT_MAX_READ_BYTES
|
|
3421
3421
|
}
|
|
3422
3422
|
});
|
|
3423
|
-
throw new Error(`
|
|
3423
|
+
throw new Error(`recording-export: export "${exportId}" is too large to read inline (${size} > ${require_dist.RECORDING_EXPORT_MAX_READ_BYTES} bytes)`);
|
|
3424
3424
|
}
|
|
3425
3425
|
const bytes = await deps.readFile(file);
|
|
3426
3426
|
return {
|
package/dist/recorder/index.mjs
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { At as string, J as recordingExportCapability, Mt as EventCategory, N as deriveRecordingMode, St as array, Z as storageEvictableCapability, _ as OpsLogEntrySchema, b as RECORDING_EXPORT_MAX_READ_BYTES, c as DEFAULT_EVENTS_BAND_BUFFER_SEC, d as EVENT_PAD_MS, ft as hydrateSchema, gt as nodePin, kt as record, p as ExportRecordSchema, q as recordingCapability, st as BaseAddon, tt as errMsg, ut as DeviceType, x as RecordingConfigSchema, yt as selectAssignedProfileSlots } from "../dist-
|
|
1
|
+
import { At as string, J as recordingExportCapability, Mt as EventCategory, N as deriveRecordingMode, St as array, Z as storageEvictableCapability, _ as OpsLogEntrySchema, b as RECORDING_EXPORT_MAX_READ_BYTES, c as DEFAULT_EVENTS_BAND_BUFFER_SEC, d as EVENT_PAD_MS, ft as hydrateSchema, gt as nodePin, kt as record, p as ExportRecordSchema, q as recordingCapability, st as BaseAddon, tt as errMsg, ut as DeviceType, x as RecordingConfigSchema, yt as selectAssignedProfileSlots } from "../dist-CwUPxdAB.mjs";
|
|
2
2
|
import { t as resolveHubHostname } from "../hub-hostname-cCknRYKj.mjs";
|
|
3
3
|
import { n as createFileDataPlaneHandler, s as parseRangeHeader, t as contentTypeFor } from "../addon-utils-CZ2xo67g.mjs";
|
|
4
4
|
import { randomUUID } from "node:crypto";
|
|
@@ -3318,15 +3318,15 @@ function hasFootage(index, deviceId, profile, fromMs, toMs) {
|
|
|
3318
3318
|
/** Load a record or throw a clear NOT_FOUND-style error. */
|
|
3319
3319
|
async function requireRecord(state, exportId) {
|
|
3320
3320
|
const rec = await getExportRecord(state, exportId);
|
|
3321
|
-
if (!rec) throw new Error(`
|
|
3321
|
+
if (!rec) throw new Error(`recording-export: unknown export "${exportId}"`);
|
|
3322
3322
|
return rec;
|
|
3323
3323
|
}
|
|
3324
3324
|
/** Build the `recordingExport` provider over the injected deps. */
|
|
3325
3325
|
function buildRecordingExportProvider(deps) {
|
|
3326
3326
|
return {
|
|
3327
3327
|
createExport: async ({ deviceId, profile, fromMs, toMs, options }) => {
|
|
3328
|
-
if (!(fromMs < toMs)) throw new Error(`
|
|
3329
|
-
if (!hasFootage(deps.index, deviceId, profile, fromMs, toMs)) throw new Error(`
|
|
3328
|
+
if (!(fromMs < toMs)) throw new Error(`recording-export: invalid range ${fromMs}..${toMs}`);
|
|
3329
|
+
if (!hasFootage(deps.index, deviceId, profile, fromMs, toMs)) throw new Error(`recording-export: no footage for ${deviceId}/${profile} in ${fromMs}..${toMs}`);
|
|
3330
3330
|
const now = deps.now();
|
|
3331
3331
|
const record = {
|
|
3332
3332
|
id: deps.newId(),
|
|
@@ -3383,7 +3383,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3383
3383
|
state: rec.state
|
|
3384
3384
|
}
|
|
3385
3385
|
});
|
|
3386
|
-
throw new Error(`
|
|
3386
|
+
throw new Error(`recording-export: export "${exportId}" is not ready (${rec.state})`);
|
|
3387
3387
|
}
|
|
3388
3388
|
if (deps.now() >= rec.expiresAt) {
|
|
3389
3389
|
deps.logger.warn("export byte read refused: export has expired", {
|
|
@@ -3393,7 +3393,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3393
3393
|
expiresAt: rec.expiresAt
|
|
3394
3394
|
}
|
|
3395
3395
|
});
|
|
3396
|
-
throw new Error(`
|
|
3396
|
+
throw new Error(`recording-export: export "${exportId}" has expired`);
|
|
3397
3397
|
}
|
|
3398
3398
|
const file = deps.outPath(rec);
|
|
3399
3399
|
let size;
|
|
@@ -3407,7 +3407,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3407
3407
|
error: String(err)
|
|
3408
3408
|
}
|
|
3409
3409
|
});
|
|
3410
|
-
throw new Error(`
|
|
3410
|
+
throw new Error(`recording-export: export "${exportId}" has no file on disk`, { cause: err });
|
|
3411
3411
|
}
|
|
3412
3412
|
if (size > 52428800) {
|
|
3413
3413
|
deps.logger.warn("export byte read refused: file is too large to inline", {
|
|
@@ -3418,7 +3418,7 @@ function buildRecordingExportProvider(deps) {
|
|
|
3418
3418
|
maxBytes: RECORDING_EXPORT_MAX_READ_BYTES
|
|
3419
3419
|
}
|
|
3420
3420
|
});
|
|
3421
|
-
throw new Error(`
|
|
3421
|
+
throw new Error(`recording-export: export "${exportId}" is too large to read inline (${size} > ${RECORDING_EXPORT_MAX_READ_BYTES} bytes)`);
|
|
3422
3422
|
}
|
|
3423
3423
|
const bytes = await deps.readFile(file);
|
|
3424
3424
|
return {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
Object.defineProperty(exports, Symbol.toStringTag, { value: "Module" });
|
|
2
2
|
const require_chunk = require("../chunk-emK7D4bc.js");
|
|
3
|
-
const require_worker_protocol = require("../worker-protocol-
|
|
3
|
+
const require_worker_protocol = require("../worker-protocol-D8M43suz.js");
|
|
4
4
|
let node_url = require("node:url");
|
|
5
5
|
let node_fs = require("node:fs");
|
|
6
6
|
node_fs = require_chunk.__toESM(node_fs);
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { i as formatNativeLeaseKnobs, n as isWorkerRequest, o as resolveNativeLeaseKnobs, r as logLevelForLine } from "../worker-protocol-
|
|
1
|
+
import { i as formatNativeLeaseKnobs, n as isWorkerRequest, o as resolveNativeLeaseKnobs, r as logLevelForLine } from "../worker-protocol-0uQE5Lfd.mjs";
|
|
2
2
|
import { pathToFileURL } from "node:url";
|
|
3
3
|
import * as fs from "node:fs";
|
|
4
4
|
import * as path$1 from "node:path";
|
|
@@ -3,7 +3,7 @@ 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-
|
|
6
|
+
const require_dist = require("../dist-Bv9CqUAF.js");
|
|
7
7
|
const require_remote_restream = require("../remote-restream-BYbAsgUf.js");
|
|
8
8
|
let node_crypto = require("node:crypto");
|
|
9
9
|
node_crypto = require_chunk.__toESM(node_crypto, 1);
|
|
@@ -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-CwUPxdAB.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";
|
|
@@ -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-Cl4eU4eN.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-CwUPxdAB.mjs";
|
|
2
2
|
//#region src/session-decode/native-lease-config.ts
|
|
3
3
|
/**
|
|
4
4
|
* Resolution of the native-frame lease 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.68",
|
|
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",
|
|
@@ -205,7 +205,7 @@
|
|
|
205
205
|
"optional": true
|
|
206
206
|
},
|
|
207
207
|
{
|
|
208
|
-
"name": "
|
|
208
|
+
"name": "recording-export",
|
|
209
209
|
"optional": true
|
|
210
210
|
},
|
|
211
211
|
{
|