SupertonicTTS
This page explains how to use sherpa-onnx with SupertonicTTS.
SupertonicTTS is an offline multi-speaker, multi-language TTS model. In a
typical setup, you select a speaker with --sid and a language with
--lang.
Download a pre-trained model
Download the released SupertonicTTS archive from https://github.com/k2-fsa/sherpa-onnx/releases/tag/tts-models:
wget https://github.com/k2-fsa/sherpa-onnx/releases/download/tts-models/sherpa-onnx-supertonic-tts-int8-2026-03-06.tar.bz2
tar xf sherpa-onnx-supertonic-tts-int8-2026-03-06.tar.bz2
rm sherpa-onnx-supertonic-tts-int8-2026-03-06.tar.bz2
Run a command-line example
The following command uses the same model files as rust-api-examples/examples/supertonic_tts.rs:
./build/bin/sherpa-onnx-offline-tts \
--supertonic-duration-predictor=./sherpa-onnx-supertonic-tts-int8-2026-03-06/duration_predictor.int8.onnx \
--supertonic-text-encoder=./sherpa-onnx-supertonic-tts-int8-2026-03-06/text_encoder.int8.onnx \
--supertonic-vector-estimator=./sherpa-onnx-supertonic-tts-int8-2026-03-06/vector_estimator.int8.onnx \
--supertonic-vocoder=./sherpa-onnx-supertonic-tts-int8-2026-03-06/vocoder.int8.onnx \
--supertonic-tts-json=./sherpa-onnx-supertonic-tts-int8-2026-03-06/tts.json \
--supertonic-unicode-indexer=./sherpa-onnx-supertonic-tts-int8-2026-03-06/unicode_indexer.bin \
--supertonic-voice-style=./sherpa-onnx-supertonic-tts-int8-2026-03-06/voice.bin \
--sid=0 \
--lang=en \
--output-filename=./supertonic.wav \
"Today as always, men fall into two groups: slaves and free men."
You can also use this tracked helper script:
API examples
Additional example code is available here:
Rust
C++ and C
Python
Go
Java and Kotlin
Dart and Swift
.NET
JavaScript
Pascal
Notes
Use
--sidto choose a speaker.Use
--langto select the synthesis language.The model files include
tts.jsonandunicode_indexer.binin addition to ONNX files.