Silent b-roll Short: Timeline audio.mode silence, 179 s for $0.30

Render a silent vertical Short with Timeline 1.0 audio.mode silence: 179 s bills 3 minutes ($0.30), and four refusal codes say which field to drop.

5 min readSume
All posts

To render a Short with no spine file, send audio: { mode: "silence", duration_seconds: 179 } to Timeline 1.0. The render bills ceil(179 / 60) = 3 minutes at $0.10, so $0.30. In silence mode you must not send url, parts, gain_db or source_in, or the API refuses the request. YouTube allows a Short of up to three minutes (page read 2026-10-08), so 179 seconds stays inside the limit.

The request

audio.duration_seconds is required and takes 1-1800 seconds. video[] takes 1-200 slots, every source_url must be a Sume-hosted file, and Idempotency-Key is required. The default output is 1080x1920.

{
  "audio": { "mode": "silence", "duration_seconds": 179 },
  "video": [
    { "source_url": "https://media.sume.com/artifacts/artf_demo/a.mp4", "start": 0, "duration": 90 },
    { "source_url": "https://media.sume.com/artifacts/artf_demo/b.mp4", "start": 90, "duration": 89,
      "transition": { "type": "fade", "duration": 0.5 } }
  ]
}

Refusals in silence mode

Each refusal has a stable code (read 2026-10-08 on the Timeline page). A fifth rule is separate: soundtrack.duck_db needs a real spine, so it returns duck_requires_audio_spine in silence mode.

Silence-mode refusals (as of 2026-10-08)
CodeWhat triggers itFix
silent_audio_takes_no_urlaudio.url with silenceRemove url
silent_audio_takes_no_partsaudio.parts[] with silenceRemove parts
silent_audio_takes_no_gaingain_db with silenceRemove gain_db
silent_audio_takes_no_source_insource_in with silenceRemove source_in

What the render costs by length

Silence mode changes nothing in the price. The reserve is ceil(audio.duration_seconds / 60) minutes at $0.10, and the job uses no provider inference, only worker ffmpeg. The lengths that matter for Shorts are below. YouTube counts a Short over one minute differently for Content ID (a claim on a Short of more than one minute blocks it globally, per the page read 2026-10-08), which is one reason to look at the 60-second line.

Silent Timeline render by length (as of 2026-10-08)
Declared lengthCeil minutesCostNote
30 s1$0.10Short, any claim rule aside
60 s1$0.10Last second that stays at one minute
61 s2$0.20Over one minute
120 s2$0.20Mid-length Short
179 s3$0.30One second under the three-minute limit

When silence is the right spine

Use silence when the sound will come from somewhere else: a library song added in YouTube, a track you license separately, or no sound at all, as in a looping product visual. Use a real spine when you have a voice-over or a generated voice, because the spine decides the output length and the slots follow it. If you need a voice for only part of the Short, audio.parts[] joins up to 20 gapless slices inside the render, and declared silence is not mixed with them in the same request. Pick one spine type for each render.

Silence also helps to price an idea. A silent plan of 179 seconds with 40 slots returns billable_minutes: 3 from the unbilled plan route without a job or a credit reservation. You then know the render part of the budget is $0.30, and the rest of the money is generation.

Coverage and the end of the spine

The last slot may stop at most 0.5 seconds before the end of the spine. In the example, the slots cover 0-90 and 90-179, so they reach the end exactly. If you declare 179 seconds and the last slot ends at 177, the gap is 2 seconds and the request fails. Keep the end of the last slot within 0.5 seconds of duration_seconds.

  • Silence is for b-roll, loops and pictures to which you add sound after upload.
  • A soundtrack bed works in silence mode, but duck_db does not.
  • Plan first: POST /v1/timeline-1.0/plan is unbilled.

Sources

Related posts

More in Developers

All Developers posts

Written by Sume