audio.synth
Since next
[editor or disk] Synthesise a WAV audio asset into the project (as asset.import does) with the make-your-own-sounds recipe's synthesiser: a preset, or voices on a timeline.
Same parameters, same bytes. Max 12 s, 1 MiB. ctx.audio.play(<asset>) plays it.
| Title | Make a sound |
| Mode | |
| Token cost | about 354 tokens (listed only when its toolset is enabled) |
| Toolset | audio |
Arguments
| Argument | Type | Required | Default | Allowed values | Description |
|---|---|---|---|---|---|
drive | number | no | Voices: saturation, 0.1-10 | ||
echo | object | no | Voices: {time, feedback, wet, repeats} | ||
name | string | yes | Asset id and file name: laser -> assets/laser.wav | ||
options | object | no | Per preset: blip {low, high, seed}; whoosh {seconds, low, high, seed}; engine-loop {hz, seconds, bright, rough, seed}; explosion {seconds, seed}; jingle {notes, step, hold, wave, seed} | ||
peakDb | number | no | Peak level, -30 to 0; default -3 | ||
preset | enum | no | blip, whoosh, engine-loop, explosion, jingle | ||
sampleRate | integer | no | Voices only, 8000-48000; default 44100 | ||
scene | string | no | The scene file to act on. The open scene when absent. | ||
voices | object[] | no | Instead of preset: [{at, dur, wave sine|square|saw|tri|noise|pink, freq (Hz, "A4" or {from, to}), pw, adsr {a, d, s, r}, filter {type lp|hp|bp, cutoff, q}, vibrato {hz, depth}, seed, gain}] |
Example
An MCP tools/call with the required arguments (placeholders in angle brackets).
{
"name": "audio.synth",
"arguments": {
"name": "<name>"
}
}