Parameters
Parameters are project-authored extension settings. A package declares their schema; Amadeus displays the supported fields in the Inspector and saves the selected values with the voice.
Field factories
Section titled “Field factories”| Factory | Value | Required information |
|---|---|---|
param.boolean() |
boolean |
default; optional label, help, and cache scope |
param.integer() |
Integral number |
default; optional bounds, step, label, help, and cache scope |
param.number() |
number |
default; optional bounds, step, label, help, and cache scope |
param.string() |
string |
default; optional label, help, and cache scope |
param.choice() |
One stable string value | ordered choices, default, and optional label, help, and cache scope |
Every user-facing numeric field should include its physical or musical unit in
the label, such as Depth (cents), Rate (Hz), or Window (ms).
Complete declaration
Section titled “Complete declaration”.params( { depth: param.number({ default: 25, min: 0, max: 100, step: 1, label: "Depth (cents)", help: "Peak pitch displacement. 0 = off.", cacheScope: "f0_and_later", }), }, { label: "Example processor", stages: ["pitch"] },)This declaration produces a Pitch-mode Inspector group. If the user changes Depth, Amadeus treats the pitch result and later output as requiring a new bake.
Parameter description standard
Section titled “Parameter description standard”For every field, package documentation should state:
- display label and stable key;
- type, unit, default, range, and step;
- the condition under which the field has an effect;
- the result of increasing, decreasing, enabling, or disabling it;
- its neutral value and relevant interaction with other fields.
The help string should remain concise because Amadeus presents it as a hover
tooltip. Put extended examples and interactions in the package documentation.
Groups and stages
Section titled “Groups and stages”Each .params() call creates one Inspector group. label names the group, and
stages selects the editor modes in which it is relevant.
| Stage | Typical use |
|---|---|
plan |
Lyrics, pronunciation, note relationships, or planning display |
timing |
Phone display and timing-related settings |
pitch or f0 |
Pitch expression or F0 processing |
mel |
Acoustic-representation settings |
stem |
Voice-audio generation settings |
mix |
Audition or mix-only settings |
Cache scope
Section titled “Cache scope”cacheScope declares the earliest render result that may become incompatible
when the field changes. Select the earliest stage the parameter can affect.
| Scope | User-visible consequence after a change |
|---|---|
timing_and_later |
Timing, pitch, acoustic, and audio results require renewal. |
f0_and_later |
Pitch and later results require renewal. |
mel_and_later |
Acoustic and audio results require renewal. |
stem_and_later |
Voice audio requires renewal. |
mix_only |
Only the audition mix requires renewal. |
An incorrectly narrow scope may leave the user evaluating an incompatible earlier result.
Note scope (WIP)
Section titled “Note scope (WIP)”The note parameter scope is reserved for per-note extension values. Do not
depend on it unless the target Amadeus release explicitly documents support.
Use global voice parameters for currently portable packages.