Repository navigation
Releases: HamSanders/soundbox
Release list
Soundbox v0.4.0
Added
- Studio: canvas layout and pop-out windows. The studio can lay its
panels out as free cards on a grid instead of three columns: drag a card's
header to move it, drag its edges to resize it, and Panels → Tidy puts it
back. Positions are remembered per builder. Any panel can also leave the
studio for a window of its own, so you can put it on another monitor. Drag
its header past the edge of the window, or press its pop-out button. A
popped-out panel shares the studio's state, opens its menus in its own
window and passes keyboard shortcuts through. Closing the window puts the
panel back, and docking or closing the panel, or leaving the studio, closes
the window. The desktop app opens these as native windows. - Failure cards. A generation or download that fails now says what
happened, why, what to do and what is kept, with up to two fix links, Retry
where a retry can help, the raw text under Details and a Copy diagnostic
button, in place of a bare red line or a toast. The server classifies the
common causes (GPU out of memory, system memory, paging file, missing
runtime, model not downloaded, corrupt model file, stalled or truncated
download, Hugging Face gated or unreachable, disk full, timeout) in
server/src/failure.ts; jobs carry the result asfailure. A failed
generation also stays on the Library page as a card instead of vanishing. - Command palette. Ctrl/⌘+K now finds sounds, stories, voices and models
as well as pages: a sound opens, a story opens in its builder, a model
loads, downloads or unloads from the row. Settings rows appear once you
type. On a page with a composer the first row is Generate, or Cancel while
a job runs.?opens a keyboard cheatsheet. - Script Builder: paste a script. Paste a scene or a passage and
Auto-cast reads the speaker cues and "said X" attributions, hands each
character a voice (a voice of the same name if there is one, otherwise the
next unused one) and adds the lines; or split prose into lines by
sentence, paragraph or chapter with a longest-line limit. An empty script
offers Add first line, Paste a script and Load sample. - Library. Every row carries its recipe (model, length, seed, steps,
CFG, and whether it was extended or covered) so two takes of one prompt
can be told apart; the sound page has a "How it was made" list with Copy
recipe. A sound's menu has Send to: add it to a story, open it in the
studio, or make a voice from it in the Voice Lab. The tag, model,
favourites and by-agents filters fold behind a Filters button whose
summary shows each chosen value as a chip that clears itself. - Models page. Packs: one Install for a sensible model each for sound
effects, music and voice at Fast, Balanced, Quality or Max, with the size
to download; the category tabs say how many of each are on this machine;
a model whose download stopped shows as Incomplete with Repair, which
fetches only what is missing; and a Self-test in a model's details renders
one second through the normal path and reports the time and device without
saving anything (POST /api/models/:id/selftest). - README. Shorter and faster to scan: a Make / Arrange / Connect table,
a hardware table, profiles, an "install with a prompt" block for coding
agents, and the source, Docker and API sections folded.docs/INSTALL-AGENT.md
is the runbook that prompt points at.
Changed
- Composer. The Generate button keeps one width and names the running
job's stage ("Loading model", "Generating 42%"), Cancel keeps its place
instead of pushing the pills about, a progress strip runs along the card's
bottom edge, and whatever stops a run is said in one sentence with the link
that fixes it rather than a greyed-out button. - Sidebar. Each area's icon carries its own hue, the sidebar folds to an
icon rail on studio, Music and Voice Lab pages (with a "keep expanded"
preference in Settings → Interface and on the rail itself), and the device
row in the footer opens a panel with the GPU, VRAM in use, the loaded model
and an Unload button that frees the memory without a trip to Models.
Installers are not yet signed. Windows shows a SmartScreen prompt (More info → Run anyway); macOS asks you to allow the app in System Settings → Privacy & Security. docs/DESKTOP.md has the details.
Soundbox v0.3.0
Added
- Custom endpoints. Settings → Endpoints sends sound effects, music or
speech to a server you already run (LocalAI, an OpenAI-compatible speech
server) instead of downloading the model. The request body is a JSON
template with variables such as{{prompt}},{{lyrics}},{{bpm}}and
{{key}}. Each endpoint appears in the model pickers. WAV and PCM are read
directly; other formats need ffmpeg. Endpoints outside the local network
are marked, since prompts leave the machine. Seedocs/ENDPOINTS.md. (#22) - Updates in the desktop app. On launch, an installed copy checks for a
newer release and offers to install it and restart. Models and projects are
kept. Copies installed before this version need one manual download to get
it.
Fixed
- GPU name and VRAM on NVIDIA.
/api/healthreports the GPU's name and
its total and free VRAM fromnvidia-smi, for the first GPU in
CUDA_VISIBLE_DEVICESor GPU 0, so the sidebar, Settings and onboarding show
them instead of only "cuda". Other GPUs still reportnull. (#17) SOUNDBOX_ALLOWED_HOSTSbehind a reverse proxy. The server'sHost
check now accepts the names inSOUNDBOX_ALLOWED_HOSTS, sosoundboxon
127.0.0.1behind Caddy or nginx no longer answers 403 "Forbidden host" to
every request. Before, the variable only reached CORS and/mcp. A bare
hostmatches any port andhost:portonly that port, the same in every
check. (#22)- Dev mode from another machine.
npm run devpasses
SOUNDBOX_ALLOWED_HOSTSto Vite'sserver.allowedHosts, and a new
SOUNDBOX_DEV_HOSTsets the address Vite listens on. Both are unset by
default, which keeps the dev UI on localhost. (#22)
Installers are not yet signed. Windows shows a SmartScreen prompt (More info → Run anyway); macOS asks you to allow the app in System Settings → Privacy & Security. docs/DESKTOP.md has the details.
Soundbox v0.3.0-beta.2 (custom endpoints preview)
A test build of custom audio endpoints (#22, PR #24), not a stable release. It replaces v0.3.0-beta.1.
What to try
Settings → Endpoints → Add endpoint sends sound effects, music or speech to a server you already run, instead of downloading the model:
- Pick a preset (LocalAI ACE-Step music, LocalAI sound effects, OpenAI-compatible
/v1/audio/speech) or start blank. - Set the URL, an optional Bearer key, and the JSON body template. Variables:
{{prompt}},{{lyrics}},{{instrumental}},{{duration}},{{bpm}},{{key}},{{seed}},{{text}},{{voice}},{{voice_ref_b64}}and more. - Press Test. It renders one short clip and reports what came back.
- Save it. The endpoint appears in the model picker for its task.
WAV and PCM responses are read directly. MP3, FLAC and other formats need ffmpeg on the machine running Soundbox. Full guide: docs/ENDPOINTS.md.
Also in this build
- Reverse proxies and other machines (#26). The server now accepts the names in
SOUNDBOX_ALLOWED_HOSTSas theHostheader, so it works behind Caddy or nginx. In dev mode,SOUNDBOX_DEV_HOSTlets the UI listen beyond localhost. docs/INSTALL.md has the setup. - Desktop updates (#25). The app checks for a newer release on launch and offers to install it. Pre-releases are never offered, so this build moves to v0.3.0 once that's released.
Notes
- Inside the app and in the installer file names, this build calls itself 0.2.0. Windows installers can't carry a
-betasuffix, so only the tag and this page say beta. - Linux / Docker: there is no Linux installer. Build the image from the branch instead:
git clone -b feat/22-custom-endpoints https://github.com/HamSanders/soundbox && cd soundbox && docker compose up -d --build
The image already includes ffmpeg. To reach it through a proxy, setSOUNDBOX_ALLOWED_HOSTSindocker-compose.ymlto the name the proxy uses. - Installers are not yet signed. Windows shows a SmartScreen prompt (More info → Run anyway); macOS asks you to allow the app in System Settings → Privacy & Security. docs/DESKTOP.md has the details.
Please report problems on #22.
Soundbox v0.1.0
See CHANGELOG.md for what changed.
Installers are not yet signed. Windows shows a SmartScreen prompt (More info → Run anyway); macOS asks you to allow the app in System Settings → Privacy & Security. docs/DESKTOP.md has the details.