Repository navigation
Routes and Synth Recipes
One listener has compared routes, blind, on 12 sounds. Stable Audio 3 Medium won 10, procedural recipes won laser and fire, and Small SFX won none. That is one person's ear, not a general ranking.
| Route | Command | Needs | Licence question |
|---|---|---|---|
| Procedural | synth |
nothing | none |
| ComfyUI | gen |
a reachable server with Stable Audio 3 or Open | Stability Community License |
| Found or recorded |
library, then register
|
the file and its terms | per file |
| Hosted APIs | outside the script | a key, payment, and your yes | per service |
Job by job, the current defaults are in routes.md. It also holds prompt advice and the musicwright line: anything with notes, key or tempo goes to musicwright.
The gen path has not been run against a server for this wiki. Installing a node, engine or large model, and any paid call, needs the user's yes.
python sfx.py synth list prints this table as JSON. Pass parameters with --param name=value. A value made only of digits, dots and a minus sign becomes a number; anything else stays text.
| Recipe | Parameters and defaults |
|---|---|
shaker |
seconds 0.6, beans 64, res 3200, pole 0.96, shakes 1, sound_decay 0.95, system_decay 0.999 |
modal |
material wood (glass, metal, plastic, stone, wood), hardness 0.6, size 1, seconds
|
footstep |
surface gravel (also wood, stone, metal, grass, snow), weight 0.6, state walk (also run, sneak) |
click |
hz 5000, q 12, decay_ms 20 |
switch |
kind plastic |
beep |
hz 800, seconds 0.12, second_hz
|
wind |
seconds 8, strength 0.5, gentle
|
fire |
seconds 6, crackle 9 |
explosion |
seconds 3.5, distance 0 (a number) |
whoosh |
seconds 0.8, lo 300, hi 4200, q 1.2 |
creak |
seconds 1.2, hz 420 |
retro |
kind coin (coin, laser, jump, hit, explode, powerup, blip) |
$ python sfx.py synth modal --seed 7 --out a.wav; python sfx.py synth modal --seed 7 --out b.wav; python sfx.py synth modal --seed 8 --out c.wav; sha256sum a.wav b.wav c.wav
{"ok": true, "files": ["a.wav"]}
{"ok": true, "files": ["b.wav"]}
{"ok": true, "files": ["c.wav"]}
f175e917d824b63aff8d49ee767921f9c4fd9ecb2090618d47e8cbb3b386348f *a.wav
f175e917d824b63aff8d49ee767921f9c4fd9ecb2090618d47e8cbb3b386348f *b.wav
8fda7ad49f6def020c548bd966aa57901216505b29a405b8e666fa740f4ebb62 *c.wav
This was run on one machine and one Python. It is not promised across versions.
The repository's learnings record a 3 second request to Stable Audio 3 Medium returning 1.6 seconds of sound and silence. Tidy generated takes and judge the sound reading, not the file length. Never ask a model for a walk cycle: make single steps, then sequence.
Start
Using it
- Commands
- Sound list format
- Checks and flags
- Routes and synth recipes
- Rights and shipping
- Workflows
- Errors and edge cases
The project
Elsewhere