loudr-1
Natural-sounding text-to-speech with 28 voices, ten languages and voice cloning.
loudr-1 runs on your own hardware through loudkit. Download it once and work offline from Python, Swift, Go, Rust or TypeScript with PyTorch, ONNX Runtime or CoreML.
These are the weights behind LoudReader, a reading app that speaks articles, PDFs and books on device. They are published here so the engine can be used and checked on its own.
Try it in the browser | Hear all 28 voices | Open in Colab | GitHub | Documentation
Listen
Joe
Kathleen
Both voices read the same passage from Alice's Adventures in Wonderland. Open the gallery to compare every shipped voice with the enrollment reference used to create its profile.
English is the only language we could evaluate ourselves by ear. We do not speak the other nine languages well enough to judge their naturalness reliably. If you do, please listen and share what sounds good or wrong. Feedback from native speakers is very welcome.
Start in Python
pip install "loudkit[torch,audio,hub]"
import loudkit as lk
engine = lk.load("loudreader/loudr-1")
voice = engine.voice("joe")
engine.synthesize("Hello from loudkit.", voice, seed=7).save("hello.wav")
The first run downloads the 747 MB synthesis checkpoint and the voices. Later runs use the local cache. The same path from a shell is:
loudkit speak --checkpoint loudreader/loudr-1 --voice joe \
"Hello from loudkit." -o hello.wav
To enroll a voice that you own or have permission to use:
mine = lk.enroll("my-recording.wav", "loudreader/loudr-1", name="my-voice")
mine.save("voices/my-voice.safetensors")
The reusable profile is about 150 KB. Install
loudkit[torch,audio,enroll,hub] for enrollment.
The Swift, Go, Rust and TypeScript packages load the same repo id and fetch what they need themselves; the README shows each one.
What each runtime downloads
The repository contains every supported format. A download takes one runtime
and leaves the rest behind. Add --with-cloning when the installation also
needs enrollment.
| path | command |
|---|---|
| Python, synthesis | loudkit download loudreader/loudr-1 --for torch |
| Python, with cloning | --for torch --with-cloning |
| TypeScript, Go or Rust with ONNX Runtime | --for onnx |
| ONNX Runtime, with cloning | --for onnx --with-cloning |
| Swift or Python with CoreML | --for coreml |
| CoreML, with cloning | --for coreml --with-cloning |
Download size depends on the model, backend and release revision. The synthesis checkpoint is 747 MB; graph downloads also include backend-specific weights.
Speed depends on the hardware and the backend. Benchmarks has the measured figures, the machines and the commands.
What ships
| artefact | size | used by |
|---|---|---|
loudr-1.safetensors |
747 MB | synthesis |
loudr-1-enrollment.safetensors |
523 MB | PyTorch enrollment |
ve.safetensors |
5.7 MB | PyTorch enrollment |
onnx/ |
varies by model | synthesis and enrollment graphs |
coreml/ |
varies by model | native generation, rendering and enrollment packages |
voices/ |
4.3 MB | 28 voice profiles |
samples/ |
108 KB | the two players above |
tokenizer.json |
70 KB | text processing |
Synthesis and enrollment are separate so users who only need speech generation
do not download the enrollment weights. ONNX and CoreML use their own enrollment
graphs. Every download is checked against the release's SHA256SUMS before
it is used.
Voices and consent
The release includes ten English profiles and two for each of Spanish, French, German, Italian, Polish, Portuguese, Dutch, Swedish and Danish.
The profiles were built from recordings donated for speech technology or from CC0 and CC-BY speech corpora. No scraped celebrity voices ship with the model. The full roster records the source, licence and consent basis for every profile. The voice gallery provides a generated sample and enrollment preview for all 28.
The source enrollment WAVs are not redistributed in the model repository. Their hashes, construction notes and the hashes of every shipped profile and sample are recorded in the roster record.
Model lineage
loudr-1 is derived from Chatterbox, released by Resemble AI under the MIT licence. We optimized it for faster local inference by profiling the full synthesis path, changing the signal flow, separating synthesis from enrollment, and adjusting graph boundaries and device placement for PyTorch, ONNX Runtime and CoreML.
Release gates compare the implementations, check output length and early end of speech, and run ASR-based checks per measured language. These checks catch mechanical regressions. They do not replace listening by native speakers.
Reproducibility
For a fixed build, device and backend, the same text, voice and seed produce the same waveform. Across devices or backends, loudkit checks the token stream and keeps waveform differences inside measured correlation bands. Floating-point execution means that waveforms are not promised to be byte-identical across different runtimes.
The exact contract and current measurements are in the identity contract and measured parity report.
Before you ship
- Long passages are rendered in windows of about ten seconds. Sentence joins can occasionally be audible.
- Difficult punctuation, numbers and abbreviations can change pronunciation or prosody.
- Voice cloning requires consent. A recording being public does not grant permission to clone the speaker.
- Saved WAVs and server responses carry unsigned C2PA Content Credentials by default, recording the model, voice, seed, backend and a hash of the audio in a machine-readable form.
Read Responsible use before exposing enrollment to other people.
Intended use
loudr-1 is intended for local narration, accessibility, localisation, games, prototyping and speech research. It is not a voice-authentication system and must not be used for deceptive impersonation.
Training data
The original Chatterbox training data is controlled by Resemble AI and is not documented by this project. The shipped voice profiles use recordings made or released for speech-technology use; their sources and licences are listed in the public roster.
Licence
Apache-2.0. Upstream attributions and component licences are listed in NOTICE.
Download sizes for 0.1.1
Approximate decimal sizes for the release files; backend weights are included. Cloning adds enrollment assets only when requested. Both models ship separate synthesis and enrollment checkpoints.
| Model | Torch | Torch + cloning | ONNX | ONNX + cloning | CoreML | CoreML + cloning |
|---|---|---|---|---|---|---|
| loudr-1 | 0.75 GB | 1.28 GB | 2.60 GB | 3.13 GB | 2.46 GB | 2.99 GB |
| loudr-1-turbo | 0.72 GB | 1.25 GB | 2.44 GB | 2.97 GB | 2.44 GB | 2.97 GB |
- Downloads last month
- 57