Skip to content

Since v4.05, this TTS service is built-in — no separate deployment or model download needed. The following applies only to versions before v4.05. If the initial model download fails, manually open https://huggingface.co/k2-fsa/OmniVoice/tree/main, download all files, and place them in app_dir/models/models--k2-fsa--OmniVoice/.


TTS Service: OmniVoice-TTS ​

1. What is OmniVoice ​

OmniVoice is an advanced zero-shot multilingual TTS model with the following features:

  • Ultra-multilingual support: 600+ languages
  • High-quality speech: Natural and fluent voice output
  • Voice cloning: Clone voice characteristics from reference audio
  • Fast inference: Excellent inference speed

Since pyVideoTrans v4.05, OmniVoice is built-in — no additional deployment needed.

OmniVoice open-source repository: https://github.com/k2-fsa/OmniVoice


2. Prerequisites ​

RequirementDetails
pyVideoTrans version≥ v3.98-0403
OSWindows (package), Linux/macOS (source)
HardwareNVIDIA GPU recommended (GPU acceleration)
NetworkFirst launch downloads model from huggingface.co (mirror or VPN needed in China)

Download ​

Launch ​

  1. Download the .7z file and extract it
  2. Double-click start.bat
  3. Wait for successful startup (confirmed by the following screen):

First launch will download the model from the mirror site https://hf-mirror.com by default. The official huggingface.co is not directly accessible from China — a VPN is needed.


4. macOS/Linux Source Deployment ​

Step 1: Download Source ​

  1. Go to the OmniVoice official repository
  2. Click the green <>Code button, then Download ZIP
  3. Extract and enter the folder containing pyproject.toml (usually inside OmniVoice-master)

Step 2: Install uv ​

bash
curl -LsSf https://astral.sh/uv/install.sh | sh

Windows: Download uv zip, extract and place uv.exe alongside pyproject.toml.

Step 3: Install Dependencies ​

In the folder containing pyproject.toml, open a terminal and run:

bash
uv sync

In China, use a mirror:

bash
uv sync --default-index "https://mirrors.aliyun.com/pypi/simple"

Step 4: Set Model Download Mirror ​

The model website huggingface.co cannot be accessed directly from China. Set a mirror:

Windows:

bash
set HF_ENDPOINT=https://hf-mirror.com

macOS/Linux:

bash
export HF_ENDPOINT=https://hf-mirror.com

Step 5: Launch API ​

bash
uv run omnivoice-demo --ip 0.0.0.0 --port 8081

5. Using in pyVideoTrans ​

Configuration Steps ​

  1. Open pyVideoTrans
  2. Menu → TTS Settings → OmniVoice-URL
  3. Enter: http://127.0.0.1:8081
  4. Below, enter reference audio filenames and their corresponding text

Reference Audio Format ​

audio_filename.wav#text spoken in the audio

Example: If you have nverguo.wav (clean female voice), place it in the f5-tts folder under pyVideoTrans, and enter:

nverguo.wav#enter the spoken text here

  1. Click "Test" — if OK, save and use.

6. Using on Google Colab ​

Open this URL to use OmniVoice on Colab:

  1. Click "Run All"
  2. Wait for a URL like https://xxxxxxxx.gradio.live to appear in the last cell
  3. Open it in a browser to use
  4. Copy the URL to pyVideoTrans → Menu → TTS Settings → OmniVoice-URL

7. Reference Audio Requirements ​

ItemRequirement
FormatWAV (recommended)
Duration3~10 seconds (optimal)
ContentClear pronunciation, no background noise
Locationf5-tts folder under pyVideoTrans root

Source code reference (_omnivoice.py): OmniVoice uses the /_clone_fn Gradio API endpoint, supports 60+ language code mappings, and has built-in retry mechanism (tenacity). Also supports OmniVoice-Studio (port 3900) via REST API /generate endpoint.


8. FAQ ​

1. Can't find pyproject.toml after source extraction? ​

After extraction, there's usually an OmniVoice-master folder. Open it to see pyproject.toml or pyproject. All operations must be done inside this folder.

2. uv is not recognized as an internal or external command? ​

UV is not installed or not in PATH. Windows: download uv zip, extract and copy uv.exe to the pyproject.toml directory.

3. Model download is very slow and fails? ​

Default download from huggingface.co fails in China. Set mirror:

Windows: set HF_ENDPOINT=https://hf-mirror.commacOS/Linux: export HF_ENDPOINT=https://hf-mirror.com

4. uv sync fails? ​

Default installation downloads packages from abroad. Use the Alibaba mirror:

bash
uv sync --default-index "https://mirrors.aliyun.com/pypi/simple"

5. Still fails with Alibaba mirror? ​

MSVC environment may be missing. Install MSVC.

6. How to use OmniVoice directly in a browser for dubbing? ​

After launching, open http://127.0.0.1:8081 in a browser.

7. How to modify startup port and model mirror in the package? ​

Open start.bat with a text editor:

  • Delete set "HF_ENDPOINT=https://hf-mirror.com" to stop using the mirror
  • Change set "PORT=8081" to your desired port number