A gunshot is two sounds: a very short, very loud report, and the environment's response to it. The report tells you what the weapon is; the response tells you where you are standing. Most unconvincing gunshots in an edit have a plausible report and no environment, so they sound like samples. These prompts always name the space, because it is at least half of what the audience hears.
Every clip shows the exact prompt that produced it. The render script reads its prompts from the same file as this page. Copy one, change a word and generate your own.
9mm pistol fired once inside a concrete stairwell, sharp cracking report with hard slapping echoes, close
pistol fired once in an open field, sharp report with a fast dry crack and almost no reflection, distant treeline
hunting rifle fired far away across a valley, delayed crack with a long rolling echo between hillsides
pump-action shotgun fired then racked, heavy blast with a shell ejecting onto concrete, alley reverb
automatic rifle firing a short burst in a city street, rapid overlapping reports with building echoes
suppressed pistol shot, muted mechanical thump with the slide cycling clearly audible, close and dry
revolver fired once, deep booming report with a cylinder ring, open outdoor space with a rolling tail
pistol magazine released and dropped, a fresh one inserted and the slide released, very close mic, dry
bullet ricocheting off metal, sharp impact with a whining pitched departure, industrial space, echoing
distant firefight heard from several streets away, scattered muffled reports with long urban echoes
These models respond to physical description. Name the material, the action and the space.
9mm pistol fired once inside a concrete stairwell, sharp cracking report with hard slapping echoes, close
Hard enclosed spaces produce discrete slap-back echoes instead of smooth reverb, and naming the material gets you that reflection.
pistol fired once in an open field, sharp report with a fast dry crack and almost no reflection, distant treeline
"Almost no reflection" makes an exterior shot sound exterior, and the treeline adds one distant return so it does not sound lifeless.
hunting rifle fired far away across a valley, delayed crack with a long rolling echo between hillsides
At distance the echo becomes the main event and the report becomes small, so prompting the echo prompts the distance.
pistol magazine released and dropped, a fresh one inserted and the slide released, very close mic, dry
Weapon handling is used far more often than firing and is almost never in stock packs at usable length.
A gunshot's report lasts a few milliseconds; the rest is the room, the street or the valley responding. That is why the same weapon is unrecognisable indoors and outdoors, and why a dry stock shot never sits in a scene. Make the space a required part of every gunfire prompt. When a shot does not fit the picture, change the space before the weapon.
Slides racking, magazines dropping, hammers cocking and shells hitting concrete are quiet, specific and instantly readable. They carry tension because they signal intent, where a shot signals consequence. They are also short and cheap to generate. If you are building a weapon set, make the handling sounds first; scenes are often built entirely from them.
Sound travels roughly a third of a kilometre per second, so a distant shot arrives noticeably after the muzzle flash, and smeared: the sharp transient has been absorbed and what is left is the rolling echo. Prompting "delayed crack" and "long rolling echo" gives you that, and it reads as distance immediately. A quiet close gunshot sounds like a quiet gunshot, not a distant one.
The models run on your machine, which changes the cost, the privacy and what you can automate.
Weights are fetched once. After that, generation, the library and the API all work with the network off. Everything lives in one SQLite file and one folder of WAVs under ~/.soundbox, and nothing is uploaded.
Soundbox runs an MCP server in the same process, with tools for generating and listing sounds. Generated files come back as absolute paths, so an agent can copy them into a project.
Every model's terms are shown before you download it, and non-commercial weights need an explicit confirmation. Soundbox is MIT. The licence of the model that made a sound governs what you may do with it.
claude mcp add --transport http soundbox http://127.0.0.1:17494/mcpcurl -X POST http://127.0.0.1:17494/api/generate \
-H 'Content-Type: application/json' \
-d '{"model":"audiocpp-stable-audio-3-sfx","prompt":"8-bit coin pickup blip","duration_s":1}'