Beautiful TUI for text-to-speech. Gemini, OpenAI, or local. One command.
Project description
outloud
Beautiful TUI for text-to-speech. Gemini, OpenAI, or local. One command.
Features
- Multi-provider — Google Gemini, OpenAI, or KittenTTS (local, free, no API key)
- Beautiful TUI — full terminal UI with voice picker, style presets, progress bar
- Cost calculator — see estimated cost before generating
- 30+ voices — across all providers
- Style control — warm, whisper, energetic, audiobook, newsreader, and more
- Smart defaults — auto-detects available providers, zero config needed
- Direct CLI mode — pipe text, pass files, or use inline for scripting
- History — click to replay any past generation
Install
# Cloud providers (Gemini + OpenAI) — lightweight
pipx install outloud-tts
# Include local TTS (KittenTTS) — free, no API key needed
pipx install outloud-tts[local]
Requires ffmpeg:
brew install ffmpeg # macOS
sudo apt install ffmpeg # Linux
Quick Start
# Launch the TUI
outloud
# Direct generation
outloud --direct "Hello world"
outloud --direct ~/Documents/article.md
pbpaste | outloud --direct
# Pick a provider
outloud --direct -p OpenAI "Hello from OpenAI"
outloud --direct -p Local "Free and local"
# List voices and providers
outloud --voices
outloud --providers
Providers
| Provider | Voices | Style Control | Cost | API Key |
|---|---|---|---|---|
| Gemini | 30 | Yes | ~$0.01-0.04/1K chars | GEMINI_API_KEY |
| OpenAI | 13 | Yes (gpt-4o-mini-tts) | ~$0.015/1K chars | OPENAI_API_KEY |
| Local | 8 | No | Free | None |
Setup
Set one or more API keys:
export GEMINI_API_KEY="your-key"
export OPENAI_API_KEY="your-key"
Or skip API keys entirely — install with [local] for free offline TTS.
Keyboard Shortcuts
| Key | Action |
|---|---|
Ctrl+G |
Generate |
Ctrl+P |
Play last |
Ctrl+O |
Open output folder |
Ctrl+L |
Clear text |
Ctrl+Q |
Quit |
Support
If outloud saved you time, consider:
- Star this repo — it helps others find it
- Buy me a coffee — building from Lebanon on 29 Mbps
License
MIT
Project details
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
outloud_tts-0.4.1.tar.gz
(22.6 kB
view details)
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file outloud_tts-0.4.1.tar.gz.
File metadata
- Download URL: outloud_tts-0.4.1.tar.gz
- Upload date:
- Size: 22.6 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
ed875cb4f1c9336a92c461fdc70225d631c9dfe6ae2991e44fd0d93fe2e50fe2
|
|
| MD5 |
06a1dbab96e0c3a0d7d2095da4394345
|
|
| BLAKE2b-256 |
9abd7b39ff7a8592ccb3e676ec7b3beb3bd9f5090ca207ca9dfa41ab8a9fbcb9
|
File details
Details for the file outloud_tts-0.4.1-py3-none-any.whl.
File metadata
- Download URL: outloud_tts-0.4.1-py3-none-any.whl
- Upload date:
- Size: 27.8 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? No
- Uploaded via: twine/6.2.0 CPython/3.14.3
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
3689ee7026639d91181b67aab22db9fd129c5d4f5397878507ceefd6ebeaebda
|
|
| MD5 |
22afadd775953635f9c2c32d0d429284
|
|
| BLAKE2b-256 |
9a8774cadfe87053dffa6a3cf95da66f6b7d680d3200d7a21e9ca2c20ce05cc4
|