Teaching a Lightweight Neural TTS Engine to Read: Span-Preserving Text Preparation, Phoneme-Set-Aware Pronunciation Repair and Model-Timed Subtitles for Piper
Description
Piper is a widely used neural text-to-speech engine that runs in real time on ordinary processors. It reads text through the espeak-ng phonemizer and performs no text normalization of its own, so written forms such as prices, dates, abbreviations, units and phone numbers are often read literally. We describe a text preparation layer for Piper that rewrites such forms while keeping, for every spoken word, the span of the written text it came from; it also segments text into sentences, lines, paragraphs and clauses with explicit pauses. We report two further observations: several community English (US) Piper voices were trained on espeak's British phoneme set and therefore pronounce words such as schedule and privacy the British way, which we repair with phoneme strings restricted to the symbols those voices were trained on; and Piper's duration output yields exact word timings for subtitles once spoken words are mapped back to written words with a small dynamic programme. On a suite of 84 hand-written English and Spanish test sentences the phoneme error rate against reference readings fell from 32.6% to 0.9%, false sentence endings fell from 18 to 0, and none of 19 control sentences changed. On a held-out half of NVIDIA NeMo's public text normalization test cases, which we did not write, the phoneme error rate was 41.0% for unprocessed text, 28.5% for a typical number-to-words script and 15.8% for our layer in English (200 cases), and 64.7%, 56.2% and 43.2% in Spanish (277 cases). We release the code and evaluation data under the Apache License 2.0.
Files: the paper (English) and the study package, which contains the ttsprep text preparation layer with its unit tests and Piper timing adapter (Apache License 2.0), the evaluation scripts, the 103 test sentences with references, the NeMo test cases with their source and licence, all result files, the LaTeX sources and the paper in English and Spanish. Web version in English and Spanish: https://loudness.ai/research/piper-tts-text-normalization/ (technical report LA-RB-2026-002, version 1.0.1). Version 1.0.1 corrects one misprinted character in the PDF (the ordinal “10.º”); nothing else changed.