English
English Italiano Español Français Deutsch Português

Install Mainline RVC

Mainline is the upstream Retrieval-based Voice Conversion WebUI. Use its browser interface for file conversion and training. For microphone conversion, use the separate desktop interface described in the real-time guide.

Pick one installation route

Your setup What to use
Windows and a supported GPU Start with a matching prebuilt Windows archive. This is the shortest route.
Windows and an NVIDIA RTX 50-series GPU Use a package explicitly marked for the 50 series or the source setup with the CUDA 12.8 Torch build. Older NVIDIA archives can start but fail when they try to run GPU operations.
Windows and an AMD or Intel GPU Choose the matching AMD/Intel archive. DirectML support depends on the release and operation. Test file conversion first.
Ubuntu or a custom Windows setup Install the current source branch into a separate Python environment.

Windows archive

  1. Open the Mainline Windows package and asset downloads and choose the archive matching your GPU. For the current package family, look for the 20260718 NVIDIA, NVIDIA 50-series, or AMD/Intel variant. If you already have an older release that works, leave it in its own directory.
  2. Extract the entire archive to a writable local folder such as C:\RVC\Mainline. Allow space for both the download and the extracted files. In File Explorer, open the resulting folder and look for the launcher, assets, and the Python runtime. If you see one more enclosing directory, open it.
  3. Run go-webui.bat if present. Older archives may call it go-web.bat. Keep the command window open and wait for the local address. If the browser does not start, open the address shown in the terminal. A common default is http://127.0.0.1:7865.
  4. Confirm that the page opens and that the terminal remains running. Keep the archive intact until the first conversion succeeds.

Current source branch

Download and extract the Mainline source ZIP. Open a terminal in the directory containing webui.py and the requirements files. The source setup below applies to the Python 3.12 branch. Run each snippet from that directory using a 64-bit Python 3.12 interpreter.

Windows PowerShell

py -3.12 -m venv .venv
.\.venv\Scripts\Activate.ps1
python -m pip install --upgrade pip setuptools wheel

If PowerShell blocks the activation script, open Command Prompt in the same directory and run .venv\Scripts\activate.bat. On Windows, put ffmpeg.exe and ffprobe.exe beside webui.py.

Ubuntu 24.04

sudo apt update
sudo apt install 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

Choose one dependency set. The filenames contain requirments as spelled in the repository. Run the matching block from top to bottom.

CPU, AMD, or Intel

python -m pip install -r requirments_cpu_py312.txt

NVIDIA RTX 50 series

python -m pip install torch==2.7.1+cu128 torchaudio==2.7.1+cu128 --index-url https://download.pytorch.org/whl/cu128 --extra-index-url https://pypi.org/simple
python -m pip install -r requirments_cu128_py312.txt

Supported older NVIDIA cards

python -m pip install torch==2.7.1+cu118 torchaudio==2.7.1+cu118 --index-url https://download.pytorch.org/whl/cu118 --extra-index-url https://pypi.org/simple
python -m pip install -r requirments_cu118_py312.txt

Check which interpreter and Torch build the terminal is using:

python -c "import sys, torch; print(sys.executable); print(torch.__version__); print(torch.cuda.is_available())"

Expect the interpreter path to contain .venv. CUDA availability should be True for working NVIDIA CUDA inference. CPU and DirectML installations can show False in this CUDA check.

Install the shared feature and pitch models before your first conversion:

python -m pip install huggingface_hub
hf download lj1995/VoiceConversionWebUI --include "hubert_base/*" --local-dir assets
hf download lj1995/VoiceConversionWebUI rmvpe.pt --local-dir assets/rmvpe

Generic HuBERT checkpoints are not recommended as the default encoder for voice conversion. Their speech prediction training does not explicitly remove speaker identity, so the features can carry source timbre into the output. For RVC, use the encoder expected by the model, such as ContentVec when the voice was trained with it.

Windows DirectML setups that use the ONNX pitch model also need hf download lj1995/VoiceConversionWebUI rmvpe.onnx --local-dir assets/rmvpe. The training guide lists the additional training assets.

Run python webui.py from the same directory. The feature encoder should be a folder named assets/hubert_base containing the config, preprocessing config and weight file. If you installed a legacy archive, keep its bundled files and naming conventions together.

If the WebUI will not open

What you see What to check first
No browser tab Read the last lines in the terminal and copy the actual local URL. If the default port is busy, a build may choose another one.
The launcher opens and immediately closes Run it from an existing Command Prompt inside the extracted folder so you can read the first error. Check that extraction finished before changing dependencies.
ModuleNotFoundError on a source install Confirm that you launched from the virtual environment used for installation. Complete the matching requirements installation.
CUDA is unavailable on an NVIDIA setup Check the GPU model, driver and Torch wheel together. An RTX 50-series system needs the matching build.
Missing HuBERT, RMVPE or FFmpeg Check the asset folders and executable paths above. Retry with a simple local WAV after correcting the missing file.

When the interface opens, continue with your first file conversion.