Timeline audio concat limits: 20 parts, 1,800 s, one channel layout

Timeline audio concat accepts 1 to 20 parts, outputs up to 1,800 seconds and needs one channel layout. Limits, refusal codes and a request that works.

5 min readSume
All posts

The limits

Timeline audio's concat joins Sume-hosted audio into one file. The docs set the rules: parts[] has between 1 and 20 ordered items, produced audio is at most 1,800 seconds, and parts must share one channel layout.

Concat limits (read 2026-10-03)
LimitValueIf you break it
Parts1 to 20Request refused
Output lengthUp to 1,800 sRefused
Channel layoutOne shared layoutaudio_parts_channel_mismatch
Source locationThis workspace's media.sume.com audiounsupported_media_source or source_not_found
Price$0.01 flat per jobNone

A request that works

Each part is { url, source_in?, duration? }. source_in and duration trim a part before it joins.

{
  "operation": "concat",
  "parts": [
    { "url": "https://media.sume.com/artifacts/artf_demo/line1.wav" },
    { "url": "https://media.sume.com/artifacts/artf_demo/line2.wav", "source_in": 0.1, "duration": 1.8 }
  ]
}

Joining more than 20 clips

Join in two rounds. Concat up to 20 parts into one file, repeat for the next group, then concat the results. Keep wav so the second round is lossless.

  • Round one: 20 parts per job, as many jobs as you need.
  • Round two: concat the outputs, up to 20 at a time.
  • Watch the 1,800-second cap on every round.
  • Use one Idempotency-Key per job so retries are safe.

Reading the result

The result is kind: timeline_audio with an audio_url, a duration_seconds value and segments[] with index, start and duration_seconds. Those are offsets for each part in the joined file, which you use to re-base video timings.

The default mode is async. Pass sync to wait up to 30 seconds for a finished job, or take the 202 and poll /v1/jobs/:id/status.

Trimming parts with source_in and duration

Each part can be trimmed at join time: source_in is where to start inside the part, and duration is how long to take. That lets you drop a breath or an extra pause without a separate edit, and keeps the join in one flat-priced job.

Mind units: the docs example uses seconds, with source_in 0.1 and duration 1.8.

Takeaway

Concat is cheap, flat-priced and sample-exact. Plan for 20 parts and 1,800 seconds a job, keep one channel layout, and run it in rounds for longer material.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume