Fade out music at the end of a video: two fades, two caps
In Timeline 1.0, soundtrack.fade_out_seconds fades only the music bed (max 10 s). output.fade_out_seconds fades the whole render (0 to 5 s). Which to use.

To fade music out at the end of a video with Sume, set soundtrack.fade_out_seconds on a Timeline 1.0 render, up to 10 seconds. That fades only the music bed. A separate output.fade_out_seconds fades the whole render and is capped at 5 seconds.
The two fields look alike and have different caps, so pick by what you want to fade. Everything here is from Sume's Timeline 1.0 page, read 2026-10-01. YouTube's September 2026 post about conversational editing is the trend behind the question; the render itself is a plain API call.
What is the difference between the two fades?
| Field | Limit | Notes |
|---|---|---|
soundtrack.fade_out_seconds | 10 s at most | Part of the optional soundtrack bed with url, gain_db, loop, duck_db |
output.fade_in_seconds / output.fade_out_seconds | 0 to 5 s; sum no more than the output length | Set on output, the render as a whole |
audio.duration_seconds | 1 to 1800 s | Required; sets the output length |
How do I write the request?
Timeline needs an audio spine (audio.url, audio.parts[], or audio.mode: "silence") and video[] slots, all pointing at this workspace's media.sume.com files, plus an Idempotency-Key. The soundtrack block is separate from the spine. Note that duck_db needs a real spine, not silence.
{
"audio": { "url": "https://media.sume.com/artifacts/artf_demo/voice.wav", "duration_seconds": 24 },
"video": [
{ "source_url": "https://media.sume.com/artifacts/artf_demo/talk.mp4", "start": 0, "duration": 24 }
],
"soundtrack": {
"url": "https://media.sume.com/artifacts/artf_demo/bed.mp3",
"gain_db": -12,
"fade_out_seconds": 6
},
"output": { "fade_out_seconds": 1 }
}Which one should I use?
If the voice or picture should stay at full level and only the music should taper, use the soundtrack fade. If you want the whole clip to ease out, including picture, use the output fade. They can be combined as above. Mind the sum rule: the output fades must add up to no more than the output length, so a 3-second clip cannot take a 5-second fade out.
A longer bed than the clip is handled with loop on the soundtrack. For the full background-music workflow see add background music to video; for the same idea in ffmpeg terms see ffmpeg fade in, fade out.
What does a render cost?
Timeline 1.0 is priced at $0.10 per output minute, and the reserve is ceil(audio.duration_seconds / 60) minutes. An unbilled /plan preflight returns the estimate before you submit.
Sources
Related posts
More in Developers
- Crossfade longer than 1 second: the Timeline transition limit
Timeline 1.0 transitions are capped at 1 second and 50 percent of the shorter neighbouring clip. Longer ones return transition_too_long. What to do instead.
- Cancelling a Trigger.dev run does not cancel the Sume job
Trigger.dev cancel stops the task and its child runs. A Sume job that already started generating cannot be cancelled, and still bills. Store the job id.
- Trigger.dev public tokens show Sume progress without the API key
Hand the browser a Trigger.dev read-only public token for one run while the task holds the Sume key. The Sume key never leaves the server.
- Trigger.dev retries and Sume errors: skip 4xx, wait on retry-after
Trigger.dev retries any uncaught throw. Use catchError to skip Sume errors that cannot succeed, and read the retry-after header on a 429.
Written by Sume