Basic desktop application for Piper TTS, built with amateur Avalonia experience.
- Windows/Linux support
- Dark/light themes
- Language/Model/Quality/Speaker selection
- Sliders for inference params
- Download voices listed in VOICES.md
- Choose where to save models/outputs
- Automatically plays output once finished
Download the latest release from the Releases page
- .NET 10.0 SDK
- Avalonia UI workload
- Git
Pooper should theoretically work on MacOS as well, but I am unable to test it.
# Clone the repository
git clone https://github.com/occluder/pooper
cd pooper
# Build
dotnet builddotnet publish -c Release-AoT
# Native executable will be in App.Desktop/bin/Release-AoT/net10.0/{platform}/publishPooper stores configuration in:
- Windows:
%APPDATA%\PooperSettings.json - Linux:
~/.config/PooperSettings.json
- Place your models in the models directory
- Modify
models.jsonin piper's directory, add a new JSON object for your model, urls won't be necessary:
{
"Locale": "English(GB)",
"Name": "MyModel",
"Quality": "low",
"ModelUrl": "",
"ConfigUrl": "",
"ModelPath": "en_GB-MyModel-low.onnx",
"ConfigPath": "en_GB-MyModel-low.onnx.json"
}- Restart Pooper to detect new voices
Example voice directory structure:
voices/
├── en_US-amy-medium.onnx
├── en_US-amy-medium.onnx.json
├── en_GB-MyModel-low.onnx
└── en_GB-MyModel-low.onnx.json
This project is licensed under the MIT License - see the LICENSE file for details.
- Piper TTS - Amazing neural text-to-speech system
- Avalonia UI - Cross-platform .NET UI framework
Note: Pooper is an independent project and not officially affiliated with the Piper TTS project.

