Skip to main content

🦜 VieNeu-TTS

VieNeu-TTS is an advanced on-device Vietnamese Text-to-Speech (TTS) with instant voice cloning and English–Vietnamese bilingual support. The SDK defaults to VieNeu-TTS v3 Turbo (48 kHz) and the minimal install is torch-free — on CPU it runs entirely on ONNX Runtime.

Hugging Face v3 Turbo License

✨ Key Features

  • v3 Turbo, 48 kHz — high-fidelity, natural Vietnamese speech (default).
  • Torch-free on CPU — minimal install runs on ONNX Runtime; PyTorch is never imported.
  • Built-in default voices — call them by name, no reference clip needed.
  • Instant voice cloning — clone any voice from 3–5s of audio.
  • Emotion cues (experimental) — drop [cười], [thở dài], [hắng giọng] into the text.
  • Bilingual (En–Vi) code-switching, fully offline.

📦 Install

# Minimal, TORCH-FREE — runs v3 Turbo on CPU via ONNX Runtime
pip install vieneu

# Optional: GPU + older backends (v1/v2 PyTorch & GGUF, v3 Turbo on GPU)
pip install "vieneu[gpu]"

⚡ NVIDIA GPU acceleration for v3 Turbo (ONNX, torch-free)

To run the default v3 Turbo engine on an NVIDIA GPU without PyTorch, swap the CPU ONNX Runtime for the GPU build. The two share the onnxruntime namespace and conflict, so remove the CPU one first:

pip install vieneu
pip uninstall -y onnxruntime
pip install "onnxruntime-gpu>=1.20.0"

The engine auto-detects the GPU at runtime (falls back to CPU if absent) — no code change needed. Requires a compatible NVIDIA driver.


🚀 Quick Start (Python SDK)

from vieneu import Vieneu

# Default = v3 Turbo. CPU → ONNX (torch-free); GPU → PyTorch (auto-detected).
tts = Vieneu()

# 1. Default voice (Ngọc Lan) — 48 kHz, no reference needed
audio = tts.infer("Xin chào, đây là VieNeu-TTS phiên bản ba Turbo.")
tts.save(audio, "output.wav")

# 2. Built-in voices by name
for label, voice_id in tts.list_preset_voices():
    print(label, voice_id)
audio = tts.infer("Mình là Xuân Vĩnh nè!", voice="Xuân Vĩnh")

# 3. Emotion / non-verbal cues — EXPERIMENTAL: [cười] [thở dài] [hắng giọng]
audio = tts.infer("Nghe hay quá đi [cười]. Để mình nói tiếp [hắng giọng].", voice="Ngọc Linh")

🦜 Zero-shot Voice Cloning

from vieneu import Vieneu
tts = Vieneu()

# Clone straight from a 3–5s clip — no reference transcript needed.
audio = tts.infer(text="Chào bạn, đây là giọng của tôi.", ref_audio="path/to/voice.wav")
tts.save(audio, "cloned.wav")

Older models (v1 / v2 — requires pip install "vieneu[gpu]")

tts = Vieneu(mode="standard")   # v2 GGUF, bilingual, podcast
tts = Vieneu(mode="turbo")      # v2 Turbo, fastest

🔬 Model Overview

Model Engine Device Sample Rate Features
VieNeu-TTS v3 Turbo (default) ONNX (CPU) / PyTorch (GPU) CPU/GPU 48 kHz Default voices, cloning, emotion cues
VieNeu-TTS v2 PyTorch / GGUF GPU/CPU 24 kHz Bilingual, podcast ([gpu])
VieNeu-TTS v1 PyTorch GPU/CPU 24 kHz Stable, Vietnamese ([gpu])

🤝 Support & Links

Made with ❤️ for the Vietnamese TTS community

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

vieneu-3.0.10.tar.gz (1.1 MB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

vieneu-3.0.10-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

Details for the file vieneu-3.0.10.tar.gz.

File metadata

  • Download URL: vieneu-3.0.10.tar.gz
  • Upload date:
  • Size: 1.1 MB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for vieneu-3.0.10.tar.gz
Algorithm Hash digest
SHA256 012c149d2b96fcd5e708636f2081dcd9691c782961395b975ecff14b725fbee7
MD5 bfc46c44229d5bd10b0801a30f14ca4d
BLAKE2b-256 7b868fabe9c1ab917dfddb0970a9507e492156488513505fed4a072e35080cab

See more details on using hashes here.

File details

Details for the file vieneu-3.0.10-py3-none-any.whl.

File metadata

  • Download URL: vieneu-3.0.10-py3-none-any.whl
  • Upload date:
  • Size: 1.1 MB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for vieneu-3.0.10-py3-none-any.whl
Algorithm Hash digest
SHA256 fbaa448f9179749058bc3232f9eb528c9396b4d65a6152b2c36a3bdc27ea6536
MD5 7c8cf599ab03d5f79c4d65f89d6bca46
BLAKE2b-256 58c4b1e45b630a10624a734047f959a41719f4f64bdd42b6d8df40a8c49ff548

See more details on using hashes here.

Release history Release notifications | RSS feed

3.3.0

2 files

3.2.12

2 files

3.2.11

2 files

3.2.10

2 files

3.2.9

2 files

3.2.8

2 files

3.2.7

2 files

3.2.6

2 files

3.2.5

2 files

3.2.4

2 files

3.2.3

2 files

3.2.2

2 files

3.2.1

2 files

3.2.0

2 files

3.1.4

2 files

3.1.3

2 files

3.1.2

2 files

3.1.1

2 files

3.1.0

2 files

3.0.13

2 files

3.0.12

2 files

3.0.11

2 files

This release

3.0.10 This release

2 files

3.0.9

2 files

3.0.7

2 files

3.0.6

2 files

3.0.5

2 files

3.0.4

2 files

3.0.3

2 files

3.0.2

2 files

3.0.1

2 files

3.0.0

2 files

2.7.0

2 files

2.6.1

2 files

2.6.0

2 files

2.5.0

2 files

2.4.3

2 files

2.4.2

2 files

2.4.1

2 files

2.4.0

2 files

2.3.0

2 files

2.2.0

2 files

2.1.3

2 files

2.1.2

2 files

2.1.1

2 files

2.1.0

2 files

2.0.2

2 files

2.0.1

2 files

2.0.0

2 files

1.3.0

2 files

1.2.9

2 files

1.2.8

2 files

1.2.7

2 files

1.2.6

2 files

1.2.5

2 files

1.2.4

2 files

1.2.3

2 files

1.2.2

2 files

1.2.1

2 files

1.2.0

2 files

1.1.9

2 files

1.1.8

2 files

1.1.7

2 files

1.1.6

2 files

1.1.5

2 files

1.1.4

2 files

1.1.3

2 files

1.1.2

2 files

1.1.1

2 files

1.1.0

2 files

1.0.7

2 files

1.0.6

2 files

1.0.4

2 files

1.0.3

2 files

1.0.2

2 files

1.0.1

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page