piper-tts
Fast and local neural text-to-speech engine
Decision gist · record as of 2026-08-14
Yes, if you need local, offline text-to-speech without cloud APIs. The package is actively maintained, widely adopted in production (Home Assistant, NVDA), has no known vulnerabilities, and supports modern Python versions. The GPL-3.0 copyleft license is a consideration for commercial use. Medium install friction is manageable given the availability of pre-built wheels across platforms.AI-flagged interpretation of the facts on this page — verify before relying
Before you install
- Requires onnxruntime and pathvalidate as runtime dependencies; espeak-ng is embedded for phonemization.
- Medium install friction due to compiled wheels for multiple platforms (macOS x86/ARM, Linux x86/ARM, Windows).
- Active maintenance with recent release (1 day old) and strong community adoption (5130 stars).
License · maintenance · safety
GPL-3.0-or-later (copyleft) — GPL-3.0-or-later (copyleft): any derivative work or distribution must also be open-source under GPL-compatible terms. Suitable for open-source projects and internal use, but requires careful review before commercial deployment.
last release 2026-08-13 (1 days) · last repo commit 2026-08-14 · 5,130 stars
0 known vulnerabilities (OSV.dev, 2026-08-14) · 891,323 downloads/mo, #4,801 on PyPI
Alternatives
Verify before relying
pip install piper-tts
from piper.voice import PiperVoice
voice = PiperVoice.load('en_US-lessac-medium')
voice.synthesize('Hello world', 'output.wav')- Whether pre-trained voice models are included or must be downloaded separately
- Typical latency and throughput characteristics for real-time speech synthesis
- Memory footprint and GPU acceleration support via onnxruntime
What it is and what it does
Piper TTS is a neural text-to-speech system designed for offline, local synthesis without cloud dependencies. It uses onnxruntime for inference and embeds espeak-ng for phonemization, supporting multiple languages and voices. The package provides a Python API, command-line interface, and HTTP server, making it suitable for integration into applications like Home Assistant, NVDA screen readers, and voice assistants.
The project is actively maintained by the Open Home Foundation and has been adopted by numerous open-source projects and accessibility tools. It trades off some quality for speed and local execution, positioning itself as a practical alternative to cloud-based TTS for developers who need on-device speech synthesis without external API calls or licensing overhead.
Use it for
- Add speech output to Home Assistant automations and voice assistants without cloud dependencies
- Enable text-to-speech in accessibility tools like screen readers (NVDA) for visually impaired users
- Synthesize narration for video processing or content generation pipelines running locally
- Embed speech synthesis in IoT or embedded systems (Jetson, edge devices) with low latency
- Build multilingual chatbots or voice interfaces that operate entirely offline
Worth the install?
AI-flagged interpretation of the facts on this page. Verify before relying on it.
Yes, if you need local, offline text-to-speech without cloud APIs.
The package is actively maintained, widely adopted in production (Home Assistant, NVDA), has no known vulnerabilities, and supports modern Python versions. The GPL-3.0 copyleft license is a consideration for commercial use. Medium install friction is manageable given the availability of pre-built wheels across platforms.
Install
piper-tts on PyPI
Before you install
Medium install friction due to compiled wheels for multiple platforms (macOS x86/ARM, Linux x86/ARM, Windows). Active maintenance with recent release (1 day old) and strong community adoption (5130 stars). Requires Python 3.9+.
Requires onnxruntime and pathvalidate as runtime dependencies; espeak-ng is embedded for phonemization.
License in practice
GPL-3.0-or-later (copyleft): any derivative work or distribution must also be open-source under GPL-compatible terms. Suitable for open-source projects and internal use, but requires careful review before commercial deployment.
Quickstart
pip install piper-tts
from piper.voice import PiperVoice
voice = PiperVoice.load('en_US-lessac-medium')
voice.synthesize('Hello world', 'output.wav')
Verify before relying
- Whether pre-trained voice models are included or must be downloaded separately
- Typical latency and throughput characteristics for real-time speech synthesis
- Memory footprint and GPU acceleration support via onnxruntime
Package facts
| License | GPL-3.0-or-later copyleft |
| Python support | Supports the current Python release >=3.9 |
| Install friction | Medium. Platform-specific wheel |
| Runtime dependencies | 2 packagesonnxruntimepathvalidate |
| Maintenance | Actively maintained 1 days since the last release |
| Last repo commit | |
| First released | |
| Downloads | 891,323 / month, #4,801 on PyPI 30-day window, as of 2026-08-14 |
| Known vulnerabilities | None known OSV.dev, checked 2026-08-14 |
| Classifiers | Development Status :: 3 - AlphaIntended Audience :: DevelopersProgramming Language :: Python :: 3.10Programming Language :: Python :: 3.11Programming Language :: Python :: 3.12Programming Language :: Python :: 3.13Programming Language :: Python :: 3.9Topic :: Multimedia :: Sound/Audio :: Speech |
Evidence: piper_tts-1.6.1-cp39-abi3-macosx_10_9_x86_64.whl; piper_tts-1.6.1-cp39-abi3-macosx_11_0_arm64.whl; piper_tts-1.6.1-cp39-abi3-manylinux_2_17_aarch64.manylinux2014_aarch64.manylinux_2_28_aarch64.whl; piper_tts-1.6.1-cp39-abi3-manylinux_2_17_x86_64.manylinux2014_x86_64.manylinux_2_28_x86_64.whl; piper_tts-1.6.1-cp39-abi3-win_amd64.whl
Tags
Let your AI agent find packages like this
Example. Real query, live index.
You found this page by searching. An agent finds it by wishing: SkillFed indexes 14,416 PyPI packages by what they can do, searchable in plain language.
wish › “neural tts engine”
- piper-ttsPiper TTS is a local neural text-to-speech engine that converts text…
- kokoro-onnxConverts text to speech using ONNX Runtime, supporting multiple…
- chatterbox-ttsChatterbox TTS converts text to speech using open-source neural…
Give your agent the search over MCP, or paste the wish link into any chat.
More Speech packages
Performs speech recognition and transcription using multiple online and offline engines, including Google, OpenAI Whisper, CMU Sphinx, and others.
The main gotcha is that most engines require optional dependencies or API credentials.
gTTS converts text to speech using Google Translate's API, writing MP3 audio to files, file-like objects, or stdout via Python library or command-line tool.
However, be aware that it depends on Google Translate's undocumented API—upstream changes can break it without notice, and it is not a substitute for official Google…
Lhotse prepares multimodal (speech, audio, video, image, text) data for machine learning model training with flexible pipelines, on-the-fly augmentation, and efficient data loading.
Install it if you are building speech, audio, or multimodal training pipelines; skip it if you only need simple audio I/O without data augmentation or complex dataset…
FunASR is a speech recognition toolkit that transcribes audio offline or via streaming, with integrated voice activity detection, speaker identification, punctuation restoration, and emotion/audio-event tagging across multiple languages and deployment targets.
Install it if you need speaker diarization, emotion detection, streaming support, or self-hosted deployment.
PocketSphinx provides Python bindings for Carnegie Mellon University's open-source speech recognition engine, enabling continuous speech-to-text and keyword spotting from live microphone input or audio files.
Python bindings for ai-coustics audio enhancement, voice activity detection, and analysis SDK, supporting real-time audio processing with numpy arrays.
See also kokoro-onnx · pyttsx3 · pocket-tts · TTS · espeakng-loader · pyopenjtalk · coqui-tts · silero · kokoro