SocAIty / Retrieval-based-Voice-Conversion-FastAPI

Adds a web API to RVC to infer via json requests

Geek Repo:Geek Repo

Github PK Tool:Github PK Tool

Retrieval-based-Voice-Conversion-WebUI

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

madewithlove


Open In Colab Licence Huggingface

Discord

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


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

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

训练推理界面:go-web.bat

image

实时变声界面:go-realtime-gui.bat

image

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

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

简介

本仓库具有以下特点

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

环境配置

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

(Windows/Linux)
首先通过 pip 安装主要依赖:

# 安装Pytorch及其核心依赖,若已安装则跳过
# 参考自: https://pytorch.org/get-started/locally/
pip install torch torchvision torchaudio

#如果是win系统+Nvidia Ampere架构(RTX30xx),根据 #21 的经验,需要指定pytorch对应的cuda版本
#pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117

可以使用 poetry 来安装依赖:

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

# 通过poetry安装依赖
poetry install

你也可以通过 pip 来安装依赖:

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

Mac 用户可以通过 run.sh 来安装依赖:

sh ./run.sh

其他预模型准备

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

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

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

./assets/hubert/hubert_base.pt

./assets/pretrained 

./assets/uvr5_weights

想测试v2版本模型的话,需要额外下载

./assets/pretrained_v2

如果你正在使用Windows,则你可能需要这个文件,若ffmpeg和ffprobe已安装则跳过; ubuntu/debian 用户可以通过apt install ffmpeg来安装这2个库, Mac 用户则可以通过brew install ffmpeg来安装 (需要预先安装brew)

./ffmpeg

https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffmpeg.exe

./ffprobe

https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffprobe.exe

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

https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/rmvpe.pt

    A卡I卡用户需要的dml环境要请下载

    https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/rmvpe.onnx

之后使用以下指令来启动WebUI:

python infer-web.py

如果你正在使用Windows 或 macOS,你可以直接下载并解压RVC-beta.7z,前者可以运行go-web.bat以启动WebUI,后者则运行命令sh ./run.sh以启动WebUI。

对于需要使用IPEX技术的I卡用户,请先在终端执行source /opt/intel/oneapi/setvars.sh(仅Linux)。

仓库内还有一份小白简易教程.doc以供参考。

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

参考项目

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

About

Adds a web API to RVC to infer via json requests

License:MIT License


Languages

Language:Python 89.8%Language:Jupyter Notebook 4.8%Language:Shell 2.9%Language:Batchfile 2.2%Language:Dockerfile 0.4%