Coffee roaster brand video music: a 40-second lofi bed
Brief a warm 40-second lofi bed with vinyl texture for a coffee roaster brand video: one generation and a one-minute render, $0.225 on Sume.

For a coffee roaster's brand video, ask for a warm 40-second lofi-jazz bed with a soft vinyl texture and a small lift at 0:20 when the pour shot appears. On Sume that is one generation at $0.125 and a one-minute render at $0.10, so $0.225.
Brand videos reward consistency. A small business that posts weekly can use a single recognisable bed across many clips, and it should feel crafted rather than generic. Lofi-jazz fits the slow-craft look of pour-over and roasting, as long as the brief stays specific.
The brief to send
The brief names instruments and a texture, and puts one lift at the pour.
curl -X POST https://api.sume.com/v1/music-router/generate \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: coffee-roaster-brand-video-music-a-40-se-001" \
-d '{
"model": "sume/music-auto",
"prompt": "Warm coffee-shop lofi, 82 BPM, A-flat major. Mellow Rhodes chords, dusty drum loop, soft upright bass, light vinyl crackle, a muted guitar phrase at 0:20. Cozy and unhurried. Slight lift at 0:20, soft ending at 0:40. Warm tape-saturated production. Instrumental, no vocals. A 40-second track."
}'Why each axis is set that way
| Axis | Choice |
|---|---|
| Emotion | Cozy, unhurried, craft |
| Genre | Lofi jazz |
| Tempo | 82 BPM, relaxed |
| Key and mode | A-flat major, warm |
| Instruments | Rhodes, drum loop, upright bass, muted guitar |
| Arc | Guitar phrase at 0:20, soft end at 0:40 |
| Era and production | Tape-saturated, vinyl texture |
Getting the length right
Put the 40 seconds in the prompt, since the router rejects duration fields, and use audio.duration_seconds 40 in the render. If your video is on a loop, keep the track short and let soundtrack.loop handle repeats.
Use the same prompt for several clips and each clip will sound close but not identical, because each generation is independent. If you want the exact same bed, generate once and reuse the file.
Before paying for a render, call POST /v1/timeline-1.0/plan with the same body. It is unbilled and reports the billable minutes, which for this 40-second video is 1. Then send the real POST /v1/timeline-1.0/render with an Idempotency-Key, wait up to 30 seconds in sync mode, and poll GET /v1/jobs/:id/status if it is still queued or processing. Statuses are queued, processing, completed, failed and canceled, and a 429 queue_full means try again shortly.
What it costs
A 40-second video is one started minute. Reusing a single bed across ten clips costs one generation and ten renders, $1.125, while ten distinct beds cost $2.25, because a generation is $0.125 and a render is $0.10. Scaling is simple arithmetic. One finished video here is $0.225 of audio and assembly, so ten of them are $2.25 and fifty are $11.25, before any retries. Failed jobs are not billed as accepted generations, but a regeneration you ask for is a new job, so budget one or two extra takes for a hero clip.
| Line | Rate | Amount |
|---|---|---|
| Music generation x 1 | $0.125 each | $0.125 |
| Timeline render, 40 s = 1 started minute | $0.10 per started minute | $0.10 |
| Total for the audio and assembly | $0.225 |
Check before you publish
Choose one bed as your sound identity, and generate seasonal variants only when the menu changes.
Record the prompt next to the brand guide.
Small brands do not need a music budget line; at $0.225 per clip the soundtrack is closer to a rounding error than a project. The effort goes into the brief, and a good one is reusable for months.
The hand-off between the two calls is the step people miss. When the music job completes, GET /v1/jobs/:id/result returns result.artifacts[] with an audio/mpeg file on media.sume.com. Timeline only accepts workspace media URLs, so import any outside file through POST /v1/media-imports first, and send the resulting URL as soundtrack.url. The Music docs also note that job.request.routed_model names the engine that actually ran, which is worth saving with the file.
- Be specific about the genre; vague moods produce generic beds.
- Keep the bed low if the barista talks.
- Review the vinyl texture on phone speakers; it can read as noise.
- Confirm usage terms for generated music with Sume before use in ads.
Sources
Related posts
More in Media tools
- Coffee roaster holiday video: caption in your brand colour with design
Caption a roaster's holiday video in a brand colour with `design.colors.active`, then restyle twice without a second transcription: three looks for $0.60.
- Color-grade AI video on Sume: lut3d is off, tone filters stay
Sume video filter has a dim op, a crop op and an allowlisted ffmpeg filtergraph. lut3d is not on it. What a grade can and cannot do, per the docs.
- Comedy skit music: one bed and two stings with AI music
Score a 45-second comedy skit with one light bed and two short stings: three Music Router generations at $0.125 each plus a Timeline render, $0.475 in total.
- Continue a Wan 3.0 clip: trim the tail, send it as a reference video
Wan 3.0 takes reference videos on Sume (up to 5, 15 s total). To continue a scene, cut the last 3 seconds with video trim and use them as the next reference.
Written by Sume