A dockerised self-hosted local application to provide TTS functionality
docker compose up -d
open http://localhost:8000
The main thing you might want to change is the voice. This is specified by setting the MODEL_DOWNLOAD_LINK in docker-compose.yml and requires a direct link to a .onnx file.
Get more voices from https://brycebeattie.com/files/tts/
The voice gets downloaded every time you start the piper container, and this can take a while because voices are large. This is tracked upstream. If the application doesn't immediately work then wait a bit longer for the download to complete, this will be logged by the piper container.
- piper for the text to speech
- piper-http to provide an API for piper
- caddy to serve the frontend
- docker to run all of this locally
Because using a cloud API for text to speech allows them to break your voice
Because everything else using Piper is designed to be integrated into other applications rather than run as a standalone application