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.7.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.7.0-py3-none-any.whl (1.1 MB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: vieneu-2.7.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.7.0.tar.gz
Algorithm Hash digest
SHA256 17620c6923469ce3cfcc86c8a9d4a498950bf1117316fa4d7943fd08e8ace52a
MD5 ad74c7c86b710f1163018c6d97f385e9
BLAKE2b-256 4feff489b719384c68631fab2ddd0396873a742518ccd9b38468287b25776bdd

See more details on using hashes here.

File details

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

File metadata

  • Download URL: vieneu-2.7.0-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-2.7.0-py3-none-any.whl
Algorithm Hash digest
SHA256 150cdbd7955f4802a33a31178c642f08cec98e71bcdf9facaa04f6f9267b89e1
MD5 7b7040dedb94727ff1048881b63274df
BLAKE2b-256 f91e7957804d1aad04f5c2f3470736b53fa075e54879fdc14ceb10fbe7faf7ed

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