2023-04-12 15:33:11 +02:00
< div align = "center" >
< h1 > Retrieval-based-Voice-Conversion-WebUI< / h1 >
2023-05-06 12:42:08 +02:00
An easy-to-use Voice Conversion framework based on VITS.< br > < br >
2023-04-12 15:33:11 +02:00
2023-08-31 11:11:37 +02:00
[![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)
2023-04-12 15:33:11 +02:00
< img src = "https://counter.seku.su/cmoe?name=rvc&theme=r34" / > < br >
2023-06-22 08:37:09 +02:00
[![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)
2023-06-24 09:26:14 +02:00
[![Licence ](https://img.shields.io/github/license/RVC-Project/Retrieval-based-Voice-Conversion-WebUI?style=for-the-badge )](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/LICENSE)
2023-04-14 17:57:34 +02:00
[![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)
2023-04-12 15:33:11 +02:00
2024-02-08 21:37:39 +01:00
< / div >
2023-04-12 15:33:11 +02:00
2024-02-08 21:37:39 +01:00
------
[**Changelog** ](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/docs/en/Changelog_EN.md ) | [**FAQ (Frequently Asked Questions)** ](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/wiki/FAQ-(Frequently-Asked-Questions ))
2023-04-12 15:33:11 +02:00
2024-02-08 21:37:39 +01:00
[**English** ](../en/README.en.md ) | [**中文简体** ](../../README.md ) | [**日本語** ](../jp/README.ja.md ) | [**한국어** ](../kr/README.ko.md ) ([**韓國語**](../kr/README.ko.han.md)) | [**Türkçe** ](../tr/README.tr.md )
Check our [Demo Video ](https://www.bilibili.com/video/BV1pm4y1z7Gm/ ) here!
Training/Inference WebUI: go-web.bat
2023-06-11 15:59:16 +02:00
2024-02-08 21:37:39 +01:00
![image ](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/assets/129054828/00387c1c-51b1-4010-947d-3f3ecac95b87 )
Realtime Voice Conversion GUI: go-realtime-gui.bat
![image ](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/assets/129054828/143246a9-8b42-4dd1-a197-430ede4d15d7 )
> The dataset for the pre-training model uses nearly 50 hours of high quality VCTK open source dataset.
> High quality licensed song datasets will be added to training-set one after another for your use, without worrying about copyright infringement.
2023-06-19 14:07:09 +02:00
2023-08-13 20:40:36 +02:00
> Please look forward to the pretrained base model of RVCv3, which has larger parameters, more training data, better results, unchanged inference speed, and requires less training data for training.
2023-08-13 18:09:52 +02:00
2024-02-08 21:37:39 +01:00
## Summary
This repository has the following features:
2023-07-29 16:44:36 +02:00
+ Reduce tone leakage by replacing the source feature to training-set feature using top1 retrieval;
2024-02-08 21:37:39 +01:00
+ Easy and fast training, even on relatively poor graphics cards;
+ Training with a small amount of data also obtains relatively good results (>=10min low noise speech recommended);
+ Supporting model fusion to change timbres (using ckpt processing tab->ckpt merge);
+ Easy-to-use Webui interface;
+ Use the UVR5 model to quickly separate vocals and instruments.
+ Use the most powerful High-pitch Voice Extraction Algorithm [InterSpeech2023-RMVPE ](#Credits ) to prevent the muted sound problem. Provides the best results (significantly) and is faster, with even lower resource consumption than Crepe_full.
+ AMD/Intel graphics cards acceleration supported.
2023-09-09 06:00:29 +02:00
+ Intel ARC graphics cards acceleration with IPEX supported.
2023-07-29 16:44:36 +02:00
2023-04-12 15:33:11 +02:00
## Preparing the environment
2024-02-08 21:37:39 +01:00
The following commands need to be executed in the environment of Python version 3.8 or higher.
2023-04-12 15:33:11 +02:00
2023-07-29 16:44:36 +02:00
(Windows/Linux)
First install the main dependencies through pip:
2023-04-12 15:33:11 +02:00
```bash
# Install PyTorch-related core dependencies, skip if installed
# Reference: https://pytorch.org/get-started/locally/
pip install torch torchvision torchaudio
2023-06-22 08:37:09 +02:00
#For Windows + Nvidia Ampere Architecture(RTX30xx), you need to specify the cuda version corresponding to pytorch according to the experience of https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/issues/21
2023-04-21 10:30:08 +02:00
#pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/cu117
2023-09-15 03:41:38 +02:00
#For Linux + AMD Cards, you need to use the following pytorch versions:
#pip install torch torchvision torchaudio --index-url https://download.pytorch.org/whl/rocm5.4.2
2023-07-29 16:44:36 +02:00
```
2023-04-12 15:33:11 +02:00
2023-07-29 16:44:36 +02:00
Then can use poetry to install the other dependencies:
```bash
2023-04-12 15:33:11 +02:00
# Install the Poetry dependency management tool, skip if installed
# Reference: https://python-poetry.org/docs/#installation
curl -sSL https://install.python-poetry.org | python3 -
# Install the project dependencies
poetry install
```
2023-07-29 16:44:36 +02:00
You can also use pip to install them:
2023-04-12 15:33:11 +02:00
```bash
2023-08-13 18:09:52 +02:00
for Nvidia graphics cards
pip install -r requirements.txt
2023-09-15 03:41:38 +02:00
for AMD/Intel graphics cards on Windows (DirectML):
2023-08-13 18:09:52 +02:00
pip install -r requirements-dml.txt
2023-09-09 06:00:29 +02:00
for Intel ARC graphics cards on Linux / WSL using Python 3.10:
pip install -r requirements-ipex.txt
2023-09-15 03:41:38 +02:00
for AMD graphics cards on Linux (ROCm):
pip install -r requirements-amd.txt
2023-04-12 15:33:11 +02:00
```
2023-07-29 16:44:36 +02:00
------
Mac users can install dependencies via `run.sh` :
```bash
sh ./run.sh
```
2023-04-12 15:33:11 +02:00
## Preparation of other Pre-models
RVC requires other pre-models to infer and train.
2023-10-06 11:14:33 +02:00
```bash
#Download all needed models from https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/
python tools/download_models.py
```
Or just download them by yourself from our [Huggingface space ](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/ ).
2023-04-12 15:33:11 +02:00
Here's a list of Pre-models and other files that RVC needs:
```bash
2023-08-28 09:00:51 +02:00
./assets/hubert/hubert_base.pt
2023-04-12 15:33:11 +02:00
2023-08-28 09:00:51 +02:00
./assets/pretrained
2023-04-12 15:33:11 +02:00
2023-08-28 09:00:51 +02:00
./assets/uvr5_weights
Additional downloads are required if you want to test the v2 version of the model.
./assets/pretrained_v2
2023-04-12 15:33:11 +02:00
2023-05-14 09:21:30 +02:00
If you want to test the v2 version model (the v2 version model has changed the input from the 256 dimensional feature of 9-layer Hubert+final_proj to the 768 dimensional feature of 12-layer Hubert, and has added 3 period discriminators), you will need to download additional features
2023-08-29 18:28:33 +02:00
./assets/pretrained_v2
2023-05-14 09:21:30 +02:00
2024-02-08 21:37:39 +01:00
#If you are using Windows, you may also need these two files, skip if FFmpeg and FFprobe are installed
ffmpeg.exe
https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffmpeg.exe
ffprobe.exe
https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/ffprobe.exe
2023-08-13 18:09:52 +02:00
If you want to use the latest SOTA RMVPE vocal pitch extraction algorithm, you need to download the RMVPE weights and place them in the RVC root directory
https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/rmvpe.pt
For AMD/Intel graphics cards users you need download:
https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/rmvpe.onnx
2023-04-12 15:33:11 +02:00
```
2023-09-09 06:00:29 +02:00
2024-02-08 21:37:39 +01:00
Intel ARC graphics cards users needs to run `source /opt/intel/oneapi/setvars.sh` command before starting Webui.
2023-09-09 06:00:29 +02:00
2024-02-08 21:37:39 +01:00
Then use this command to start Webui:
2024-01-14 08:42:19 +01:00
```bash
2024-02-08 21:37:39 +01:00
python infer-web.py
2023-04-12 15:33:11 +02:00
```
2023-09-15 03:41:38 +02:00
2024-02-08 21:37:39 +01:00
If you are using Windows or macOS, you can download and extract `RVC-beta.7z` to use RVC directly by using `go-web.bat` on windows or `sh ./run.sh` on macOS to start Webui.
2023-04-12 15:33:11 +02:00
2023-09-15 03:41:38 +02:00
## ROCm Support for AMD graphic cards (Linux only)
To use ROCm on Linux install all required drivers as described [here ](https://rocm.docs.amd.com/en/latest/deploy/linux/os-native/install.html ).
On Arch use pacman to install the driver:
````
pacman -S rocm-hip-sdk rocm-opencl-sdk
````
You might also need to set these environment variables (e.g. on a RX6700XT):
````
export ROCM_PATH=/opt/rocm
export HSA_OVERRIDE_GFX_VERSION=10.3.0
````
2024-02-08 21:37:39 +01:00
Also make sure your user is part of the `render` and `video` group:
2023-09-15 03:41:38 +02:00
````
sudo usermod -aG render $USERNAME
sudo usermod -aG video $USERNAME
````
2024-02-08 21:37:39 +01:00
After that you can run the WebUI:
2023-09-15 03:41:38 +02:00
```bash
python infer-web.py
```
2024-02-08 21:37:39 +01:00
2023-04-12 15:33:11 +02:00
## Credits
2023-04-22 08:06:18 +02:00
+ [ContentVec ](https://github.com/auspicious3000/contentvec/ )
+ [VITS ](https://github.com/jaywalnut310/vits )
+ [HIFIGAN ](https://github.com/jik876/hifi-gan )
+ [Gradio ](https://github.com/gradio-app/gradio )
+ [FFmpeg ](https://github.com/FFmpeg/FFmpeg )
+ [Ultimate Vocal Remover ](https://github.com/Anjok07/ultimatevocalremovergui )
+ [audio-slicer ](https://github.com/openvpi/audio-slicer )
2023-07-29 16:44:36 +02:00
+ [Vocal pitch extraction:RMVPE ](https://github.com/Dream-High/RMVPE )
+ The pretrained model is trained and tested by [yxlllc ](https://github.com/yxlllc/RMVPE ) and [RVC-Boss ](https://github.com/RVC-Boss ).
2023-04-12 15:33:11 +02:00
## Thanks to all contributors for their efforts
2023-06-22 08:37:09 +02:00
< a href = "https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/graphs/contributors" target = "_blank" >
< img src = "https://contrib.rocks/image?repo=RVC-Project/Retrieval-based-Voice-Conversion-WebUI" / >
2023-04-12 15:33:11 +02:00
< / a >