arkennemasis fal · ElevenLabs Sound Effects v2 · $0.002/s
Foley for a silent clip, at two-tenths of a cent per second
- audio
- audio_path
- info
The cheapest paid node in this pack, and probably the most quietly useful. Describe a sound - "heavy wooden door closing in a stone corridor, distant reverb" - and you get it, up to twenty-two seconds, for about two-tenths of a cent per second. A ten-second effect costs two cents.
Two jobs this covers. The obvious one is foley: your Seedance or MiniMax clip has dialogue and music but the footsteps are mushy, so you generate a clean footstep layer and drop it under. The less obvious one is ambience beds - run loop on a twenty-second room tone or rain wash and you have something to sit underneath a whole video without a seam.
How it works
One text box, a few constraints, one billed call. The node reads FAL_KEY, validates, estimates the cost from the requested or maximum duration, submits to fal, and downloads the audio into output/fal/fal-ai_elevenlabs_sound-effects_v2/, logging the request to output/fal/_requests.jsonl. Local generation of foley is possible - MMAudio and HunyuanVideo-Foley are the community standards - but they need a video to condition on. If you know the sound you want and there's no clip to feed a model, this node is a text prompt away.
The inputs that matter
text is required and capped at 450 characters. That is not a lot of room, and it's the most common source of frustration: this model rewards specific, physical descriptions - material, size, distance, acoustic - and punishes paragraph-long prose. "Ceramic mug set down hard on a metal table, small rattle" beats three sentences of scene-setting.
duration_seconds takes 0.5 to 22, or -1 to let the model decide from the prompt. Auto is often right for a one-shot effect; for a looping bed you want it explicit and long.
prompt_influence defaults to 0.3, which is low - and the tooltip explains why that's fine: higher values mean less variation. Counterintuitive but correct. If every roll is coming out fussy and thin, raise it; if you want to audition alternatives, leave it low.
loop produces a smoothly looping result for ambience. output_format defaults to mp3_44100_128, with PCM options up to 48 kHz for anything that's going to be pitch-shifted or stretched afterwards.
Outputs: audio, audio_path, info.
Money
$0.002 per second. Twenty-two seconds costs four and a half cents. There is no scenario in which this node's cost is the thing you optimise - the max_cost_usd default of $20 would allow a hundred and eleven hours of effects. Spend your attention on the prompt instead.
Install
Manager → search comfyui-arkennemasis, or:
cd ComfyUI/custom_nodes
git clone https://github.com/Hishamahmer/comfyui-arkennemasis
Restart, then FAL_KEY=your-key-from-fal.ai/dashboard/keys in the .env in the folder holding run_nvidia_gpu.bat. No downloads, no extra Python packages - the fal provider is standard library only.
Common issues & troubleshooting
The text is over 450 characters. The node's own check catches it before submission, so it costs nothing, but it will stop the run. Write the sound, not the scene.
The effect is too short or too abrupt. Set duration_seconds explicitly. Auto picks the length it thinks fits the description, which for "footstep" is short and for "rain" is not.
The loop clicks. Loop quality depends on the prompt containing something that cycles - a hum, rain, wind, machinery. An effect with a distinct beginning and end won't loop cleanly no matter the flag.
Every roll is slightly different and you liked the first one. reuse_identical_run defaults to true, so identical settings with the file still in output/fal come back from disk rather than being regenerated. If you want a new take, turn it off; if you want that take, don't touch anything.
A batch of ten effects ran one at a time. max_concurrent defaults to 1 across the whole run - one paid fal call at a time. At this price, raising it to 4 on the sound-effect nodes is an easy win for a shrapnel-level increase in cost.
Inputs (9)
| Name | Type | Default | Description |
|---|---|---|---|
| text | STRING | The text describing the sound effect to generate | |
| duration_seconds | FLOAT | -1.00-1–22 | Duration in seconds (0.5-22). If None, optimal duration will be determined from prompt. -1 leaves it to the model. |
| prompt_influence | FLOAT | 0.300–1 | How closely to follow the prompt (0-1). Higher values mean less variation. |
| output_format | COMBO | mp3_44100_128 | Output format of the generated audio. Formatted as codec_sample_rate_bitrate. |
| loop | BOOLEAN | false | Whether to create a sound effect that loops smoothly. |
| max_cost_usdopt | FLOAT | 20.00–100000 | Safety cap. If the estimated cost of this run is above this many US dollars the node stops BEFORE sending anything to fal. 0 = no cap. |
| reuse_identical_runopt | BOOLEAN | true | If these exact inputs (the settings AND the same pictures/clips/audio) were already paid for and the files are still in output/fal, return them instead of paying again - also after a ComfyUI restart. Turn off for a fresh take with the same settings. |
| extra_jsonopt | STRING | Advanced: a JSON object merged into the request last, for any fal field this node has no box for. Example: {"seed": 7}. Leave empty normally. | |
| max_concurrentopt | INT | 11–32 | How many paid fal calls may run at the same time in one run, across every fal node. 1 (default) = one after another. This node starts its paid part only while fewer than this many fal calls are running. Once any fal node fails, the ones still waiting are not started, so nothing more is billed. |
Outputs (3)
| Name | Type | Description |
|---|---|---|
| audio | AUDIO | — |
| audio_path | STRING | — |
| info | STRING | JSON: request id, cost estimate, saved files and fal's full answer. |