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

Easily train a good VC model with voice data <= 10 mins!
MIT License
24.77k stars 3.63k forks source link
audio-analysis change conversational-ai conversion converter retrieval-model retrieve-data rvc so-vits-svc sovits vc vits voice voice-conversion voice-converter voiceconversion

Retrieval-based-Voice-Conversion-WebUI

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

[![madewithlove](https://img.shields.io/badge/made_with-%E2%9D%A4-red?style=for-the-badge&labelColor=orange )](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI)
[![Open In Colab](https://img.shields.io/badge/Colab-F9AB00?style=for-the-badge&logo=googlecolab&color=525252)](https://colab.research.google.com/github/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/Retrieval_based_Voice_Conversion_WebUI.ipynb) [![Licence](https://img.shields.io/badge/LICENSE-MIT-green.svg?style=for-the-badge)](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/LICENSE) [![Huggingface](https://img.shields.io/badge/🤗%20-Spaces-yellow.svg?style=for-the-badge)](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/) [![Discord](https://img.shields.io/badge/RVC%20Developers-Discord-7289DA?style=for-the-badge&logo=discord&logoColor=white)](https://discord.gg/HcsmBBGyVk) [**更新日志**](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/docs/Changelog_CN.md) | [**常见问题解答**](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/wiki/%E5%B8%B8%E8%A7%81%E9%97%AE%E9%A2%98%E8%A7%A3%E7%AD%94) | [**AutoDL·5毛钱训练AI歌手**](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/wiki/Autodl%E8%AE%AD%E7%BB%83RVC%C2%B7AI%E6%AD%8C%E6%89%8B%E6%95%99%E7%A8%8B) | [**对照实验记录**](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/wiki/Autodl%E8%AE%AD%E7%BB%83RVC%C2%B7AI%E6%AD%8C%E6%89%8B%E6%95%99%E7%A8%8B](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/wiki/%E5%AF%B9%E7%85%A7%E5%AE%9E%E9%AA%8C%C2%B7%E5%AE%9E%E9%AA%8C%E8%AE%B0%E5%BD%95)) | [**在线演示**](https://modelscope.cn/studios/FlowerCry/RVCv2demo) [**English**](./docs/en/README.en.md) | [**中文简体**](./README.md) | [**日本語**](./docs/jp/README.ja.md) | [**한국어**](./docs/kr/README.ko.md) ([**韓國語**](./docs/kr/README.ko.han.md)) | [**Français**](./docs/fr/README.fr.md) | [**Türkçe**](./docs/tr/README.tr.md) | [**Português**](./docs/pt/README.pt.md)

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

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

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

简介

本仓库具有以下特点

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

环境配置

以下指令需在 Python 版本大于3.8的环境中执行。

Windows/Linux/MacOS等平台通用方法

下列方法任选其一。

1. 通过 pip 安装依赖

  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

2. 通过 poetry 来安装依赖

安装 Poetry 依赖管理工具,若已安装则跳过。参考自: https://python-poetry.org/docs/#installation

curl -sSL https://install.python-poetry.org | python3 -

通过 Poetry 安装依赖时,python 建议使用 3.7-3.10 版本,其余版本在安装 llvmlite==0.39.0 时会出现冲突

poetry init -n
poetry env use "path to your python.exe"
poetry run pip install -r requirments.txt

MacOS

可以通过 run.sh 来安装依赖

sh ./run.sh

其他预模型准备

RVC需要其他一些预模型来推理和训练。

你可以从我们的Hugging Face space下载到这些模型。

1. 下载 assets

以下是一份清单,包括了所有RVC所需的预模型和其他文件的名称。你可以在tools文件夹找到下载它们的脚本。

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

2. 安装 ffmpeg

若ffmpeg和ffprobe已安装则跳过。

Ubuntu/Debian 用户

sudo apt install ffmpeg

MacOS 用户

brew install ffmpeg

Windows 用户

下载后放置在根目录。

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

如果你想使用最新的RMVPE人声音高提取算法,则你需要下载音高提取模型参数并放置于RVC根目录。

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

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

若先前使用 Poetry 安装依赖,则可以通过以下方式启动WebUI

poetry run python infer-web.py

使用整合包

下载并解压RVC-beta.7z

Windows 用户

双击go-web.bat

MacOS 用户

sh ./run.sh

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

source /opt/intel/oneapi/setvars.sh

参考项目

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