Four Twitch clips into one 60-second recap: trim, caption, join
A recap pipeline for four stream clips on Sume: trim, burn captions, detach audio, then join with blur fit and fades. Calls, a table, and a $1.02 total.

Trim each clip, caption it, detach its audio, and join the four on Timeline 1.0 with fit: "blur" so landscape footage fills a vertical frame. Four 15-second clips become a 60-second recap for $1.02 on Sume, with no generation involved.
The chain
Start from clip files you own the rights to and import them into the workspace (POST /v1/media-imports). Trim accepts a start and a duration of 0.2 to 900 seconds. Captions need audible speech or they fail with caption_no_speech, so send cues for a silent moment.
curl -X POST https://api.sume.com/v1/video-captions \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: recap-cap-1" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/clip1-trim.mp4",
"style": "punch",
"language": "en"
}'The join
Use the detached audio of each captioned clip as audio.parts[] slices, in order, so speech is gapless across cuts. The four video slots use blur fit with a short fade between them.
{
"audio": { "parts": [
{ "url": "https://media.sume.com/artifacts/artf_demo/a1.wav", "duration": 15 },
{ "url": "https://media.sume.com/artifacts/artf_demo/a2.wav", "duration": 15 },
{ "url": "https://media.sume.com/artifacts/artf_demo/a3.wav", "duration": 15 },
{ "url": "https://media.sume.com/artifacts/artf_demo/a4.wav", "duration": 15 } ],
"duration_seconds": 60 },
"video": [
{ "source_url": "https://media.sume.com/artifacts/artf_demo/v1.mp4", "start": 0, "duration": 15, "fit": "blur" },
{ "source_url": "https://media.sume.com/artifacts/artf_demo/v2.mp4", "start": 15, "duration": 15, "fit": "blur",
"transition": { "type": "fade", "duration": 0.25 } }
]
}Cost per recap
The caption price is per job for videos up to 60 seconds, so each 15-second clip is one job.
| Step | Jobs | Rate | Subtotal |
|---|---|---|---|
| Video trim | 4 | $0.02 | $0.08 |
| Video captions | 4 | $0.20 | $0.80 |
| Audio detach | 4 | $0.01 | $0.04 |
| Timeline render, 60 s | 1 | $0.10 | $0.10 |
| Total | $1.02 |
Weekly math
One recap a week for a year is $53.04. Extra clips add $0.23 each.
Order and pacing
Put the strongest moment first and the funniest last, and keep the fade at a quarter of a second so the join does not eat the first word of the next clip. Captions are burned into each clip before you join them, so a caption style choice applies per clip; pick one style for the whole recap so the text does not change look between cuts. Always use footage you have the right to reuse, and credit the people in it.
Related posts
More in Use cases
- Upscale old footage past 30 seconds: chunk, upscale, reassemble
Sume video upscale takes up to 30 seconds per call at $0.009 per input second. Chunk a 5-minute tape with video-trim, upscale each piece and join with Timeline.
- Used-car listing videos: Omni drafts $0.30, finals $1.50
A 8-second car listing clip on Sume costs $0.30 at 360p and $1.50 at 1080p with Omni Flash. Twenty cars is $30.00 at 1080p. Veo 3.1 prices beside it.
- Walmart's three-flashes-a-second limit and Sume's 24-frame check
Walmart bans strobe and caps flashing at three times a second. Sume has no flash detector; video-frames returns up to 24 named stills to review one second.
- Walmart music-only video: add a [MUSIC PLAYING] caption with Sume cues
Walmart's best practice for a music-only video is a [MUSIC PLAYING] caption, removed after about 10 seconds. Burn it with Sume caption cues for a flat $0.20.
Written by Sume