Start a video's audio 45 seconds into a song: audio.source_in
Timeline 1.0's audio.source_in sets the in-point into a single audio spine. Output length stays duration_seconds, and it is illegal with parts or silence mode.

Set audio.source_in in the Timeline 1.0 render to start the audio spine that many seconds into the file. Output length is still audio.duration_seconds, so a 45-second in-point with 24 seconds of duration plays seconds 45 to 69 of the song.
Where is it legal?
The Timeline docs give one rule per case.
| Setup | Result |
|---|---|
Single audio.url plus source_in | Allowed; in-point into the spine |
audio.parts[] plus source_in | audio_source_in_requires_single_spine |
audio.mode: "silence" plus source_in | silent_audio_takes_no_source_in (family of silent_audio_takes_*) |
Both url and parts | audio_url_and_parts_exclusive |
What does a render look like?
Video slots start on the spine at 0 and later starts must increase. video[0].start must be 0. The spine here is a Sume-hosted song file.
curl -X POST https://api.sume.com/v1/timeline-1.0/render \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: timeline-source-in-001" \
-d '{
"audio": {
"url": "https://media.sume.com/artifacts/artf_demo/song.wav",
"duration_seconds": 24,
"source_in": 45
},
"video": [
{ "source_url": "https://media.sume.com/artifacts/artf_demo/clip.mp4", "start": 0, "duration": 24 }
]
}'What if I want the middle as a reusable file?
Cut it once with timeline audio: a split range such as { "start": 45, "end": 69 } returns its own audio_url, at $0.01 per job. Use that URL as audio.url when several renders share the same excerpt.
Can the soundtrack bed use source_in?
The docs list soundtrack fields as url, gain_db, loop, fade_out_seconds and duck_db; source_in is not among them. Use a pre-cut file for a bed.
How does the job run?
Timeline jobs default to mode: "async". Pass mode: "sync" to wait up to 30 seconds for a 200 finished job, or you get 202 and poll GET /v1/jobs/:id/status and GET /v1/jobs/:id/result; there is no separate GET for the audio or render job. Idempotency-Key is required on the render and audio jobs, and every URL must already be this workspace's media.sume.com audio or video. A render is $0.10 per ceil(output minute), so 24 seconds bills one minute.
Hosted MCP has timeline_audio and timeline_create; the flow is the tool, then jobs_wait, then the result tool. Details are in the Timeline audio docs and Timeline 1.0 docs.
Sources
Related posts
More in Media tools
- Timeline audio segments: re-base video start times after concat
After a concat, use segments[] (index, start, duration_seconds) as the on-spine start of each video slot in Timeline 1.0. Declared starts are authoritative.
- Dailymotion accepts MP4 only: 1080p at 30 fps wants about 4.5 Mbps
Dailymotion accepts MP4 only and publishes bitrates per size, such as 1080p at 30 fps at 4.5 Mbps and 9:16 720x1280 at 2 Mbps. Render a match with Sume.
- Facebook catalog image_link: 500x500, 8 MB, JPEG or PNG
Meta's catalog image_link must be at least 500x500, at most 8 MB, JPEG or PNG. Ask Sume for a 1:1 JPEG and measure the file before you add it to a feed.
- Flickr video limits: 1 GB, 1080p, 3 free playback minutes
Flickr videos can be up to 1 GB at 1080p. Free accounts play the first 3 minutes and Pro plays 10, capped at 30 fps. Render a fitting clip with Sume.
Written by Sume