Skip to main content

Quick Start

Web UI

The fastest way to try VieNeu-TTS:

uv run vieneu-web

Open http://127.0.0.1:7860 — type text, pick a voice, click generate.

Real-time Streaming

For ultra-low latency streaming (CPU optimized):

uv run vieneu-stream

Open http://localhost:8001 — audio starts playing before the sentence finishes.

Python SDK

Basic Usage

from vieneu import Vieneu

tts = Vieneu()

# Generate speech with default voice
audio = tts.infer(text="Xin chào, tôi là VieNeu.")
tts.save(audio, "output.wav")

Voice Cloning

audio = tts.infer(
text="Đây là giọng nói được clone.",
ref_audio="path/to/reference.wav",
ref_text="Transcript of the reference audio."
)
tts.save(audio, "cloned.wav")

Using Preset Voices

# List available voices
voices = tts.list_preset_voices()
for description, voice_id in voices:
print(f"{voice_id}: {description}")

# Use a specific voice
voice = tts.get_preset_voice("voice_name")
audio = tts.infer(text="Chào bạn!", voice=voice)

Streaming

for audio_chunk in tts.infer_stream(text="Một đoạn văn dài..."):
# Process each audio chunk as it's generated
play_audio(audio_chunk)

Batch Processing

texts = ["Câu một.", "Câu hai.", "Câu ba."]
audios = tts.infer_batch(texts)

for i, audio in enumerate(audios):
tts.save(audio, f"output_{i}.wav")