@openmixer/plugin-qualify 0.11.0 → 0.12.0
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/README.md +6 -0
- package/dist/clap-qualify.d.ts +60 -4
- package/dist/clap-qualify.js +141 -3
- package/dist/clap-qualify.js.map +1 -1
- package/dist/hosting-suitability.d.ts +11 -2
- package/dist/hosting-suitability.js +14 -3
- package/dist/hosting-suitability.js.map +1 -1
- package/dist/measurement/cli.d.ts +7 -0
- package/dist/measurement/cli.js +14 -0
- package/dist/measurement/cli.js.map +1 -1
- package/dist/measurement/format.d.ts +44 -4
- package/dist/measurement/format.js +46 -3
- package/dist/measurement/format.js.map +1 -1
- package/dist/measurement/probe-json.js +3 -0
- package/dist/measurement/probe-json.js.map +1 -1
- package/dist/measurement/sweep-jsonl.js +2 -1
- package/dist/measurement/sweep-jsonl.js.map +1 -1
- package/dist/measurement/vocabulary.d.ts +9 -0
- package/dist/measurement/vocabulary.js +27 -0
- package/dist/measurement/vocabulary.js.map +1 -1
- package/dist/probe-judge.d.ts +6 -1
- package/dist/probe-judge.js +7 -3
- package/dist/probe-judge.js.map +1 -1
- package/dist/probe-output.d.ts +3 -0
- package/dist/probe-output.js +5 -0
- package/dist/probe-output.js.map +1 -1
- package/dist/qualification-record.d.ts +3 -1
- package/dist/qualification-record.js.map +1 -1
- package/package.json +1 -1
- package/src/clap-qualify.ts +177 -5
- package/src/hosting-suitability.ts +21 -4
- package/src/measurement/cli.ts +20 -0
- package/src/measurement/format.ts +80 -2
- package/src/measurement/probe-json.ts +3 -0
- package/src/measurement/sweep-jsonl.ts +2 -1
- package/src/measurement/vocabulary.ts +31 -0
- package/src/probe-judge.ts +13 -5
- package/src/probe-output.ts +6 -0
- package/src/qualification-record.ts +9 -2
- package/tools/benchmark.py +104 -13
- package/tools/lv2-measure.mjs +2 -0
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vocabulary.js","sourceRoot":"","sources":["../../src/measurement/vocabulary.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"vocabulary.js","sourceRoot":"","sources":["../../src/measurement/vocabulary.ts"],"names":[],"mappings":"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"}
|
package/dist/probe-judge.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ import type { HostProfile } from "./host-profiles.js";
|
|
|
3
3
|
import { type ProbeOutput } from "./probe-output.js";
|
|
4
4
|
import type { QualifyVerdict } from "./qualify-cli.js";
|
|
5
5
|
import { type SuitabilityRating } from "./rating.js";
|
|
6
|
+
import type { VoicesHeld } from "./measurement/format.js";
|
|
6
7
|
/** Facts of the descriptor, which the probe output repeats none of. */
|
|
7
8
|
export interface JudgeFacts {
|
|
8
9
|
/** Note input ports the plugin declares. */
|
|
@@ -34,10 +35,14 @@ export interface HostJudgment {
|
|
|
34
35
|
/** In-process only for a suitable plugin on a host that runs its plugins in its own process, else isolated. */
|
|
35
36
|
readonly hosting: "in-process" | "isolated";
|
|
36
37
|
readonly reasons: readonly RecordReason[];
|
|
37
|
-
/**
|
|
38
|
+
/**
|
|
39
|
+
* The cost reasons at this host's rate and quantum, kept beside the verdict, not folded into it; for an instrument,
|
|
40
|
+
* the notes it held while that figure was timed.
|
|
41
|
+
*/
|
|
38
42
|
readonly cost: {
|
|
39
43
|
readonly rate: number;
|
|
40
44
|
readonly quantum: number;
|
|
45
|
+
readonly voices?: VoicesHeld;
|
|
41
46
|
readonly reasons: readonly RecordReason[];
|
|
42
47
|
};
|
|
43
48
|
}
|
package/dist/probe-judge.js
CHANGED
|
@@ -19,7 +19,7 @@
|
|
|
19
19
|
import { DEFAULT_HOSTING_POLICY } from "./qualify-declarations.js";
|
|
20
20
|
import { rtSafetyDocument, } from "./clap-qualify.js";
|
|
21
21
|
import { gridCostReadings } from "./cost-fields.js";
|
|
22
|
-
import { hostingCostReasons, rtSafetyReasons, contributedHostingRating, } from "./hosting-suitability.js";
|
|
22
|
+
import { hostingCostReasons, noteSweepReasons, rtSafetyReasons, contributedHostingRating, } from "./hosting-suitability.js";
|
|
23
23
|
import { PROBE_NOT_ATTEMPTED, PROBE_OK } from "./probe-output.js";
|
|
24
24
|
import { RATING_SEVERITY, worstRating } from "./rating.js";
|
|
25
25
|
/** A sum of one count over the points, or `undefined` when a point lacks it: a missing count is not zero. */
|
|
@@ -140,7 +140,8 @@ function decidingOf(reasons, rating) {
|
|
|
140
140
|
function costOf(output, profile) {
|
|
141
141
|
const { rate, quantum } = profile.cost;
|
|
142
142
|
const reasons = hostingCostReasons({ cpuCost: { perRateQuantum: gridCostReadings(output.grid, PROBE_OK) } }, { rate, quantum, profile }, DEFAULT_HOSTING_POLICY);
|
|
143
|
-
|
|
143
|
+
const voices = output.grid.find((p) => p.outcome === PROBE_OK && p.rate === rate && p.quantum === quantum)?.cost?.voices;
|
|
144
|
+
return { rate, quantum, ...(voices === undefined ? {} : { voices }), reasons: reasons.map(asRecordReason) };
|
|
144
145
|
}
|
|
145
146
|
/**
|
|
146
147
|
* The outcome that ended the run badly, or `undefined` when it ended well. The run's own outcome is the
|
|
@@ -186,7 +187,10 @@ export function judgeProbeOutput(output, profiles, facts = {}) {
|
|
|
186
187
|
reasons = doc.verdict.reasons.map(asRecordReason);
|
|
187
188
|
}
|
|
188
189
|
else {
|
|
189
|
-
|
|
190
|
+
// an LV2 plugin: the control sweep's counts, and the note sweep's when it was played through a MIDI input
|
|
191
|
+
const rt = rtSafetyOfProbeOutput(output);
|
|
192
|
+
const notes = noteSweepOfProbeOutput(output, rt);
|
|
193
|
+
reasons = [...rtSafetyReasons(rt), ...noteSweepReasons(notes, facts.noteInputs ?? (notes.applicable ? 1 : 0))].map(asRecordReason);
|
|
190
194
|
}
|
|
191
195
|
const rating = worstRating(reasons.map((r) => r.rating));
|
|
192
196
|
const deciding = decidingOf(reasons, rating);
|
package/dist/probe-judge.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probe-judge.js","sourceRoot":"","sources":["../src/probe-judge.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"probe-judge.js","sourceRoot":"","sources":["../src/probe-judge.ts"],"names":[],"mappings":"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"}
|
package/dist/probe-output.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import { type VoicesHeld } from "./measurement/format.js";
|
|
1
2
|
export declare const PROBE_OUTPUT_FORMAT = "plugin-hostd.probe-output";
|
|
2
3
|
/** The one major this reader knows. A minor of it only adds fields. */
|
|
3
4
|
export declare const PROBE_OUTPUT_MAJOR = 1;
|
|
@@ -29,6 +30,8 @@ export interface ProbeCost {
|
|
|
29
30
|
};
|
|
30
31
|
readonly blocks: number;
|
|
31
32
|
readonly warmupBlocks: number;
|
|
33
|
+
/** For an instrument: the notes it held while it was timed, how many and why that many. */
|
|
34
|
+
readonly voices?: VoicesHeld;
|
|
32
35
|
}
|
|
33
36
|
export interface ProbeRtSafety {
|
|
34
37
|
readonly interposer: boolean;
|
package/dist/probe-output.js
CHANGED
|
@@ -19,6 +19,7 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { createHash } from "node:crypto";
|
|
21
21
|
import { finiteNumber, isRecord, nonEmptyString, optional } from "./measurement/guards.js";
|
|
22
|
+
import { readVoicesHeld } from "./measurement/format.js";
|
|
22
23
|
export const PROBE_OUTPUT_FORMAT = "plugin-hostd.probe-output";
|
|
23
24
|
/** The one major this reader knows. A minor of it only adds fields. */
|
|
24
25
|
export const PROBE_OUTPUT_MAJOR = 1;
|
|
@@ -111,11 +112,15 @@ function readCost(v, where) {
|
|
|
111
112
|
const value = num(pct, "value", `${where} percentile`);
|
|
112
113
|
if (median < 0 || value < 0)
|
|
113
114
|
invalid(`${where} holds a negative cost`);
|
|
115
|
+
const voices = o["voices"] === undefined ? undefined : readVoicesHeld(o["voices"]);
|
|
116
|
+
if (o["voices"] !== undefined && voices === undefined)
|
|
117
|
+
invalid(`${where} voices is not a count of held notes with its basis`);
|
|
114
118
|
return {
|
|
115
119
|
median,
|
|
116
120
|
percentile: { p, value },
|
|
117
121
|
blocks: posInt(o, "blocks", where),
|
|
118
122
|
warmupBlocks: count(o, "warmupBlocks", where),
|
|
123
|
+
...(voices === undefined ? {} : { voices }),
|
|
119
124
|
};
|
|
120
125
|
}
|
|
121
126
|
function readRtSafety(v, where) {
|
package/dist/probe-output.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"probe-output.js","sourceRoot":"","sources":["../src/probe-output.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"probe-output.js","sourceRoot":"","sources":["../src/probe-output.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import type { Judgment, RecordReason } from "./probe-judge.js";
|
|
2
2
|
import { type ProbeGridPoint, type ProbeOutput } from "./probe-output.js";
|
|
3
|
+
import type { VoicesHeld } from "./measurement/format.js";
|
|
3
4
|
export declare const QUALIFICATION_RECORD_SCHEMA = "plugin-qualify.qualification-record/1";
|
|
4
5
|
/** One host's verdict in the record. */
|
|
5
6
|
export interface RecordVerdict {
|
|
@@ -24,11 +25,12 @@ export interface QualificationRecord {
|
|
|
24
25
|
readonly testedVersion?: string;
|
|
25
26
|
readonly binary: ProbeOutput["binary"];
|
|
26
27
|
readonly verdicts: readonly RecordVerdict[];
|
|
27
|
-
/** The cost reasons at each host's rate and quantum, beside the verdicts. */
|
|
28
|
+
/** The cost reasons at each host's rate and quantum, beside the verdicts; an instrument's with the notes it held. */
|
|
28
29
|
readonly cost: readonly {
|
|
29
30
|
readonly host: string;
|
|
30
31
|
readonly rate: number;
|
|
31
32
|
readonly quantum: number;
|
|
33
|
+
readonly voices?: VoicesHeld;
|
|
32
34
|
readonly reasons: readonly RecordReason[];
|
|
33
35
|
}[];
|
|
34
36
|
/** The figures as measured, per rate and quantum. */
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"qualification-record.js","sourceRoot":"","sources":["../src/qualification-record.ts"],"names":[],"mappings":"AAAA,4CAA4C;AAC5C,sDAAsD;AACtD;;;;;;;;;;;;GAYG;AACH,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,UAAU,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7E,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAGjC,OAAO,EAAE,SAAS,EAAyC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"qualification-record.js","sourceRoot":"","sources":["../src/qualification-record.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@openmixer/plugin-qualify",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.12.0",
|
|
4
4
|
"description": "Qualify audio plugins for real-time hosting: scan, offline latency and cost measurement, a mod-host hosting sweep, and a fail-closed rating.",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"license": "GPL-3.0-or-later",
|
package/src/clap-qualify.ts
CHANGED
|
@@ -19,10 +19,13 @@ import {
|
|
|
19
19
|
contributedHostingRating,
|
|
20
20
|
noteSweepReasons,
|
|
21
21
|
rtSafetyReasons,
|
|
22
|
+
type ClapLatencyAtRate,
|
|
22
23
|
type HostingReason,
|
|
23
24
|
type PluginClapMeasurement,
|
|
24
25
|
type PluginNoteSweepMeasurement,
|
|
25
26
|
type PluginRtSafetyMeasurement,
|
|
27
|
+
type PluginStabilityMeasurement,
|
|
28
|
+
type QualifiedPlugin,
|
|
26
29
|
} from "./hosting-suitability.js";
|
|
27
30
|
import {
|
|
28
31
|
OMX_CLAP_HOST_CONFIGURED_EXTENSIONS,
|
|
@@ -33,7 +36,9 @@ import {
|
|
|
33
36
|
import type { QualifyVerdict } from "./qualify-cli.js";
|
|
34
37
|
import { RATING_SEVERITY, worstRating, type SuitabilityRating } from "./rating.js";
|
|
35
38
|
import { halfPopulatedRefusal, locateNativeTools } from "./tool-paths.js";
|
|
36
|
-
import { readIntegrity, type IntegrityMeasurement } from "./measurement/format.js";
|
|
39
|
+
import { readIntegrity, type IntegrityMeasurement, type VoicesHeld } from "./measurement/format.js";
|
|
40
|
+
import { isVoiceBasis } from "./measurement/vocabulary.js";
|
|
41
|
+
import { coreFraction } from "./cost-fields.js";
|
|
37
42
|
|
|
38
43
|
export class ClapQualifyError extends Error {
|
|
39
44
|
constructor(message: string) {
|
|
@@ -61,6 +66,45 @@ export interface ClapProbedFacts extends PluginClapMeasurement {
|
|
|
61
66
|
readonly nonFinite: boolean;
|
|
62
67
|
}
|
|
63
68
|
|
|
69
|
+
/** One rate's cost: the block times in nanoseconds per sample, warm-up dropped, and the notes held for an instrument. */
|
|
70
|
+
export interface ClapCostFigure {
|
|
71
|
+
readonly nsPerSampleMedian: number;
|
|
72
|
+
readonly nsPerSampleP95: number;
|
|
73
|
+
readonly nsPerSampleMin: number;
|
|
74
|
+
readonly nsPerSampleMax: number;
|
|
75
|
+
/** The median of the dropped warm-up blocks: the evidence that dropping them was warranted. */
|
|
76
|
+
readonly warmupNsPerSampleMedian: number;
|
|
77
|
+
readonly blocks: number;
|
|
78
|
+
/** For an instrument: the notes held while it was timed. Absent for an effect. */
|
|
79
|
+
readonly voices?: VoicesHeld;
|
|
80
|
+
}
|
|
81
|
+
|
|
82
|
+
/** One rate the cost arm did not time, and why; an instrument's declared capacity is kept when it has one. */
|
|
83
|
+
export interface ClapCostUnmeasured {
|
|
84
|
+
readonly unmeasuredReason: string;
|
|
85
|
+
readonly unmeasuredDetail: string;
|
|
86
|
+
readonly voices?: { readonly capacity: number };
|
|
87
|
+
}
|
|
88
|
+
|
|
89
|
+
export type ClapCostAtRate = ClapCostFigure | ClapCostUnmeasured;
|
|
90
|
+
|
|
91
|
+
export function isClapCostFigure(at: ClapCostAtRate): at is ClapCostFigure {
|
|
92
|
+
return !("unmeasuredReason" in at);
|
|
93
|
+
}
|
|
94
|
+
|
|
95
|
+
/**
|
|
96
|
+
* The cost arm: every rate timed with every parameter swept, an effect fed noise and an instrument
|
|
97
|
+
* holding notes (`notes-held`), each rate's figures or the reason it has none.
|
|
98
|
+
*/
|
|
99
|
+
export interface ClapCostReading {
|
|
100
|
+
readonly stimulus: "notes-held" | "noise";
|
|
101
|
+
readonly blockFrames: number;
|
|
102
|
+
readonly warmupBlocks: number;
|
|
103
|
+
/** The percentile `nsPerSampleP95` is taken at. */
|
|
104
|
+
readonly percentile: number;
|
|
105
|
+
readonly perRate: Readonly<Record<string, ClapCostAtRate>>;
|
|
106
|
+
}
|
|
107
|
+
|
|
64
108
|
/** One plugin's line from `clap-qualify`. */
|
|
65
109
|
export interface ClapQualifyLine {
|
|
66
110
|
readonly uri: string;
|
|
@@ -72,6 +116,8 @@ export interface ClapQualifyLine {
|
|
|
72
116
|
readonly rtSafety: ClapRtSafetyReading;
|
|
73
117
|
/** The note sweep: the plugin played through its note input, counted apart. */
|
|
74
118
|
readonly noteSweep: ClapNoteSweepReading;
|
|
119
|
+
/** The cost arm; absent when the plugin did not initialise and activate headless. */
|
|
120
|
+
readonly cost?: ClapCostReading;
|
|
75
121
|
/**
|
|
76
122
|
* The pin (spec §11): the `.clap`'s digest by its name in its directory and the layout fingerprint
|
|
77
123
|
* the prober computed through plugin-hostd's `pin.h`, or the reason it took none.
|
|
@@ -114,10 +160,17 @@ function readClap(v: unknown): ClapProbedFacts {
|
|
|
114
160
|
if (!isRecord(v)) return bad("no clap facts");
|
|
115
161
|
const latencyIn = v["latency"];
|
|
116
162
|
if (!isRecord(latencyIn)) return bad("clap has no latency map");
|
|
117
|
-
const latency: Record<string,
|
|
163
|
+
const latency: Record<string, ClapLatencyAtRate> = {};
|
|
118
164
|
for (const [rate, at] of Object.entries(latencyIn)) {
|
|
119
165
|
if (!/^[1-9]\d*$/.test(rate) || !isRecord(at)) return bad(`clap latency at ${rate}`);
|
|
120
|
-
|
|
166
|
+
if (at["from"] !== undefined && at["from"] !== "note") return bad(`clap latency at ${rate} from ${JSON.stringify(at["from"])}`);
|
|
167
|
+
if (at["heard"] !== undefined && (at["from"] !== "note" || at["heard"] !== false)) return bad(`clap latency at ${rate} heard`);
|
|
168
|
+
latency[rate] = {
|
|
169
|
+
declaredFrames: count(at, "declaredFrames", `latency ${rate}`),
|
|
170
|
+
measuredFrames: count(at, "measuredFrames", `latency ${rate}`),
|
|
171
|
+
...(at["from"] === "note" ? { from: "note" as const } : {}),
|
|
172
|
+
...(at["heard"] === false ? { heard: false } : {}),
|
|
173
|
+
};
|
|
121
174
|
}
|
|
122
175
|
return {
|
|
123
176
|
mainInputChannels: count(v, "mainInputChannels", "clap"),
|
|
@@ -175,6 +228,120 @@ function readNoteSweep(v: unknown): ClapNoteSweepReading {
|
|
|
175
228
|
};
|
|
176
229
|
}
|
|
177
230
|
|
|
231
|
+
function figure(o: Record<string, unknown>, key: string, where: string): number {
|
|
232
|
+
const v = o[key];
|
|
233
|
+
return typeof v === "number" && Number.isFinite(v) && v >= 0 ? v : bad(`${where} has no figure ${key}`);
|
|
234
|
+
}
|
|
235
|
+
|
|
236
|
+
function readVoices(v: unknown, where: string): { held?: number; basis?: VoicesHeld["basis"]; capacity?: number } {
|
|
237
|
+
if (!isRecord(v)) return bad(`${where} voices is not an object`);
|
|
238
|
+
const out: { held?: number; basis?: VoicesHeld["basis"]; capacity?: number } = {};
|
|
239
|
+
if ("held" in v || "basis" in v) {
|
|
240
|
+
const basis = v["basis"];
|
|
241
|
+
if (!isVoiceBasis(basis)) return bad(`${where} voices basis ${JSON.stringify(basis)}`);
|
|
242
|
+
const held = count(v, "held", `${where} voices`);
|
|
243
|
+
if (held === 0) return bad(`${where} holds no note`);
|
|
244
|
+
out.held = held;
|
|
245
|
+
out.basis = basis;
|
|
246
|
+
}
|
|
247
|
+
if ("capacity" in v) out.capacity = count(v, "capacity", `${where} voices`);
|
|
248
|
+
return out;
|
|
249
|
+
}
|
|
250
|
+
|
|
251
|
+
function readCostAtRate(v: unknown, where: string, notes: boolean): ClapCostAtRate {
|
|
252
|
+
if (!isRecord(v)) return bad(`${where} is not an object`);
|
|
253
|
+
const voices = v["voices"] === undefined ? undefined : readVoices(v["voices"], where);
|
|
254
|
+
if (voices !== undefined && !notes) return bad(`${where} holds notes for a plugin fed noise`);
|
|
255
|
+
if (v["unmeasuredReason"] !== undefined) {
|
|
256
|
+
if (voices?.held !== undefined) return bad(`${where} held notes and timed nothing`);
|
|
257
|
+
return {
|
|
258
|
+
unmeasuredReason: str(v, "unmeasuredReason", where),
|
|
259
|
+
unmeasuredDetail: str(v, "unmeasuredDetail", where),
|
|
260
|
+
...(voices?.capacity === undefined ? {} : { voices: { capacity: voices.capacity } }),
|
|
261
|
+
};
|
|
262
|
+
}
|
|
263
|
+
if (notes && (voices === undefined || voices.held === undefined || voices.basis === undefined)) {
|
|
264
|
+
return bad(`${where} timed an instrument without saying what it held`);
|
|
265
|
+
}
|
|
266
|
+
const blocks = count(v, "blocks", where);
|
|
267
|
+
if (blocks === 0) return bad(`${where} timed no block`);
|
|
268
|
+
return {
|
|
269
|
+
nsPerSampleMedian: figure(v, "nsPerSampleMedian", where),
|
|
270
|
+
nsPerSampleP95: figure(v, "nsPerSampleP95", where),
|
|
271
|
+
nsPerSampleMin: figure(v, "nsPerSampleMin", where),
|
|
272
|
+
nsPerSampleMax: figure(v, "nsPerSampleMax", where),
|
|
273
|
+
warmupNsPerSampleMedian: figure(v, "warmupNsPerSampleMedian", where),
|
|
274
|
+
blocks,
|
|
275
|
+
...(voices?.held === undefined || voices.basis === undefined
|
|
276
|
+
? {}
|
|
277
|
+
: { voices: { held: voices.held, basis: voices.basis, ...(voices.capacity === undefined ? {} : { capacity: voices.capacity }) } }),
|
|
278
|
+
};
|
|
279
|
+
}
|
|
280
|
+
|
|
281
|
+
function readCost(v: unknown): ClapCostReading {
|
|
282
|
+
if (!isRecord(v)) return bad("cost is not an object");
|
|
283
|
+
const stimulus = str(v, "stimulus", "cost");
|
|
284
|
+
if (stimulus !== "notes-held" && stimulus !== "noise") return bad(`cost stimulus ${stimulus}`);
|
|
285
|
+
const perRateIn = v["perRate"];
|
|
286
|
+
if (!isRecord(perRateIn)) return bad("cost has no perRate map");
|
|
287
|
+
const perRate: Record<string, ClapCostAtRate> = {};
|
|
288
|
+
for (const [rate, at] of Object.entries(perRateIn)) {
|
|
289
|
+
if (!/^[1-9]\d*$/.test(rate)) return bad(`cost rate ${rate}`);
|
|
290
|
+
perRate[rate] = readCostAtRate(at, `cost at ${rate}`, stimulus === "notes-held");
|
|
291
|
+
}
|
|
292
|
+
return {
|
|
293
|
+
stimulus,
|
|
294
|
+
blockFrames: count(v, "blockFrames", "cost"),
|
|
295
|
+
warmupBlocks: count(v, "warmupBlocks", "cost"),
|
|
296
|
+
percentile: figure(v, "percentile", "cost"),
|
|
297
|
+
perRate,
|
|
298
|
+
};
|
|
299
|
+
}
|
|
300
|
+
|
|
301
|
+
/**
|
|
302
|
+
* The cost arm's figures as the classifier's cost gate reads them, per rate: the median and the P95
|
|
303
|
+
* per sample, and the P95 as a fraction of one core at that rate. A rate the arm did not time is absent.
|
|
304
|
+
*/
|
|
305
|
+
export function clapCostPerRate(
|
|
306
|
+
cost: ClapCostReading | undefined,
|
|
307
|
+
): Record<string, { coreFractionP95: number; nsPerSampleMedian: number; nsPerSampleP95: number; voices?: VoicesHeld }> {
|
|
308
|
+
const out: Record<string, { coreFractionP95: number; nsPerSampleMedian: number; nsPerSampleP95: number; voices?: VoicesHeld }> = {};
|
|
309
|
+
for (const [rate, at] of Object.entries(cost?.perRate ?? {})) {
|
|
310
|
+
if (!isClapCostFigure(at)) continue;
|
|
311
|
+
const fraction = coreFraction(at.nsPerSampleP95, Number(rate));
|
|
312
|
+
if (fraction === undefined) continue;
|
|
313
|
+
out[rate] = {
|
|
314
|
+
coreFractionP95: fraction,
|
|
315
|
+
nsPerSampleMedian: at.nsPerSampleMedian,
|
|
316
|
+
nsPerSampleP95: at.nsPerSampleP95,
|
|
317
|
+
...(at.voices === undefined ? {} : { voices: at.voices }),
|
|
318
|
+
};
|
|
319
|
+
}
|
|
320
|
+
return out;
|
|
321
|
+
}
|
|
322
|
+
|
|
323
|
+
/**
|
|
324
|
+
* A prober line as the plugin the full classifier (`classifyPluginHosting`) reads: the CLAP facts, the
|
|
325
|
+
* interposer's counts with the note sweep beside them, and the cost arm's figures per rate. The prober
|
|
326
|
+
* measures no stability (that is the soak's), so the caller passes what it has; without it the verdict
|
|
327
|
+
* is `unknown` on stability, never a pass.
|
|
328
|
+
*/
|
|
329
|
+
export function qualifiedPluginOfClapLine(line: ClapQualifyLine, stability?: PluginStabilityMeasurement): QualifiedPlugin {
|
|
330
|
+
const { events: _events, ...rtSafety } = line.rtSafety;
|
|
331
|
+
const { events: _noteEvents, ...noteSweep } = line.noteSweep;
|
|
332
|
+
const { nonFinite: _nonFinite, ...clap } = line.clap;
|
|
333
|
+
return {
|
|
334
|
+
format: "clap",
|
|
335
|
+
audioInputs: line.clap.mainInputChannels,
|
|
336
|
+
audioOutputs: line.clap.mainOutputChannels,
|
|
337
|
+
hasMidiIn: line.clap.noteInputs > 0,
|
|
338
|
+
clap,
|
|
339
|
+
rtSafety: { ...rtSafety, noteSweep },
|
|
340
|
+
cpuCost: { perRate: clapCostPerRate(line.cost) },
|
|
341
|
+
...(stability === undefined ? {} : { stability }),
|
|
342
|
+
};
|
|
343
|
+
}
|
|
344
|
+
|
|
178
345
|
/** One line of the prober's stdout, or a {@link ClapQualifyError} saying how it differs. */
|
|
179
346
|
export function parseClapQualifyLine(text: string): ClapQualifyLine {
|
|
180
347
|
let v: unknown;
|
|
@@ -200,6 +367,7 @@ export function parseClapQualifyLine(text: string): ClapQualifyLine {
|
|
|
200
367
|
clap: readClap(v["clap"]),
|
|
201
368
|
rtSafety: readRtSafety(v["rtSafety"]),
|
|
202
369
|
noteSweep: readNoteSweep(v["noteSweep"]),
|
|
370
|
+
...(v["cost"] === undefined ? {} : { cost: readCost(v["cost"]) }),
|
|
203
371
|
integrity: readIntegrity(v["integrity"]) ?? bad("no integrity"),
|
|
204
372
|
};
|
|
205
373
|
}
|
|
@@ -215,9 +383,11 @@ export function parseClapQualifyOutput(stdout: string): ClapQualifyLine[] {
|
|
|
215
383
|
* The document's schema name; a reader refuses any other it does not know. `/2` is `/1` with
|
|
216
384
|
* `measured.noteSweep` added and the note sweep's reasons folded into `verdict` (a plugin with no
|
|
217
385
|
* note input gets none, so its `/2` verdict is its `/1` verdict); every `/1` field is unchanged, so
|
|
218
|
-
* a `/1` reader of `verdict.rating` and `verdict.rtSafe` reads a `/2` document right.
|
|
386
|
+
* a `/1` reader of `verdict.rating` and `verdict.rtSafe` reads a `/2` document right. `/3` is `/2`
|
|
387
|
+
* with `measured.cost` added (the cost arm, an instrument's with the notes it held), which no
|
|
388
|
+
* verdict reads.
|
|
219
389
|
*/
|
|
220
|
-
export const RT_SAFETY_DOCUMENT_SCHEMA = "plugin-qualify.rt-safety/
|
|
390
|
+
export const RT_SAFETY_DOCUMENT_SCHEMA = "plugin-qualify.rt-safety/3";
|
|
221
391
|
|
|
222
392
|
/**
|
|
223
393
|
* The RT-safety verdict of one plugin binary for one console: keyed by the binary's SHA-256 and
|
|
@@ -246,6 +416,7 @@ export interface RtSafetyDocument {
|
|
|
246
416
|
readonly clap: ClapProbedFacts;
|
|
247
417
|
readonly rtSafety: ClapRtSafetyReading;
|
|
248
418
|
readonly noteSweep: ClapNoteSweepReading;
|
|
419
|
+
readonly cost?: ClapCostReading;
|
|
249
420
|
readonly integrity: IntegrityMeasurement;
|
|
250
421
|
};
|
|
251
422
|
}
|
|
@@ -288,6 +459,7 @@ export function rtSafetyDocument(line: ClapQualifyLine, profile: HostProfile = O
|
|
|
288
459
|
clap: line.clap,
|
|
289
460
|
rtSafety: line.rtSafety,
|
|
290
461
|
noteSweep: line.noteSweep,
|
|
462
|
+
...(line.cost === undefined ? {} : { cost: line.cost }),
|
|
291
463
|
integrity: line.integrity,
|
|
292
464
|
},
|
|
293
465
|
};
|
|
@@ -320,8 +320,14 @@ import { costFieldsMissing, costPointKey } from "./cost-fields.js";
|
|
|
320
320
|
export interface ClapLatencyAtRate {
|
|
321
321
|
/** `latency.get()` after `activate` at this rate; a plugin without the ext declares 0. */
|
|
322
322
|
readonly declaredFrames: number;
|
|
323
|
-
/** Where the qualifier's impulse landed through `process()`, in frames
|
|
323
|
+
/** Where the qualifier's impulse landed through `process()`, in frames; for an instrument, where a note's
|
|
324
|
+
* sound began. */
|
|
324
325
|
readonly measuredFrames: number;
|
|
326
|
+
/** `note`: a plugin with no main audio input, measured from a note struck at frame 0 (the onset of its
|
|
327
|
+
* sound, which an attack envelope may put later than its latency). Absent: from an impulse. */
|
|
328
|
+
readonly from?: "note";
|
|
329
|
+
/** `false`: the note was struck and nothing was heard, so there is no onset to read. */
|
|
330
|
+
readonly heard?: boolean;
|
|
325
331
|
}
|
|
326
332
|
|
|
327
333
|
/**
|
|
@@ -847,7 +853,10 @@ export function clapTopologyReasons(clap: PluginClapMeasurement | undefined, ins
|
|
|
847
853
|
/**
|
|
848
854
|
* The CLAP arm of `latency` (CLAP spec §3): declared = measured at EVERY declared rate earns;
|
|
849
855
|
* one rate that lies refuses (`unsuitable` — compensation reads the figure as truth); no rate
|
|
850
|
-
* measured is `unknown`.
|
|
856
|
+
* measured is `unknown`. An instrument has no input to put an impulse in, so its figure is the onset
|
|
857
|
+
* of a note struck at frame 0: an onset before the declared latency is the same lie, one at or after
|
|
858
|
+
* it is resolved (an attack envelope sounds later than the plugin's delay, and that is no latency),
|
|
859
|
+
* and a note that was never heard is unmeasured.
|
|
851
860
|
*/
|
|
852
861
|
export function clapLatencyReasons(clap: PluginClapMeasurement | undefined): readonly HostingReason[] {
|
|
853
862
|
const rates = clap ? Object.keys(clap.latency) : [];
|
|
@@ -856,7 +865,11 @@ export function clapLatencyReasons(clap: PluginClapMeasurement | undefined): rea
|
|
|
856
865
|
}
|
|
857
866
|
for (const rate of rates) {
|
|
858
867
|
const at = clap.latency[rate]!;
|
|
859
|
-
if (at.
|
|
868
|
+
if (at.from === "note" && at.heard === false) {
|
|
869
|
+
return [reason("latency", "objective", "unknown", HOSTING_CODE.latencyUnmeasured, { rate: Number(rate) })];
|
|
870
|
+
}
|
|
871
|
+
const lies = at.from === "note" ? at.measuredFrames < at.declaredFrames : at.declaredFrames !== at.measuredFrames;
|
|
872
|
+
if (lies) {
|
|
860
873
|
return [
|
|
861
874
|
reason("latency", "objective", "unsuitable", HOSTING_CODE.clapLatencyMismatch, {
|
|
862
875
|
rate: Number(rate), declared: at.declaredFrames, measured: at.measuredFrames,
|
|
@@ -978,12 +991,15 @@ export function classifyPluginHosting(
|
|
|
978
991
|
// report could agree with itself while every served descriptor read unknown.
|
|
979
992
|
// The CLAP arm: the SAME six dimensions, fed from the
|
|
980
993
|
// qualifier's CLAP facts where the LV2 scan's facts do not exist for the format. Stability,
|
|
981
|
-
// the interposer's counts and the cost are format-blind and read unchanged.
|
|
994
|
+
// the interposer's counts and the cost are format-blind and read unchanged. A host that plays
|
|
995
|
+
// notes (an instrument host) also reads the note sweep: an instrument is clean at rest, so the
|
|
996
|
+
// parameter sweep alone says nothing about what a voice does.
|
|
982
997
|
const reasons: HostingReason[] = descriptor.format === "clap"
|
|
983
998
|
? [
|
|
984
999
|
...stabilityReasons(descriptor.stability, policy, options.pluginBinary, sharesProcess, options.rate),
|
|
985
1000
|
...rtSafetyReasons(descriptor.rtSafety),
|
|
986
1001
|
...clapRtReasons(descriptor.clap),
|
|
1002
|
+
...(profile.instruments ? noteSweepReasons(descriptor.rtSafety?.noteSweep, descriptor.clap?.noteInputs ?? (descriptor.hasMidiIn ? 1 : 0)) : []),
|
|
987
1003
|
...clapFeatureReasons(descriptor.clap, profile, descriptor.hasMidiIn),
|
|
988
1004
|
...hostingCostReasons(descriptor, options, policy),
|
|
989
1005
|
...clapLatencyReasons(descriptor.clap),
|
|
@@ -992,6 +1008,7 @@ export function classifyPluginHosting(
|
|
|
992
1008
|
: [
|
|
993
1009
|
...stabilityReasons(descriptor.stability, policy, options.pluginBinary, sharesProcess, options.rate),
|
|
994
1010
|
...rtSafetyReasons(descriptor.rtSafety),
|
|
1011
|
+
...(profile.instruments ? noteSweepReasons(descriptor.rtSafety?.noteSweep, descriptor.hasMidiIn ? 1 : 0) : []),
|
|
995
1012
|
...featureReasons(descriptor.lv2Features, descriptor, profile.lv2Features, options.quantum !== undefined, profile.instruments),
|
|
996
1013
|
...hostingCostReasons(descriptor, options, policy),
|
|
997
1014
|
...hostingLatencyReasons(descriptor, profile.latency),
|