How to convert text to speech offline on your computer
Offline text to speech means the speech is generated by a program on your own computer, not by a web service. Your text never leaves the machine, nobody counts characters, and once everything is installed it keeps working without internet.
This guide walks through the whole path with Supertonic 3, an open TTS model that runs on an ordinary CPU, and voices from the SuperClonica catalog: choosing a voice, installing the engine on Windows, macOS or Linux, making your first audio file and handling long texts.
What you need for offline TTS
A computer with Windows, macOS or Linux is enough. Supertonic 3 runs on the processor and, according to its authors, needs no graphics card. An NVIDIA GPU makes synthesis faster, but it is optional.
- Git and Python 3.11 for the standard Supertonic 3 client. The SuperClonica engine needs Python 3.10 or newer.
- About 400 MB of disk space for the base model, which you download once.
- A voice: one JSON file that stores the voice profile.
- An internet connection for installation only. After that, speech is generated offline.
Step 1: choose a voice
Supertonic 3 comes with a few preset voices. For a particular sound, such as a calm narrator, a game character or a conversational voice, browse the catalog: every voice there has demos and a description by its author, and some are free.
Check the language before you choose. Supertonic 3 speaks 31 languages, including English, Spanish, Portuguese, French, German, Russian, Japanese, Korean, Arabic and Hindi. Chinese is not supported yet.
After purchase, open My library and download the voice as a JSON file. Voice files made for Supertonic 3 elsewhere work the same way.
Step 2: install Supertonic 3 on Windows, macOS or Linux
The standard Supertonic 3 client works today. Open a terminal (PowerShell on Windows) and run the commands from our How it works page in order. They clone the supertonic repository from GitHub, create a Python 3.11 virtual environment in it (py -3.11 -m venv .venv on Windows, python3.11 -m venv .venv on macOS and Linux), install huggingface_hub, download the supertone-oss-archive/supertonic-3 model into the assets folder with the hf tool, install the packages from py/requirements.txt and switch to the py folder.
The page shows the exact commands for Windows and for macOS and Linux, with a copy button. The model download is the only long step, and it happens once.
Step 3: convert text to speech
Save the downloaded voice as voice.json in the supertonic/py folder. Then run example_onnx.py from the virtual environment with the voice, the text and the language code: --voice-style "./voice.json" --text "Your text here" --lang en --n-test 1. The script writes a WAV file to the results folder.
For another language, change the text and the code, for example --lang de or --lang ja. The script also has a --speed option: the default is 1.05, and a higher value makes the voice speak faster.
From here on, no network is needed. You can disconnect and keep converting text to speech for as long as you like.
A faster engine: SuperClonica
SuperClonica is our engine built on Supertonic 3. It reads the same voice JSON files without conversion and is on average 61% faster on a CPU (measured on a Ryzen 7 5800X) and 73% faster on a graphics card (RTX 5070 Ti) with the same settings. Pauses come without hiss, and phrase endings are tidier.
The packages are on PyPI, so installation is one command: python -m pip install superclonica-cpu, or superclonica-gpu-cuda for an NVIDIA GPU, with CUDA and cuDNN installed by pip. A sentence is then one line: superclonica --text "Hello!" --voice voice.json --lang en --output hello.wav. The base model downloads on the first run. From Python you call Superclonica().synthesize() with the same arguments; the install page has the full example.
Tips for long texts
Books, articles and long scripts go more smoothly with a little preparation.
- Split the text into chapters or sections and voice each one into its own file. A line that went wrong is then quick to redo.
- With the standard client, keep each run to a paragraph or a few sentences and join the files in an audio editor. The SuperClonica engine voices long texts in short parts by itself, so words are repeated or cut off less often.
- Write numbers, dates, units and abbreviations the way they should be read aloud.
- Break very long sentences into shorter ones: punctuation is what gives the voice its pauses.
- Plan the time. By our estimate SuperClonica produces an hour of audio in about 7–11 minutes on a desktop 8-core CPU.