Overview
PiperTTSService provides high-quality neural text-to-speech synthesis through a self-hosted HTTP server. The service offers complete privacy and control with no external API dependencies, making it ideal for on-premise deployments and applications requiring data sovereignty.
Piper TTS API Reference
Pipecat’s API methods for Piper TTS integration
Example Implementation
Browse examples using Piper TTS
Piper Documentation
Official Piper TTS documentation and setup
HTTP Server Setup
Configure Piper HTTP server for Pipecat
Installation
To use Piper services, no additional Pipecat dependencies are required:Prerequisites
Piper Server Setup
Before using PiperTTSService, you need:- Piper TTS Server: Set up a running Piper TTS server following the HTTP server documentation
- Voice Models: Download and configure voice models for your target languages
- Server Configuration: Configure server endpoint and voice selection
Required Configuration
- Server URL: Configure the Piper server endpoint in your service initialization
- Voice Models: Ensure required voice models are available on the server
Configuration
Piper offers two service implementations:PiperTTSService for local inference and PiperHttpTTSService for HTTP server-based synthesis.
PiperTTSService
Runs Piper locally, automatically downloading voice models as needed.Piper voice model identifier (e.g.
en_US-ryan-high).Directory for storing voice model files. Defaults to the current working directory.
Re-download the voice model even if it already exists locally.
Use CUDA for GPU-accelerated inference.
PiperHttpTTSService
Connects to a running Piper HTTP TTS server.Base URL for the Piper TTS HTTP server.
An aiohttp session for HTTP requests.
Piper voice model identifier (e.g.
en_US-ryan-high).Usage
Local Inference
HTTP Server
Start the Piper HTTP server first:Notes
- Local execution:
PiperTTSServiceruns entirely locally with no network requests. Voice models are automatically downloaded on first use. - GPU acceleration: Set
use_cuda=Truefor GPU-accelerated inference withPiperTTSService(requires CUDA-compatible hardware). - Audio resampling: Audio output is automatically resampled to match the pipeline’s configured sample rate.
- No API key required: Piper is open-source and runs locally, so no API credentials are needed.