Slow down for phone numbers: phrase pacing in a Sume TTS script

Decagon says Chord's pacing follows each sentence. On Sume, speed is one setting per job, so render a phone number as its own slower take and join the takes.

5 min readSume
All posts

Decagon says that in Chord, pacing and energy shift with the length and meaning of a sentence. Its post does not mention phone numbers or codes, so the slow-number idea here is a Sume workaround, not a Chord feature. Sume's TTS Router has no per-phrase pacing: speed is one value per job (Sonic 3 rows accept 0.6 to 1.5, default 1; Eleven Multilingual v2 and Turbo v2.5 accept 0.7 to 1.2). To slow down just a phone number, render it on its own at a slower speed and join the takes.

Chord's pacing statement is from Decagon's post read on 2026-10-13. Sume's ranges come from the TTS Router model catalog in the repo.

Pacing controls by route (read 2026-10-13)
RouteSpeed rangeGranularity
Sonic 3 rows (generation_config.speed)0.6 to 1.5, step 0.05One value per job
Eleven Multilingual v2, Turbo v2.5 (voice_settings.speed)0.7 to 1.2, step 0.01One value per job
Eleven v4, v4 Turbo, v3No speed setting in the catalogNot available

How do I build the two-speed line?

Split the script at the number: take A is the sentence before it, take B is the number alone with speed lowered, take C is the sentence after. Write digits in groups the way you want them read. Three jobs go to tts-router/generate, then POST /v1/timeline-1.0/audio with operation: concat joins up to 20 parts into one gapless file at the sample level, with no re-synthesis. The URLs must be audio already on media.sume.com for your workspace, and the call needs an Idempotency-Key. All parts must share a channel layout (audio_parts_channel_mismatch otherwise).

curl -X POST https://api.sume.com/v1/timeline-1.0/audio \
  -H "Authorization: Bearer $SUME_API_KEY" \
  -H "Content-Type: application/json" \
  -H "Idempotency-Key: pace-join-001" \
  -d '{
    "operation": "concat",
    "parts": [
      { "url": "https://media.sume.com/artifacts/artf_demo/a.wav" },
      { "url": "https://media.sume.com/artifacts/artf_demo/b-slow.wav" },
      { "url": "https://media.sume.com/artifacts/artf_demo/c.wav" }
    ]
  }'

What does it cost?

Each TTS job bills its characters (about $0.0475 per 1,000 for Sonic before cent rounding), and the concat is one flat-credit job. The returned segments[] give each part's offset, which you use to re-base timeline video starts.

Sources

Related posts

More in Use cases

All Use cases posts

Written by Sume