A unified web interface combining all MOSS-TTS models into a single application with an intuitive tabbed interface.
Voice Synthesis Models
Interface
This application is packaged for Pinokio for one-click installation and management.
Available Commands:
127.0.0.1 using Pinokio’s next available port (avoiding conflicts). After startup, use Open Web UI in Pinokio or the URL printed in the terminal.env virtual environment for a clean reinstallscript.start API (for example from another launcher script) using the target script’s file name as uri and any params your flow needs. Launcher scripts live in the project root (install.js, start.js, update.js, reset.js, link.js).app/. After dependencies are installed (virtualenv at project root), from the repo root:python app/app.py --host 127.0.0.1 --port <port>cd app then python app.py .... Defaults in app/app.py are --host (platform-specific) and --port 7860 if you omit flags.curl -sS -I http://127.0.0.1:<port>/<port> with the port shown at startup (Pinokio assigns a free port when you start from the launcher).Minimum:
Recommended:
Note: CPU-only mode is supported but significantly slower.
Generate speech with optional voice cloning from reference audio (default: MOSS-TTS-v1.5).
[pause 3.2s] in text for explicit pauses on v1.5)Without reference audio: Uses default voice
With reference audio: Clones the voice characteristics
Create multi-speaker conversations with distinct voices.
[S1] Hello there!
[S2] Hi! How are you?
[S1] Great weather today.
Create custom voices from text descriptions without reference audio.
Example descriptions:
Generate environmental sounds and audio effects from descriptions.
| Model | VRAM (bf16) | VRAM (4-bit) |
|---|---|---|
| MOSS-TTS-v1.5 (8B) | ~16GB | ~6GB |
| MOSS-TTSD (8B) | ~16GB | ~6GB |
| MOSS-VoiceGenerator | ~8GB | ~3GB |
| MOSS-SoundEffect (8B) | ~16GB | ~6GB |
| MOSS-TTS-Realtime (1.7B) | ~4GB | ~2GB |
Figures are weights only; generation adds a KV cache that grows with
max_new_tokens.
Only one model stays resident in GPU memory at a time. When you switch tabs (or generate with a different model) the previous model's VRAM is freed before the new one loads, so a single 24GB card is plenty for any individual model. If you exceed VRAM, the NVIDIA driver silently spills to system RAM and generation becomes extremely slow — keeping one model resident avoids that.
| Setting | CLI flag | Env var | Default |
|---|---|---|---|
| Weight quantization | --quantization {auto,none,8bit,4bit} | MOSS_TTS_QUANTIZATION | auto (Pinokio) |
| Models kept in VRAM | --model_cache_size N | MOSS_TTS_MODEL_CACHE_SIZE | 1 |
--quantization auto (the Pinokio default) loads 4-bit weights on CUDA
cards with ≤32GB VRAM when bitsandbytes is installed, and falls back to bf16
otherwise. This keeps the 8B SFX/Dialogue models around ~6GB so they never
overflow a 24GB card.--quantization 4bit forces the same 4-bit path (needs
pip install bitsandbytes, CUDA only). Use none to force full bf16.--model_cache_size trades VRAM for speed: raise it on a large-VRAM card
to avoid reloading a model each time you revisit its tab; keep it at 1 on a
24GB card.Out of Memory / very slow generation (especially SFX & Dialogue)
auto) so the 8B models fit in ~6GB.
If generation is still slow, the most common cause on Windows is below.bitsandbytes installed (auto falls back to bf16 without it — check
the startup log for the [quantization] auto: line)max_new_tokens / target durationInstallation Issues
Model Download Failures
Poor Audio Quality
Apache 2.0 License (same as MOSS-TTS)
Python
91.7%
JavaScript
8.3%
A unified web interface combining all MOSS-TTS models into a single application with an intuitive tabbed interface.
Voice Synthesis Models
Interface
This application is packaged for Pinokio for one-click installation and management.
Available Commands:
127.0.0.1 using Pinokio’s next available port (avoiding conflicts). After startup, use Open Web UI in Pinokio or the URL printed in the terminal.env virtual environment for a clean reinstallscript.start API (for example from another launcher script) using the target script’s file name as uri and any params your flow needs. Launcher scripts live in the project root (install.js, start.js, update.js, reset.js, link.js).app/. After dependencies are installed (virtualenv at project root), from the repo root:python app/app.py --host 127.0.0.1 --port <port>cd app then python app.py .... Defaults in app/app.py are --host (platform-specific) and --port 7860 if you omit flags.curl -sS -I http://127.0.0.1:<port>/<port> with the port shown at startup (Pinokio assigns a free port when you start from the launcher).Minimum:
Recommended:
Note: CPU-only mode is supported but significantly slower.
Generate speech with optional voice cloning from reference audio (default: MOSS-TTS-v1.5).
[pause 3.2s] in text for explicit pauses on v1.5)Without reference audio: Uses default voice
With reference audio: Clones the voice characteristics
Create multi-speaker conversations with distinct voices.
[S1] Hello there!
[S2] Hi! How are you?
[S1] Great weather today.
Create custom voices from text descriptions without reference audio.
Example descriptions:
Generate environmental sounds and audio effects from descriptions.
| Model | VRAM (bf16) | VRAM (4-bit) |
|---|---|---|
| MOSS-TTS-v1.5 (8B) | ~16GB | ~6GB |
| MOSS-TTSD (8B) | ~16GB | ~6GB |
| MOSS-VoiceGenerator | ~8GB | ~3GB |
| MOSS-SoundEffect (8B) | ~16GB | ~6GB |
| MOSS-TTS-Realtime (1.7B) | ~4GB | ~2GB |
Figures are weights only; generation adds a KV cache that grows with
max_new_tokens.
Only one model stays resident in GPU memory at a time. When you switch tabs (or generate with a different model) the previous model's VRAM is freed before the new one loads, so a single 24GB card is plenty for any individual model. If you exceed VRAM, the NVIDIA driver silently spills to system RAM and generation becomes extremely slow — keeping one model resident avoids that.
| Setting | CLI flag | Env var | Default |
|---|---|---|---|
| Weight quantization | --quantization {auto,none,8bit,4bit} | MOSS_TTS_QUANTIZATION | auto (Pinokio) |
| Models kept in VRAM | --model_cache_size N | MOSS_TTS_MODEL_CACHE_SIZE | 1 |
--quantization auto (the Pinokio default) loads 4-bit weights on CUDA
cards with ≤32GB VRAM when bitsandbytes is installed, and falls back to bf16
otherwise. This keeps the 8B SFX/Dialogue models around ~6GB so they never
overflow a 24GB card.--quantization 4bit forces the same 4-bit path (needs
pip install bitsandbytes, CUDA only). Use none to force full bf16.--model_cache_size trades VRAM for speed: raise it on a large-VRAM card
to avoid reloading a model each time you revisit its tab; keep it at 1 on a
24GB card.Out of Memory / very slow generation (especially SFX & Dialogue)
auto) so the 8B models fit in ~6GB.
If generation is still slow, the most common cause on Windows is below.bitsandbytes installed (auto falls back to bf16 without it — check
the startup log for the [quantization] auto: line)max_new_tokens / target durationInstallation Issues
Model Download Failures
Poor Audio Quality
Apache 2.0 License (same as MOSS-TTS)
Python
91.7%
JavaScript
8.3%