Avatar script too long? The 4 to 60 second window and how to split it
Sume accepts an avatar talking video only when the script estimates 4 to 60 seconds. Split longer scripts into scenes or jobs; costs from $0.74 to $33.
The window
The Avatar videos docs say Sume accepts scripts and multi-scene plans when it estimates the video duration at 4 to 60 seconds inclusive. For longer scripts, make them shorter or split them into multiple jobs. In a video_inputs plan, a text voice takes script or input_text, not both; a silence voice needs a duration.
| Length | standard | plus | max |
|---|---|---|---|
| 4 s | $0.736 | $0.98 | $2.20 |
| 30 s | $5.52 | $7.35 | $16.50 |
| 60 s | $11.04 | $14.70 | $33.00 |
Two ways to split
- Scenes in one job: use video_inputs with an id per scene. The job keeps one avatar, and backgrounds resolve to one shared scene. Total must still be 60 s or less.
- Several jobs: send chapters as separate requests with separate Idempotency-Keys, then join them in your editor. The 4 to 60 s rule applies to each job.
Part one of a split script
curl -X POST https://api.sume.com/v1/avatar-1.0/talking-video \
-H "Authorization: Bearer $SUME_API_KEY" \
-H "Content-Type: application/json" \
-H "Idempotency-Key: long-script-part-1" \
-d '{"avatar_handle":"product_host","quality":"standard","script":"Part one of the walkthrough: what changed in this release and why it matters."}'Estimate before you send
A spoken script runs roughly two words a second, so about 120 words is a minute; treat that as a planning rule, then check the cost with a dry run where the tool supports it.
Sources
Related posts
More in Developers
- Avatar video 400: script must include at least one word
A Sume talking-video request with an empty or whitespace-only script returns 400 invalid_request, with no job or ledger entry. Guard blank template fields.
- Avatar video 404 "Avatar was not found": handle from another workspace
A talking-video request with an unknown handle, or one from another workspace, returns 404 not_found and no job. Check the handle and the key's workspace.
- Avatar video 429: rate_limited vs queue_full, and which retry to use
Both are HTTP 429 on avatar video submit. rate_limited uses retry-after; queue_full means no accepted capacity. A small Python helper to pick the wait.
- Preview regenerate too early: 409 avatar_video_preview_busy, no charge
Calling regenerate on an avatar video preview that is still queued or processing returns 409 avatar_video_preview_busy and refunds the reservation. What to do.
Written by Sume