13 video slots in one render: strategy single is refused above 12

A Sume timeline render accepts 1 to 200 video slots, but render.strategy single is refused above 12. Use auto or chunked; the price stays $0.10 a minute.

4 min readSume
All posts

If your timeline render has 13 video slots, do not set render.strategy to single. Sume refuses single above 12 slots with render_strategy_unsafe. Leave the field out, or send auto: it renders in chunks once a timeline passes 12 segments, and the price does not change, because Timeline 1.0 bills output minutes, not slots.

The three strategies

render.strategy is optional on POST /v1/timeline-1.0/render. The docs list three values.

render.strategy values (Sume docs, read 2026-10-09)
ValueBehavior
auto (default)Renders in chunks once the timeline passes 12 segments
chunkedAlways renders in chunks
singleOne pass; refused above 12 slots with render_strategy_unsafe

Slot limits and price

A render takes 1 to 200 video[] slots and an audio spine of 1 to 1,800 seconds. The public rate is $0.10 per output minute, rounded up, minimum one minute. Slot count never enters the formula.

Take a 13-slot, 58-second montage. 58 seconds rounds up to 1 minute, so the render is $0.10. Make it 200 slots of 0.2 seconds each (40 seconds) and it is still 1 minute, still $0.10. The practical limit is the minimum slot length of 0.2 seconds, plus the rule that coverage can stop at most 0.5 seconds before the end of the spine.

What to send

Omit render entirely for the common case. Only set chunked if you want chunking even on a short timeline. The refusal for single is a 400 at admit, so you learn about it before any worker runs; the unbilled plan call surfaces schema errors the same way.

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: montage-13-001" \
  -d '{
    "audio": { "url": "https://media.sume.com/artifacts/artf_demo/vo.wav",
               "duration_seconds": 58 },
    "render": { "strategy": "auto" },
    "video": [ ... 13 slots, video[0].start = 0 ... ]
  }'

Why chunking exists

The docs do not describe the chunk size or how chunks are joined, only that auto chunks once the timeline passes 12 segments and that single above 12 is unsafe. What follows from that for you is practical: you never need to split a long slot list into several renders yourself, and you do not pay more for a long list. A 200-slot, 30-minute render is $3.00 (30 minutes x $0.10), the same as a 30-minute render with four slots.

If you were thinking of splitting a 60-slot montage into five renders and joining them afterward, do not. Five renders of 60 seconds each would be 5 x $0.10 = $0.50 and would need a second step to join them, while one 5-minute render of the same material is 5 x $0.10 = $0.50 as well with no join, and the transitions between sections stay intact.

Other things that fail at admit

The same refusal table lists the errors you will hit first when you build slot lists in code. Declared starts are authoritative and must increase, and video[0].start must be 0 (timeline_must_start_at_zero). Slots may not overlap past the crossfade (segment_overlap). Every URL must already be a media.sume.com artifact in your workspace; import files with POST /v1/media-imports first, or you get unsupported_media_source.

Results come back through the job envelope: GET /v1/jobs/:id/result returns kind: timeline_render with video_url, duration_seconds, segment_count, billable_minutes, and any soft warnings[].

Sources

Related posts

More in Media tools

All Media tools posts

Written by Sume