Skip to main content

Advanced on-device Vietnamese TTS with instant voice cloning

Project description

🦜 VieNeu-TTS

VieNeu-TTS is an advanced on-device Vietnamese Text-to-Speech (TTS) model with instant voice cloning and English-Vietnamese bilingual support.

Hugging Face v2 Turbo License

✨ Key Features

  • Bilingual (English-Vietnamese): Seamless transitions between languages (Code-switching) in version 2.0+.
  • Instant Voice Cloning: Clone any voice with just 3-5s of reference audio (Turbo v2 & GPU modes).
  • Ultra-Fast Turbo Mode: Optimized for CPU (GGUF) and GPU (LMDeploy). Extremely fast inference!
  • Production Ready: High-fidelity 24 kHz audio generation, fully offline.
  • AI Identification: Built-in audio watermarking for responsible AI use.

📦 Quick Install

# Minimal installation (Turbo/CPU Only)
pip install vieneu

# Optional: Pre-built llama-cpp-python for CPU (if building fails)
pip install vieneu --extra-index-url https://pnnbao97.github.io/llama-cpp-python-v0.3.16/cpu/

🚀 Quick Start (Python SDK)

The SDK now defaults to Turbo mode for maximum out-of-the-box compatibility.

from vieneu import Vieneu

# Initialize - Minimal dependencies required!
tts = Vieneu()

# 1. Simple synthesis (uses default 'Xuân Vĩnh')
text = "Hệ thống điện chủ sử dụng alternating current because it is more efficient."
audio = tts.infer(text=text)
tts.save(audio, "output.wav")

# 2. Using a specific Preset Voice
voices = tts.list_preset_voices()
# Select 'Bắc (Nam miền Bắc)' ID
my_voice_id = voices[1][1] if len(voices) > 1 else voices[0][1]
voice_data = tts.get_preset_voice(my_voice_id)

audio_custom = tts.infer(text="Tôi đang nói bằng giọng của anh Bình.", voice=voice_data)
tts.save(audio_custom, "output_custom.wav")

🦜 Zero-shot Voice Cloning (SDK)

from vieneu import Vieneu
tts = Vieneu()

# 1. Encode reference audio (3-5s wav/mp3)
my_voice = tts.encode_reference("path/to/voice.wav")

# 2. Synthesize with cloned voice (No ref text needed for v2!)
audio = tts.infer(text="Chào bạn, đây là giọng của tôi.", voice=my_voice)
tts.save(audio, "cloned.wav")

🔬 Model Overview

Model Format Device Bilingual Cloning Speed
VieNeu-v2-Turbo GGUF/ONNX CPU/GPU ✅ Yes Extreme
VieNeu-TTS-v2 PyTorch GPU ✅ Yes Standard
VieNeu-TTS 0.3B PyTorch GPU/CPU ✅ Yes Very Fast
VieNeu-TTS PyTorch GPU/CPU ✅ Yes Standard

🤝 Support & Links

Made with ❤️ for the Vietnamese TTS community

Project details


Download files

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

Source Distribution

vieneu-2.5.0.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-2.5.0-py3-none-any.whl (1.0 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vieneu-2.5.0.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-2.5.0.tar.gz
Algorithm Hash digest
SHA256 c54f9ffe36b664c917b442f4effcfb5fcd7299648feebab96c277f6119b61d4f
MD5 a3ecad720d95daf88730d01574aa47ad
BLAKE2b-256 27056be2ce2fc0ad7af113edc490298613962eb197b88832075ba02dd8fca3b6

See more details on using hashes here.

File details

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

File metadata

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

File hashes

Hashes for vieneu-2.5.0-py3-none-any.whl
Algorithm Hash digest
SHA256 d6f5112fa7551eca05426e74b56403bd14b54dc631f2b2937dad7bf79dd59684
MD5 2ec4f0936c76820c95c1691fe1070085
BLAKE2b-256 d732faffeb63b30e8587d93f9720af4cfd74b125c9f81c174285d951e823258b

See more details on using hashes here.

Supported by

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