voice-server/README.md
Cal Corum a34aec06f1 Initial commit: Voice server with Piper TTS
A local HTTP service that accepts text via POST and speaks it through
system speakers using Piper TTS neural voice synthesis.

Features:
- POST /notify - Queue text for TTS playback
- GET /health - Health check with TTS/audio/queue status
- GET /voices - List installed voice models
- Async queue processing (no overlapping audio)
- Non-blocking audio via sounddevice
- 73 tests covering API contract

Tech stack:
- FastAPI + Uvicorn
- Piper TTS (neural voices, offline)
- sounddevice (PortAudio)
- Pydantic for validation

🤖 Generated with [Claude Code](https://claude.com/claude-code)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
2025-12-19 00:18:12 -06:00

841 B

Voice Server

Local HTTP service for text-to-speech playback using Piper TTS.

Features

  • HTTP POST endpoint for text-to-speech requests
  • High-quality neural TTS using Piper
  • Non-blocking audio playback with sounddevice
  • Async request queue for concurrent handling
  • Automatic OpenAPI documentation

Quick Start

# Install dependencies
uv pip install -e ".[dev]"

# Run server
uvicorn app.main:app --reload

# Test endpoint
curl -X POST http://localhost:8000/notify \
  -H "Content-Type: application/json" \
  -d '{"message": "Hello, world!"}'

API Endpoints

  • POST /notify - Submit text for TTS playback
  • GET /health - Health check endpoint
  • GET /voices - List available voice models
  • GET /docs - OpenAPI documentation

Configuration

See .env.example for configuration options.

License

MIT