Video · Skill
Music bed
An instrumental track made to fit your ad.
What it does
Generates an instrumental music bed at the length you need, trimmed and faded so it sits under your ad.
The skill file
What your AI app reads when it runs this skill.
Superseded: the video kit now does this with the music-elevenlabs part, version 1.0.2, in the parts folder of this repository. It orders the bed through the private line and levels and fades it the same way. This atom stays, unchanged in behaviour, for skills outside the kit until they move; its scripts still run.
create-music-elevenlabs
Generate an instrumental music bed via ElevenLabs Music, routed through the GooseWorks proxy, so the call is charged to your GooseWorks credits. Trims any sparse intro, loudnorm, fades the tail. Prompt + length from the template recipe. Use for the music layer of any video-ad format.
Run
gen_music.py --prompt '...' --duration 10 --out music.m4a — charged to your GooseWorks credits; writes a duration-clamped, loudnorm'd bed.
Contract
- Paid calls route through the GooseWorks proxies (charged to your GooseWorks credits) via the
bundled
media_proxy.py— never a provider SDK's default host. - The template recipe (DB) supplies the model + params; this capability is generic.
Model notes
How ElevenLabs Music behaves, measured on shipped projects. Each note lives here once.
- Prompts over about 1,000 characters return HTTP 400 with no reason. Keep the prompt short and structure it with timestamped sections.
music_length_msis a suggestion: a 32.9 second request came back 59 seconds, and a stated ending was ignored. Measure the energy curve, find the natural ending and keep the window that ends there, so the video closes on the music's own finish.- Through fal (
fal-ai/elevenlabs/musicwith acomposition_planandrespect_sections_durations) the total length holds, but sections snap to bar lines and a silent section plays at full level. Cut silences in the edit.force_instrumentalwith acomposition_planreturns 422.

