一个基于VITS的简单易用的变声框架
Go to file
simosechi fb16ba36b9
fix(RVCMD): is_win issue (#2011)
fix #2009
2024-04-24 00:31:28 +09:00
.github fix(workflow): incorrect commit back 2024-04-21 22:30:33 +09:00
assets drop: overwrite of config jsons & feat: read index from assets/indices 2024-01-22 17:18:59 +09:00
configs feat(rvcmd): add option `--update` 2024-04-23 03:16:27 +09:00
docs doc: sync ZH, EN, JA 2024-04-23 18:13:10 +09:00
i18n New feature of real-time voice changing: formant shift adjustment (#1999) 2024-04-22 22:13:10 +09:00
infer fix(RVCMD): is_win issue (#2011) 2024-04-24 00:31:28 +09:00
logs/mute Add files via upload 2023-05-14 16:08:37 +08:00
tools chore(format): run black on dev (#2005) 2024-04-23 03:17:34 +09:00
.env feat(env): split checksum env into sha256.env 2024-04-21 22:28:12 +09:00
.gitignore fix: 多显卡训练时logger未赋值引用 (#1722) 2024-01-16 20:30:10 +09:00
CONTRIBUTING.md Update CONTRIBUTING.md 2023-12-26 17:50:42 +09:00
Dockerfile optimize(dockerfile): 将"copy . ."移至系统设置之后 (#1937) 2024-04-11 16:53:19 +09:00
LICENSE feat(all): optimize hierarchy of files 2024-04-20 21:29:25 +09:00
MIT协议暨相关引用库协议 replace PySimpleGUI to FreeSimpleGUI (#1978) 2024-04-19 23:58:07 +09:00
README.md doc: sync ZH, EN, JA 2024-04-23 18:13:10 +09:00
docker-compose.yml Added NVIDIA GPU support to Docker (#1231) 2023-09-13 00:18:04 +09:00
environment_dml.yaml replace PySimpleGUI to FreeSimpleGUI (#1978) 2024-04-19 23:58:07 +09:00
go-realtime-gui-dml.bat feat(rvcmd): add dns and dl link fallback 2024-04-21 02:00:27 +09:00
go-realtime-gui.bat fix: fix realtime gui launch script windows (#1994) 2024-04-21 21:41:13 +09:00
go-web-dml.bat feat(rvcmd): add dns and dl link fallback 2024-04-21 02:00:27 +09:00
go-web.bat feat(rvcmd): add dns and dl link fallback 2024-04-21 02:00:27 +09:00
gui_v1.py optimize: error handling & update logics 2024-04-23 17:06:25 +09:00
infer-web.py optimize: error handling & update logics 2024-04-23 17:06:25 +09:00
requirements-amd.txt Move to Gradio 4.23.0 (#1928) 2024-04-11 16:46:02 +09:00
requirements-dml.txt chore(deps): bump gradio from 3.34.0 to 4.11.0 (#1700) 2024-04-11 16:55:17 +09:00
requirements-ipex.txt replace PySimpleGUI to FreeSimpleGUI (#1978) 2024-04-19 23:58:07 +09:00
requirements-py311.txt Move to Gradio 4.23.0 (#1928) 2024-04-11 16:46:02 +09:00
requirements-win-for-realtime_vc_gui-dml.txt replace PySimpleGUI to FreeSimpleGUI (#1978) 2024-04-19 23:58:07 +09:00
requirements-win-for-realtime_vc_gui.txt replace PySimpleGUI to FreeSimpleGUI (#1978) 2024-04-19 23:58:07 +09:00
requirements.txt Specify numpy version at requirement.txt (#1872) 2024-04-11 16:52:24 +09:00
run.sh fix(run.sh): python3.8: command not found in venv 2024-04-21 00:19:34 +09:00
sha256.env chore(env): sync checksum on dev (#1996) 2024-04-21 22:37:04 +09:00

README.md

Retrieval-based-Voice-Conversion-WebUI

一个基于VITS的简单易用的变声框架

madewithlove


RVC v1 RVC v2 Licence Huggingface

Discord

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

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

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

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

由于某些地区无法直连Hugging Face即使设法成功访问速度也十分缓慢特推出模型/整合包/工具的一键下载器,欢迎试用:RVC-Models-Downloader

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

简介

本仓库具有以下特点

  • 使用top1检索替换输入源特征为训练集特征来杜绝音色泄漏
  • 即便在相对较差的显卡上也能快速训练
  • 使用少量数据进行训练也能得到较好结果(推荐至少收集10分钟低底噪语音数据)
  • 可以通过模型融合来改变音色(借助ckpt处理选项卡中的ckpt-merge)
  • 简单易用的网页界面
  • 可调用UVR5模型来快速分离人声和伴奏
  • 使用最先进的人声音高提取算法InterSpeech2023-RMVPE根绝哑音问题,效果更好,运行更快,资源占用更少
  • A卡I卡加速支持

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

环境配置

Python 版本限制

建议使用 conda 管理 Python 环境

版本限制原因参见此bug

python --version # 3.8 <= Python < 3.11

Linux/MacOS 一键依赖安装启动脚本

执行项目根目录下run.sh即可一键配置venv虚拟环境、自动安装所需依赖并启动主程序。

sh ./run.sh

手动安装依赖

  1. 安装pytorch及其核心依赖,若已安装则跳过。参考自: https://pytorch.org/get-started/locally/
    pip install torch torchvision torchaudio
    
  2. 如果是 win 系统 + Nvidia Ampere 架构(RTX30xx),根据 #21 的经验,需要指定 pytorch 对应的 CUDA 版本
    pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
    
  3. 根据自己的显卡安装对应依赖
  • N卡
    pip install -r requirements.txt
    
  • A卡/I卡
    pip install -r requirements-dml.txt
    
  • A卡ROCM(Linux)
    pip install -r requirements-amd.txt
    
  • I卡IPEX(Linux)
    pip install -r requirements-ipex.txt
    

其他资源准备

1. assets

RVC需要位于assets文件夹下的一些模型资源进行推理和训练。

自动检查/下载资源(默认)

默认情况下RVC可在主程序启动时自动检查所需资源的完整性。

即使资源不完整,程序也将继续启动。

  • 如果您希望下载所有资源,请添加--update参数
  • 如果您希望跳过启动时的资源完整性检查,请添加--nocheck参数

手动下载资源

所有资源文件均位于Hugging Face space

你可以在tools文件夹找到下载它们的脚本

你也可以使用模型/整合包/工具的一键下载器:RVC-Models-Downloader

以下是一份清单包括了所有RVC所需的预模型和其他文件的名称。

  • ./assets/hubert/hubert_base.pt
    rvcmd assets/hubert # RVC-Models-Downloader command
    
  • ./assets/pretrained
    rvcmd assets/v1 # RVC-Models-Downloader command
    
  • ./assets/uvr5_weights
    rvcmd assets/uvr5 # RVC-Models-Downloader command
    

想使用v2版本模型的话需要额外下载

  • ./assets/pretrained_v2
    rvcmd assets/v2 # RVC-Models-Downloader command
    

2. 安装 ffmpeg 工具

若已安装ffmpegffprobe则可跳过此步骤。

Ubuntu/Debian 用户

sudo apt install ffmpeg

MacOS 用户

brew install ffmpeg

Windows 用户

下载后放置在根目录。

rvcmd tools/ffmpeg # RVC-Models-Downloader command

3. 下载 rmvpe 人声音高提取算法所需文件

如果你想使用最新的RMVPE人声音高提取算法则你需要下载音高提取模型参数并放置于assets/rmvpe

  • 下载rmvpe.pt
    rvcmd assets/rmvpe # RVC-Models-Downloader command
    

下载 rmvpe 的 dml 环境(可选, A卡/I卡用户)

  • 下载rmvpe.onnx
    rvcmd assets/rmvpe # RVC-Models-Downloader command
    

4. AMD显卡Rocm(可选, 仅Linux)

如果你想基于AMD的Rocm技术在Linux系统上运行RVC请先在这里安装所需的驱动。

若你使用的是Arch Linux可以使用pacman来安装所需驱动

pacman -S rocm-hip-sdk rocm-opencl-sdk

对于某些型号的显卡你可能需要额外配置如下的环境变量RX6700XT

export ROCM_PATH=/opt/rocm
export HSA_OVERRIDE_GFX_VERSION=10.3.0

同时确保你的当前用户处于rendervideo用户组内:

sudo usermod -aG render $USERNAME
sudo usermod -aG video $USERNAME

开始使用

直接启动

使用以下指令来启动 WebUI

python infer-web.py

Linux/MacOS 用户

./run.sh

对于需要使用IPEX技术的I卡用户(仅Linux)

source /opt/intel/oneapi/setvars.sh
./run.sh

使用整合包 (Windows 用户)

下载并解压RVC-beta.7z,解压后双击go-web.bat即可一键启动。

rvcmd packs/general/latest # RVC-Models-Downloader command

参考项目

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