Skip to content

Guide · Open source

How to use Retrieval-based-Voice-Conversion-WebUI: Setup Guide

Updated · written with AI from the project's own documentation and checked against our catalogue data

Retrieval-based-Voice-Conversion-WebUI (RVC) is an open-source voice conversion framework with a browser interface. You train a model on a voice recording and then use it to make another voice sound like the trained voice. This guide covers installation, where the model files go, starting the WebUI, and the main features the project describes.

RVCRVC-Project/Retrieval-based-Voice-Conversion-WebUI · ★ 39k · MIT

Quick start

  1. 1Install Python 3.12 and FFmpeg. Use Python 3.12 x64. On Ubuntu, install FFmpeg with apt. On Windows, place ffmpeg.exe and ffprobe.exe in the project folder.
  2. 2Create a virtual environment. Run python3.12 -m venv .venv and activate it, then upgrade pip, setuptools and wheel.
  3. 3Install the requirements for your hardware. Use requirments_cpu_py312.txt for CPU, AMD or Intel. For NVIDIA, follow the README's two-stage Torch and CUDA steps first.
  4. 4Download the model files. Use huggingface_hub to download hubert_base and rmvpe.pt from lj1995/VoiceConversionWebUI into the assets folder.
  5. 5Start the WebUI. Run python webui.py and open the interface on port 7865. Add --noautoopen on a server without a desktop.

What you need before installing

RVC is a clone-and-build project, not a one-click app. The README targets Python 3.12 x64 and asks for FFmpeg. On Ubuntu, FFmpeg is installed with apt. On Windows, you place ffmpeg.exe and ffprobe.exe in the project folder.

The project is aimed at people who are comfortable with a terminal. You also need to download several model files from Hugging Face before the WebUI is useful.

  • Python 3.12 x64
  • FFmpeg (apt on Ubuntu; ffmpeg.exe and ffprobe.exe in the project root on Windows)
  • An NVIDIA GPU is supported, and the README also describes CPU, AMD and Intel setups
  • Roughly 10 minutes or more of clean, low-noise speech if you want to train a model

Install the dependencies on Ubuntu

The README recommends Ubuntu 24.04 x86_64. Install the system packages, create a virtual environment, then activate it.

Pick the requirements file that matches your hardware. The README gives a CPU, AMD and Intel file, plus separate NVIDIA files for RTX 50 series and older cards. The NVIDIA options install a matching CUDA build of PyTorch first, then the requirements file.

  • NVIDIA RTX 50 series and older cards need the CUDA-specific Torch install described in the README before the requirements file.
  • On Windows, create the environment with the py launcher as shown in the README, then install the same requirements.
  • If you are in mainland China, the README explains how to swap the default package mirrors for the official PyPI and PyTorch sources.
sudo apt update sudo apt install -y python3.12 python3.12-venv python3.12-dev ffmpeg unzip libsndfile1 libportaudio2 python3.12 -m venv .venv source .venv/bin/activate python -m pip install --upgrade pip setuptools wheel python -m pip install -r requirments_cpu_py312.txt

Download the model files to the right folders

RVC needs pretrained files to run. The README lists them on the Hugging Face model repository for lj1995/VoiceConversionWebUI. The required files for inference and feature extraction are the hubert_base folder and rmvpe.pt. Training v1 and v2 models also needs the pretrained folders and mute samples. The pymss weights are only needed for vocal separation.

Keep the paths the code expects. Your own .pth voice models go in assets/weights/, and .index files go in assets/indices/.

  • assets/hubert_base/ (config.json, preprocessor_config.json, pytorch_model.bin)
  • assets/rmvpe/rmvpe.pt
  • assets/pretrained/ and assets/pretrained_v2/ for v1/v2 training
  • logs/mute/ for training silence samples
  • assets/pymss_weights/ only for pymss/MSST vocal separation
python -m pip install --upgrade huggingface_hub hf download lj1995/VoiceConversionWebUI --revision main --include "hubert_base/*" --local-dir assets hf download lj1995/VoiceConversionWebUI rmvpe.pt --revision main --local-dir assets/rmvpe

Start the WebUI and use it

Start the interface from the project folder with webui.py. By default the service listens on port 7865, so open http://127.0.0.1:7865 in your browser if the page does not open by itself. On a headless Ubuntu server, add the --noautoopen flag so it does not try to open a browser.

The README describes a training and inference interface and a real-time voice changer interface. It also mentions go-webui.bat and go-realtime_gui.bat as launchers on Windows. The WebUI also includes a ckpt-merge option for blending models.

  • Training and inference: convert audio with a trained .pth model
  • Real-time voice changer: the README reports about 170 ms end-to-end latency, and about 90 ms only with ASIO devices that depend on driver support
  • Vocal separation: pymss/MSST models split vocals from accompaniment
  • Model merging: the ckpt processing tab offers ckpt-merge
python webui.py python webui.py --noautoopen

Limits and responsible use

The README says the base model was trained on nearly 50 hours of the open-source VCTK dataset and is copyright-clear. It does not give further guidance on rights or consent for voices you convert. If you use a real person's voice, get their permission first.

Latency is the other practical limit. The README's 170 ms figure is the general result, and the 90 ms figure only applies with ASIO hardware and driver support. Plan for this if you need live use.

  • Use clean, low-noise recordings; the README recommends at least 10 minutes
  • Check that every model file is in its assigned folder before you start
  • Do not expect guaranteed low latency without suitable audio hardware

What people use it for

  • Making a cover song by converting a vocal track to a trained voice
  • Creating voice-changed clips from a voice you have permission to use
  • Experimenting with a real-time voice changer when you have suitable audio hardware
  • Separating vocals from music with the pymss/MSST option before conversion

Frequently asked questions

Is Retrieval-based-Voice-Conversion-WebUI free to use?

Yes. The repository is licensed under the MIT License, as shown in the README badge. You still need to follow the rights and consent rules for any voice you convert.

What do I need to run Retrieval-based-Voice-Conversion-WebUI?

You need Python 3.12 x64, FFmpeg, the matching requirements file for your hardware, and the model files from Hugging Face. The README lists NVIDIA GPU and CPU options, including AMD and Intel setups.

How much audio do I need to train an RVC model?

The README recommends at least 10 minutes of clean, low-noise speech. It says good results are possible with small datasets, but more clean data is the safer choice.

Why does the WebUI not open or show an error after starting?

Check that the model files are in the paths the code expects, such as assets/hubert_base and assets/rmvpe/rmvpe.pt. The default port is 7865, so open that address in your browser if it does not open automatically.

What are the alternatives to Retrieval-based-Voice-Conversion-WebUI?

The README lists So-VITS-SVC, Applio, Seed-VC and OpenVoice as comparable projects. Compare them on install effort, supported hardware and whether they include the features you need, such as real-time conversion.

Can I use it for real-time voice changing?

Yes, the README describes a real-time voice changer interface. It reports about 170 ms end-to-end latency, and about 90 ms only with ASIO devices that depend on driver support.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Use RVC if you are comfortable with Python and a terminal, and you have a clean voice dataset of around 10 minutes or more. Pick a different tool if you need a no-setup app, guaranteed low latency, or a project with clearer guidance on consent.

Install options & downloads