Indie Hacker Playbooks

Normalizing TTS Scripts Before Synthesis

Rewrite numbers and technical tokens into spoken forms before TTS generation

Definition

TTS script normalization inserts a pronunciation-oriented copy between the canonical script and speech generation. It targets tokens whose written form is useful to readers but ambiguous to a speech model, such as dates, money, percentages, version numbers, hardware notation, file paths and terminal commands.

Perspectives

Sam Hottman (2026-08-29, YouTube)

Immediately before synthesis, detect difficult tokens with regular expressions and use a language model or coding agent to rewrite them into the form a person should say aloud. For example, expand punctuation and symbols in command names instead of expecting the TTS model to infer the intended pronunciation. Preserve a review or approval step for technical scripts: unreviewed command-heavy narration has produced errors that were noticed only after listening to the rendered audio.

If normalization cannot make the output reliable, change the TTS model rather than repeatedly rendering the same unmodified script. The source's single command test favored VoxCPM2, while every model still missed some numeric or technical expression.

How to apply

  • Use this boundary for finance, date-sensitive, developer or hardware scripts; plain narrative copy may not justify the extra stage.
  • Keep the canonical written script separate so pronunciation spelling does not leak into captions, articles or documentation.
  • Test the rewrite against candidates from Selecting an Open-Source TTS Model for Content Automation.
  • A coding agent such as Claude Code can implement deterministic detection, but a person should still listen to high-consequence output.
  • Keep the workflow under Voice rather than treating pronunciation failures as a general content-editing problem.

Limits

  • The source demonstrates the failure class but does not publish a complete normalization rule set or measured error reduction.

  • Language-model rewriting can alter identifiers or meaning; exact commands and values need a protected canonical copy.

  • The recommendation is based on one Korean-language test and may not transfer to other languages or model revisions.

  • Source video

On this page