Retrieval-based-Voice-Conversion-WebUI README

The project's README from github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI. As one markdown file: README.md.

Retrieval-based-Voice-Conversion-WebUI

简单易用的 语音音色转换/变声器 框架

madewithlove


Licence Huggingface

更新日志 | 常见问题解答 | AutoDL·5毛钱训练AI歌手 | 对照实验记录 | 在线演示

English | 中文简体 | 日本語 | 한국어 (韓國語) | Français | Türkçe | Português

底模使用接近50小时的开源高质量VCTK训练集训练,无版权方面的顾虑,请大家放心使用

请期待RVCv3的底模,参数更大,数据更大,效果更好,基本持平的推理速度,需要训练数据量更少。

训练推理界面 实时变声界面
go-webui.bat go-realtime_gui.bat
可以自由选择想要执行的操作。 我们已经实现端到端170ms延迟。如使用ASIO输入输出设备,已能实现端到端90ms延迟,但非常依赖硬件驱动支持。

简介

本仓库具有以下特点

点此查看我们的演示视频 !

环境配置

本分支面向 Python 3.12 x64,请先进入仓库根目录。Ubuntu 推荐使用 Ubuntu 24.04 x86_64。

Ubuntu 24.04

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

Windows

安装 Python 3.12 x64 后创建虚拟环境:

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

按硬件选择依赖

硬件 安装方式
CPU、AMD、Intel 使用 requirments_cpu_py312.txt;Windows 可使用 DirectML,Linux 使用 CPU
NVIDIA RTX 50 系 先安装 CUDA 12.8 版 Torch,再安装 requirments_cu128_py312.txt
NVIDIA RTX 50 系以前 先安装 CUDA 11.8 版 Torch,再安装 requirments_cu118_py312.txt

CPU、AMD、Intel

python -m pip install -r requirments_cpu_py312.txt

NVIDIA RTX 50 系:两阶段安装

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

NVIDIA RTX 50 系以前:两阶段安装

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

检查 Torch 与 CUDA 状态:

python -c "import torch; print('torch:', torch.__version__); print('cuda:', torch.version.cuda); print('cuda available:', torch.cuda.is_available())"

修改下载源

三个 requirments_*.txt 顶部已经包含下载源。中国大陆用户可保留默认镜像;需要使用官方源时,只替换 --index-url 和 --extra-index-url,保留包版本、CUDA 后缀和两阶段顺序。

Default mirror Official source
https://mirrors.pku.edu.cn/pypi/simple https://pypi.org/simple
https://mirrors.nju.edu.cn/pytorch/whl/cpu https://download.pytorch.org/whl/cpu
https://mirrors.nju.edu.cn/pytorch/whl/cu118 https://download.pytorch.org/whl/cu118
https://mirrors.nju.edu.cn/pytorch/whl/cu128 https://download.pytorch.org/whl/cu128

模型与运行目录

WebUI 会自动创建运行目录。模型请从 Hugging Face 模型仓库 下载,并保持以下路径:

assets/
├── hubert_base/
│   ├── config.json
│   ├── preprocessor_config.json
│   └── pytorch_model.bin
├── rmvpe/rmvpe.pt
├── pretrained/
├── pretrained_v2/
├── pymss_weights/
├── weights/        # user RVC .pth models
└── indices/        # user .index files
logs/
└── mute/           # training silence samples

# Exact paths used by the code
assets/hubert_base/config.json
assets/hubert_base/preprocessor_config.json
assets/hubert_base/pytorch_model.bin
assets/rmvpe/rmvpe.pt
assets/pretrained/*.pth
assets/pretrained_v2/*.pth
assets/pymss_weights/*
assets/weights/*.pth
assets/indices/*.index
logs/mute/*

下载模型

python -m pip install --upgrade huggingface_hub

# Required for inference and feature extraction
hf download lj1995/VoiceConversionWebUI --revision main \
  --include "hubert_base/*" --local-dir assets
hf download lj1995/VoiceConversionWebUI rmvpe.pt --revision main \
  --local-dir assets/rmvpe

# Required for v1/v2 training
hf download lj1995/VoiceConversionWebUI --revision main \
  --include "pretrained/*" "pretrained_v2/*" --local-dir assets
hf download lj1995/VoiceConversionWebUI mute.zip --revision main \
  --local-dir .model-downloads
python -m zipfile -e .model-downloads/mute.zip logs

# Required only for pymss/MSST vocal separation
hf download lj1995/VoiceConversionWebUI --revision main \
  --include "pymss_weights/*" --local-dir assets

仅 Windows AMD/Intel DirectML 环境还需要:

hf download lj1995/VoiceConversionWebUI rmvpe.onnx --revision main \
  --local-dir assets/rmvpe

FFmpeg

Ubuntu 已在前面的系统依赖命令中安装 FFmpeg。Windows 用户可把下面两个文件放到项目根目录:

开始使用

启动 WebUI:

python webui.py

无桌面的 Ubuntu 服务器:

python webui.py --noautoopen

默认服务监听端口为 7865。用户自己的 .pth 模型放入 assets/weights/,.index 文件放入 assets/indices/。

参考项目

感谢所有贡献者作出的努力

Retrieval-based-Voice-Conversion-WebUI (RVC-Project/Retrieval-based-Voice-Conversion-WebUI)

Searching Database…

Что это такое?RVC WebUI — веб-инструмент для обучения и использования моделей голосового преобразования (смены голоса). Он позволяет клонировать тембр целевого голоса, используя всего около 10 минут аудио.
Это настольное приложение или то, что открывается в браузере?Это самостоятельно развёртываемое веб-приложение на Gradio: вы запускаете его локально, и оно поднимает веб-интерфейс (вкладку обучения и инференса и отдельную вкладку голосового преобразования в реальном времени), который открывается в браузере. По умолчанию сервер слушает порт 7865.
Как его запустить?Установите Python 3.12 x64 и создайте виртуальное окружение, установите файл requirements, подходящий под ваше железо, скачайте предобученные модели с Hugging Face в папки проекта, затем запустите go-webui.bat в Windows или аналогичную команду в Linux. Модели загружаются из assets/weights и assets/indices.
Нужна ли видеокарта NVIDIA, чтобы пользоваться этим?Не обязательно. Видеокарты NVIDIA используют сборки Torch под CUDA 12.8 (RTX 50-й серии) или 11.8 (более старые RTX). Оборудование AMD и Intel поддерживается через DirectML в Windows или через обычный CPU в Linux.
Насколько быстро работает смена голоса в реальном времени?Сквозная задержка по умолчанию составляет около 170 мс и снижается примерно до 90 мс при использовании аудиоустройств ввода и вывода через ASIO. При этом более низкое значение сильно зависит от поддержки драйверов вашим оборудованием.
Как это предотвращает просачивание голоса исходного диктора в результат?Используется поиск признаков top-1: признаки входного диктора заменяются подходящими признаками из обучающего набора, что предотвращает утечку тембра.
Какой метод извлечения высоты тона используется?Используется RMVPE — алгоритм из InterSpeech2023, выбранный за скорость, низкие требования к ресурсам и устойчивость к артефактам «немых нот», которые характерны для более ранних трекеров высоты тона.
Можно ли объединить две обученные голосовые модели?Да, во вкладке обработки чекпоинтов есть опция ckpt-merge, которая объединяет две модели и смешивает их тембры.
Можно ли перед преобразованием выделить только вокал из песни?Да, можно использовать модели pymss/MSST для быстрого отделения вокала от аккомпанемента.
Size
15.1 MB
Stars
38.8K
Age
3y
Commits · 90 Days