Sume editing tool source limits: 1,800 s and 300 s
Video trim, audio detach and video inspect accept a source up to 1,800 seconds. Video filter, Timeline compose and video frames stop at 300 seconds.

Sume's media tools do not share one length limit. Video trim, audio detach and video inspect accept a source up to 1,800 seconds (30 minutes). Video filter, Timeline compose and video frames stop at 300 seconds (5 minutes). A one-hour recording therefore does not fit any of them as a single source.
What are the limits side by side?
| Tool | Source cap | Output cap | Error code when exceeded |
|---|---|---|---|
| Video trim | 1,800 s | 900 s | source_duration_exceeded |
| Audio detach | 1,800 s | 900 s (use range past that) | source_duration_exceeded |
| Video inspect | 1,800 s | 24 stills per call | not listed |
| Video filter | 300 s | inherits the source | output_duration_exceeded |
| Timeline compose | 300 s per shot | 300 s | clamps with a warning |
| Video frames | 300 s | 24 frames per call | duration_out_of_range |
| Timeline 1.0 | 200 slots | 1,800 s audio spine | not listed here |
Can I process a one-hour webinar recording?
Not as one file. The docs describe no operation that accepts a source over 1,800 seconds, and no operation that splits a longer source into parts. The trim, detach and inspect pages each say the source must be at most 1,800 seconds, with the worker enforcing it. A recording longer than 30 minutes has to be cut into pieces of at most that length before it reaches your Sume workspace, and then each piece is handled on its own.
How do I check a clip's length before I submit?
Probe it. Video inspect with frames: false returns the probe, including duration_seconds, and probe and stills are unbilled. The docs show a body of just video_url for a default probe, and the default is mode: "sync", which waits up to 30 seconds. Compare the result with the 300 and 1,800 limits above before you queue trims, filters or composes.
curl -X POST https://api.sume.com/v1/video-inspect \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: probe-webinar-001" \
-d '{
"video_url": "https://media.sume.com/artifacts/artf_demo/webinar-part1.mp4",
"frames": false
}'What if my clip is over 300 seconds but I want a filter?
Cut a range of at most 300 seconds first with video trim, which accepts up to 1,800-second sources and returns a new MP4. Then run the filter on that piece. Video trim can also conform output size with its output object, and the trimmed MP4 can go straight into a Timeline video[] slot with source_in 0. Chain them by waiting for each job's video_url before submitting the next.
Sources
Related posts
More in Developers
- Spotify HDR video podcast: tone-mapped to SDR Rec.709
Spotify converts HDR (Rec.2100) uploads to SDR Rec.709. A Sume exact trim re-encodes to yuv420p and has no colour fields, so tone-map before you trim.
- Spotify video audio channels: mono upmixed, 5.1 downmixed
Spotify upmixes mono to stereo, downmixes 5.1, and rejects multi-channel. Sume audio detach offers only channels source or mono; it cannot mix to stereo.
- Sume SDK fetch wrapper: do not add an Authorization header
A fetch wrapper passed to createSumeClient must not add Authorization. Sending it with x-api-key returns 401, because Sume accepts only one credential.
- Sume SDK calls resolve with error: make your task throw
Generated Sume SDK operations return { data, error, response } and never throw. In Trigger.dev or Inngest, throw yourself or a failed run looks successful.
Written by Sume