Piper: Fast Local Text to Speech
Piper generates speech from text locally, quickly, and without sounding like a speech synthesiser from 1998. It was built for the Rhasspy voice assistant project, where the constraint was running well on a Raspberry Pi.
Why it is interesting
Neural text to speech generally means either a cloud API or a model that needs a GPU. Piper targets the gap: quality close to hosted services, fast enough for real-time on a CPU, small enough for a single board computer.
That combination is what makes local voice assistants viable at all.
Voices
Voices are per-language and per-speaker, in several quality tiers. Higher quality means larger models and more compute, and the difference between the medium and high tiers is audible but not dramatic for most uses.
Dozens of languages are supported, with varying voice availability.
echo "The backup completed successfully." | piper -m en_GB-alba-medium.onnx -f out.wav
Where it gets used
Voice assistants. Home Assistant uses Piper for its local voice pipeline, which together with whisper.cpp for speech recognition gives a fully local assistant with no cloud dependency at all.
Accessibility. Screen reading and document narration without sending text anywhere.
Notifications. Spoken alerts from monitoring or home automation, which is more useful than it sounds when your hands are occupied.
Audiobook generation from text, where quality is adequate for personal use.
Practical notes
Latency is low enough for interactive use, which is the property that matters for a voice assistant. A cloud TTS service with better voices and 400ms of round trip feels worse than a local one that starts immediately.
It is a command-line tool and a library rather than an application. LocalAI exposes speech synthesis through an OpenAI-compatible endpoint if you want an HTTP API.
License
Piper is released under the MIT License.