Descript music at a set length vs Sume music length in the prompt
Descript's Sept 17 update generates music and effects at specified lengths. Sume Music has no duration field; you ask for length in the prompt. How to do that.

Descript's September 17 changelog entry says you can generate music and sound effects at specified lengths. Sume's Music Router works differently: duration and duration_seconds are rejected, and you steer length in the prompt itself, for example "a 2-minute track" or section markers like [0:00-0:30] Intro. Treat the result as approximately that long, then check the file.
The two approaches
The Descript line is from its changelog; the Sume lines are from the Music Router docs.
| Aspect | Descript | Sume Music Router |
|---|---|---|
| Where length is set | A specified length in the product | Inside prompt; no duration field |
duration field | n/a | Rejected with an error |
| Price | See Descript | $0.125 per accepted generation |
| Engine | See Descript | sume/music-auto (Lyria 3.5 today), lyria-3.5 or lyria-3-pro |
A prompt that asks for length
Put the length and the section plan in one prompt, up to 5,000 characters. job.request.routed_model tells you which engine ran, and the audio lands as an artifact on the job result.
import os, requests
r = requests.post(
"https://api.sume.com/v1/music-router/generate",
headers={"Authorization": f"Bearer {os.environ['SUME_API_KEY']}",
"Idempotency-Key": "music-len-001"},
json={"model": "sume/music-auto",
"prompt": "A 45-second corporate intro. [0:00-0:15] soft piano, "
"[0:15-0:45] build with strings. Instrumental."},
)
print(r.status_code, r.json())If the length is wrong
Because length is only guided, a generation can come back shorter or longer than asked. Trim with timeline audio split rather than re-rolling, and re-roll only if the structure missed.
Worked example
Here is how to turn a length requirement into a prompt.
- Need 45 seconds: say "a 45-second track" and add
[0:00-0:15]and[0:15-0:45]section lines. - Need exactly 30 seconds for a spot: ask for 35 and trim with timeline audio split.
- Need a loop: ask for a steady section and join copies with timeline audio concat (1 to 20 parts).
Checklist before you commit
Because the router rejects duration outright, a payload that includes it fails fast with an error, which is useful for catching copy-pasted examples from other APIs.
- Check the real length of every generated file.
- Keep the prompt with the artifact.
- Budget $0.125 per accepted generation, including retries you decide to keep.
Sources
Related posts
More in Comparisons
- Descript per-second smoothing credits vs flat API job prices
Descript now bills smoothing by the second. Here is how that compares with Sume media jobs, which charge a flat amount per job or per output minute.
- Dreamina Long Video Mode: 3 minutes vs Sume's 30 s Seedance
Dreamina says its Seedance 2.5 Long Video Mode makes videos up to three minutes. Sume's seedance-2.5 makes 4-30 s per request, so long films are joined clips.
- ElevenLabs Avatars wants 3 to 5 reference images: what Sume needs
ElevenLabs recommends 3-5 reference images from different angles for Avatars. Sume Avatar 1.0 builds an avatar handle from one photo, a prompt, or simple props.
- ElevenLabs Avatars has no API at launch: the Sume Avatar API
ElevenLabs says an Avatars API is planned but not live. If you need to automate avatar videos now, here is the Sume Avatar 1.0 route and what it needs.
Written by Sume