Skip to content

Pocket TTS

A small text-to-speech model that runs on a regular CPU, no GPU needed.

Stars
10.2k
Forks
1.1k
Licence
MIT
Language
Python
Last update
6 days ago
Type
App

What it is

Pocket TTS turns written text into spoken audio. It is built to run on an ordinary CPU rather than needing a graphics card or a paid web API. You can use it from the command line, from a local HTTP server, or from Python code, and it can clone a voice from a short audio sample.

  • Generate a wav file from text with the generate command
  • Run a local server and send text to it over HTTP
  • Clone a voice from a sample wav file using the --voice option
  • Stream audio so the first chunk arrives in roughly 200ms according to the README

Great for

  • Developers who want speech generation inside a Python project without a GPU
  • People who want to generate narration or voiceovers locally on a laptop
  • Anyone who wants to try voice cloning from their own wav or mp3 file
  • Users who prefer offline or private generation over a cloud service

Not ideal for

  • Users who need many languages beyond the listed seven, since the README says more may come later
  • Projects that need the highest possible audio quality from a large GPU model, because the README presents this as a small, CPU-focused model
  • People who want a no-install option only, though the README does link a website demo for that
Step-by-step guide: how to use Pocket TTSInstall, first run, examples, tips and FAQs

How to get it

  1. 1

    Install with a package manager

    You'll need: Python 3.10 or newer · PyTorch 2.5+ (CPU build recommended on Linux) · uv (optional, recommended by the README)

    Install with pip

    pip install pocket-tts
  2. 2

    Run it

    • Run `uvx pocket-tts generate` or `pocket-tts generate` after installing
    • Find the output file at ./tts_output.wav
    • Change the text with --text or the voice with --voice
    • Run `pocket-tts serve` and open http://localhost:8000 for the web interface
  3. 3

    Get the most out of it

    • Use the serve command when trying many voices or prompts, since the model stays loaded in memory
    • Use export-voice to convert a voice sample once, because loading the exported safetensors file is fast
    • Try the --language option to switch between English, Italian, and other supported models
    • Clean voice samples before cloning, as the README notes sample quality carries over into the output

Downloads

Strengths

  • Runs on CPU and the README says it uses only 2 CPU cores
  • Has a Python API, a CLI, and standalone binaries that need no Python
  • MIT licensed

Trade-offs

  • The README's performance figures come from the authors and a specific MacBook Air M4 setup, so results on your hardware may differ
  • Voice cloning quality depends on the input sample, and the README recommends cleaning it first
  • Supports seven languages, with more only mentioned as a future possibility

Stats synced from GitHub. The assessment above was drafted with AI from the project's README on 2026-10-29 and may miss recent changes — check the README before relying on a command. MIT licence: free to use, modify and distribute, including commercially, as long as you keep the copyright notice.