Views
No views yet

📢 Upcoming ReleaseVieNeu-TTS-1000h is currently in training, using ~1000 hours of high-quality Vietnamese speech combined with English speech data.
This next version will support bilingual voice synthesis (Vietnamese + English) with consistent speaker identity.Expected improvements:
- More accurate and stable Vietnamese pronunciation
- Improved English pronunciation and code-switching
- Higher voice cloning fidelity and speaker consistency
A GGUF version is also planned for the earliest possible release.Current release: VieNeu-TTS-140h (stable & production-ready)
Trên bầu trời xanh thẳm, những đám mây trắng lửng lờ trôi như những chiếc thuyền nhỏ đang lướt nhẹ theo dòng gió. Dưới mặt đất, cánh đồng lúa vàng rực trải dài tới tận chân trời, những bông lúa nghiêng mình theo từng làn gió.
| Component | Description |
|---|---|
| Backbone | Qwen 0.5B (chat-format LM) |
| Codec | NeuCodec (supports ONNX + quantization) |
| Output | 24 kHz waveform synthesis |
| Context Window | 2048 tokens shared text + speech |
| Watermark | Enabled |
| Training Data | VieNeuCodec-dataset + Emilia dataset pretraining |
1from pathlib import Path
2from vieneu_tts import VieNeuTTS
3from utils.normalize_text import VietnameseTTSNormalizer
4import soundfile as sf
5
6ref_audio = "sample/id_0001.wav"
7ref_text = Path("sample/id_0001.txt").read_text(encoding="utf-8")
8
9normalizer = VietnameseTTSNormalizer()
10ref_text_norm = normalizer.normalize(ref_text)
11
12tts = VieNeuTTS(
13 backbone_repo="pnnbao-ump/VieNeu-TTS",
14 backbone_device="cuda",
15 codec_repo="neuphonic/neucodec",
16 codec_device="cuda"
17)
18
19ref_codes = tts.encode_reference(ref_audio)
20
21text = "Công nghệ giọng nói đang phát triển rất nhanh."
22text_norm = normalizer.normalize(text)
23
24wav = tts.infer(text_norm, ref_codes, ref_text_norm)
25sf.write("output.wav", wav, 24000)python gradio_app.pyhttp://127.0.0.1:7860.| File | Gender | Accent |
|---|---|---|
| id_0001 | Male | South |
| id_0002 | Female | South |
| id_0003 | Male | South |
| id_0004 | Female | South |
| id_0005 | Male | South |
| id_0007 | Male | South |
| Issue | Cause | Solution |
|---|---|---|
Missing libespeak | System dependency | Install eSpeak NG |
| GPU OOM | VRAM too small | Use CPU or quantized model |
| Poor voice match | Bad reference sample | Try a clearer reference clip |
1@misc{vieneutts2025,
2 title = {VieNeu-TTS: Vietnamese Text-to-Speech with Instant Voice Cloning},
3 author = {Pham Nguyen Ngoc Bao},
4 year = {2025},
5 publisher = {Hugging Face},
6 howpublished = {\url{https://huggingface.co/pnnbao-ump/VieNeu-TTS}}
7}1@misc{neuttsair2025,
2 title = {NeuTTS Air: On-Device Speech Language Model with Instant Voice Cloning},
3 author = {Neuphonic},
4 year = {2025},
5 publisher = {Hugging Face},
6 howpublished = {\url{https://huggingface.co/neuphonic/neutts-air}}
7}