music-bed
Installation
SKILL.md
Music bed and sound effects
Music choice matters more than music processing: a track whose energy does not match the cut cannot be fixed with EQ. In a production this layer is on by default, unless the brief rules it out or the music IS the content; a small change adds no sound unasked.
Workflow
- Choose the track. The user's own first. Otherwise stock (
fetchStockMediamediaType:"audio",audioPurpose:"music", one or two concrete words) or original music (generateMediakindmusicwith a musical brief: mood, instruments, tempo, structure; Studio). If the edit has a turn in it, pick music with a turn in it and align them. - Lay the bed in one command:
musicBedadds the music across the picture, sets a bed level with fades and ducks it under the voice where it is actually speaking. UseautoDuckfor music that is already placed.fetchStockMediaplaces a stock track bare, with no fades, ducking or looping, and its note reports the URL:musicBedwith that URL assrcand the sameclipIdreplaces it with the finished bed. - Levels.
volumeandduckToare linear gains, andduckTois the ABSOLUTE volume the music drops to under speech, not a dip below the bed.musicBedsets the bed at 0.35 and ducks to theautoDuckdefault 0.2, a dip of only about 5 dB (20 x log10(0.2 / 0.35)). For a dip of about 10 dB under a 0.35 bed, followmusicBedwithautoDuck(clipIdsthe music clip,voiceClipIdsthe speech) withduckToabout 0.11 (0.35 x 10^(-10/20)); in generalduckTo= bed x 10^(-dB/20). How far the music then sits under the voice depends on how loud each source is, so judge it with the audio review, not the numbers. Exports are loudness-normalised to -14 LUFS (true peak -1.5 dBTP) by default; that moves the whole mix, never the balance between voice and music. - Fades. Every music track fades out rather than stopping dead; an abrupt cut to silence reads as unfinished.
- Sound effects. Short hits from stock (
audioPurpose:"sound_effect"), ONE per moment: a riser leads INTO the cut, a whoosh starts about 0.1 s before it so its peak lands on it, an impact lands ON it, a pop lands as a graphic appears. Hits go on graphics and major transitions, not every cut. Give the first aclipIdand reuse the URL in its note withaddCliptype:"audio", so a piece has one family of sounds. Level withsetAudiovolume(start about 0.3 to 0.5), under the voice, and judge by listening. - Silence is a tool. Dropping the music for one beat before a reveal beats any transition effect.
- Listen to the result with
agentWorkspaceactionreviewmodeaudiobefore claiming the mix works.