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 网页应用:你在本地启动后,它会提供一个 WebUI(包含训练/推理页和单独的实时变声页),你可以在浏览器中打开,默认监听 7865 端口。
怎么让它运行起来?安装 Python 3.12 x64 并创建虚拟环境,安装与你的硬件相符的依赖文件,然后从 Hugging Face 下载预训练模型到项目文件夹中,接着在 Windows 上用 go-webui.bat 启动,或在 Linux 上使用对应命令;模型会从 assets/weights 和 assets/indices 加载。
用它必须有 NVIDIA 显卡吗?并不严格要求:NVIDIA 显卡使用 CUDA 12.8(RTX 50 系列)或 11.8(较老的 RTX 显卡)对应的 Torch 版本;AMD 和 Intel 硬件则可在 Windows 上通过 DirectML 使用,在 Linux 上则只能用纯 CPU 运行。
实时变声的速度有多快?端到端延迟默认约为 170 毫秒,使用 ASIO 输入/输出音频设备时可降至约 90 毫秒,不过较低的数值很大程度上取决于你硬件的驱动支持情况。
它如何防止源说话人的声音泄漏到输出中?它使用 top-1 特征检索,把输入说话人的特征替换为训练集中匹配的特征,从而防止音色泄漏。
它使用什么音高提取方法?它使用 RMVPE,这是 InterSpeech2023 上发表的算法,优点是速度快、资源占用低,并且能避免早期音高追踪器常见的“哑音”问题。
我能合并两个已训练好的声音模型吗?可以,检查点处理页中包含 ckpt-merge 选项,可以融合两个模型以混合它们的音色。
转换前能只把歌曲中的人声分离出来吗?可以,它可以调用 pymss/MSST 模型,快速把人声从伴奏音乐中分离出来。
Size
15.1 MB
Stars
38.8K
Age
3y
Commits · 90 Days