2026-07-19 21:17:17 +08:00
|
|
|
|
<div align="center">
|
|
|
|
|
|
|
|
|
|
|
|
<h1>Retrieval-based-Voice-Conversion-WebUI</h1>
|
2026-07-19 22:23:01 +08:00
|
|
|
|
簡單하고 使用하기 쉬운 音色變換/變聲器 프레임워크.<br><br>
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
|
|
|
|
|
[](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI)
|
|
|
|
|
|
|
|
|
|
|
|
<img src="https://counter.seku.su/cmoe?name=rvc&theme=r34" /><br>
|
2026-07-19 22:23:01 +08:00
|
|
|
|
|
2026-07-19 21:17:17 +08:00
|
|
|
|
[](https://github.com/RVC-Project/Retrieval-based-Voice-Conversion-WebUI/blob/main/LICENSE)
|
2026-07-19 22:23:01 +08:00
|
|
|
|
[](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main/)
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
</div>
|
|
|
|
|
|
|
|
|
|
|
|
------
|
2026-07-19 22:23:01 +08:00
|
|
|
|
[**更新日誌**](./Changelog_KO.md)
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
|
|
|
|
|
[**English**](../en/README.en.md) | [**中文简体**](../../README.md) | [**日本語**](../jp/README.ja.md) | [**한국어**](../kr/README.ko.md) ([**韓國語**](../kr/README.ko.han.md)) | [**Français**](../fr/README.fr.md) | [**Türkçe**](../tr/README.tr.md) | [**Português**](../pt/README.pt.md)
|
|
|
|
|
|
|
|
|
|
|
|
> [示範映像](https://www.bilibili.com/video/BV1pm4y1z7Gm/)을 確認해 보세요!
|
|
|
|
|
|
|
|
|
|
|
|
> RVC를活用한實時間音聲變換: [w-okada/voice-changer](https://github.com/w-okada/voice-changer)
|
|
|
|
|
|
|
|
|
|
|
|
> 基本모델은 50時間假量의 高品質 오픈 소스 VCTK 데이터셋을 使用하였으므로, 著作權上의 念慮가 없으니 安心하고 使用하시기 바랍니다.
|
|
|
|
|
|
|
|
|
|
|
|
> 著作權問題가 없는 高品質의 노래를 以後에도 繼續해서 訓練할 豫定입니다.
|
|
|
|
|
|
|
|
|
|
|
|
## 紹介
|
|
|
|
|
|
本Repo는 다음과 같은 特徵을 가지고 있습니다:
|
|
|
|
|
|
+ top1檢索을利用하여 入力音色特徵을 訓練세트音色特徵으로 代替하여 音色의漏出을 防止;
|
|
|
|
|
|
+ 相對的으로 낮은性能의 GPU에서도 빠른訓練可能;
|
|
|
|
|
|
+ 적은量의 데이터로 訓練해도 좋은 結果를 얻을 수 있음 (最小10分以上의 低雜음音聲데이터를 使用하는 것을 勸獎);
|
|
|
|
|
|
+ 모델融合을通한 音色의 變調可能 (ckpt處理탭->ckpt混合選擇);
|
|
|
|
|
|
+ 使用하기 쉬운 WebUI (웹 使用者인터페이스);
|
2026-07-23 01:40:12 +08:00
|
|
|
|
+ pymss/MSST 모델을 利用하여 목소리와 背景音樂의 빠른 分離;
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
## 環境의 準備
|
|
|
|
|
|
|
|
|
|
|
|
이 브랜치는 **Python 3.12 x64**를 對象으로 합니다. 모든 命令은 저장소 根目錄에서 실행하세요. Ubuntu 24.04 x86_64를 권장합니다.
|
|
|
|
|
|
|
|
|
|
|
|
### Ubuntu 24.04
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-07-19 22:23:01 +08:00
|
|
|
|
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를 설치한 뒤 假想環境을 만드세요.
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
```powershell
|
|
|
|
|
|
py -3.12 -m venv .venv
|
|
|
|
|
|
.venv\Scripts\activate
|
|
|
|
|
|
python -m pip install --upgrade pip setuptools wheel
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
### 하드웨어別 依存性
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
| 하드웨어 | 設置 方法 |
|
|
|
|
|
|
| --- | --- |
|
|
|
|
|
|
| CPU, AMD, Intel | `requirments_cpu_py312.txt` 使用. Windows는 DirectML, Linux는 CPU 使用 |
|
|
|
|
|
|
| NVIDIA RTX 50 系列 | CUDA 12.8 Torch를 먼저 설치한 뒤 `requirments_cu128_py312.txt` 設置 |
|
|
|
|
|
|
| RTX 50 系列 以前 NVIDIA | CUDA 11.8 Torch를 먼저 설치한 뒤 `requirments_cu118_py312.txt` 設置 |
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
#### CPU, AMD, Intel
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
python -m pip install -r requirments_cpu_py312.txt
|
2026-07-19 21:17:17 +08:00
|
|
|
|
```
|
2026-07-19 22:23:01 +08:00
|
|
|
|
|
|
|
|
|
|
#### NVIDIA RTX 50 系列:2段階 設置
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-07-19 22:23:01 +08:00
|
|
|
|
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
|
2026-07-19 21:17:17 +08:00
|
|
|
|
```
|
|
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
#### RTX 50 系列 以前 NVIDIA:2段階 設置
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
Torch와 CUDA 狀態를 確認하세요.
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
|
|
|
|
|
```bash
|
2026-07-19 22:23:01 +08:00
|
|
|
|
python -c "import torch; print('torch:', torch.__version__); print('cuda:', torch.version.cuda); print('cuda available:', torch.cuda.is_available())"
|
|
|
|
|
|
```
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
|
|
|
|
|
|
### 패키지 來源
|
|
|
|
|
|
|
|
|
|
|
|
세 개의 `requirments_*.txt` 上端에 下載 來源이 있습니다. 공식 소스를 사용할 때는 `--index-url`과 `--extra-index-url`만 교체하고 버전, CUDA 접미사, 2段階 순서는 유지하세요.
|
|
|
|
|
|
|
|
|
|
|
|
| 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 모델 저장소](https://huggingface.co/lj1995/VoiceConversionWebUI/tree/main)에서 모델을 받고 다음 구조를 유지하세요.
|
|
|
|
|
|
|
|
|
|
|
|
```text
|
|
|
|
|
|
assets/
|
|
|
|
|
|
├── hubert_base/
|
|
|
|
|
|
│ ├── config.json
|
|
|
|
|
|
│ ├── preprocessor_config.json
|
|
|
|
|
|
│ └── pytorch_model.bin
|
|
|
|
|
|
├── rmvpe/rmvpe.pt
|
|
|
|
|
|
├── pretrained/
|
|
|
|
|
|
├── pretrained_v2/
|
2026-07-23 01:40:12 +08:00
|
|
|
|
├── pymss_weights/
|
2026-07-19 22:23:01 +08:00
|
|
|
|
├── 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
|
2026-07-23 01:40:12 +08:00
|
|
|
|
assets/pymss_weights/*
|
2026-07-19 22:23:01 +08:00
|
|
|
|
assets/weights/*.pth
|
|
|
|
|
|
assets/indices/*.index
|
|
|
|
|
|
logs/mute/*
|
|
|
|
|
|
```
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
### 모델 下載
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
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
|
|
|
|
|
|
|
2026-07-23 01:40:12 +08:00
|
|
|
|
# Required only for pymss/MSST vocal separation
|
2026-07-19 22:23:01 +08:00
|
|
|
|
hf download lj1995/VoiceConversionWebUI --revision main \
|
2026-07-23 01:40:12 +08:00
|
|
|
|
--include "pymss_weights/*" --local-dir assets
|
2026-07-19 22:23:01 +08:00
|
|
|
|
```
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
Windows AMD/Intel DirectML 환경에는 다음 파일도 필요합니다.
|
2026-07-19 21:17:17 +08:00
|
|
|
|
|
2026-07-19 22:23:01 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
hf download lj1995/VoiceConversionWebUI rmvpe.onnx --revision main \
|
|
|
|
|
|
--local-dir assets/rmvpe
|
2026-07-19 21:17:17 +08:00
|
|
|
|
```
|
2026-07-19 22:23:01 +08:00
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
### FFmpeg
|
|
|
|
|
|
|
|
|
|
|
|
위 Ubuntu 명령은 FFmpeg를 설치합니다. Windows에서는 다음 파일을 저장소 根目錄에 배치하세요.
|
|
|
|
|
|
|
|
|
|
|
|
- [ffmpeg.exe](https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/ffmpeg.exe?download=true)
|
|
|
|
|
|
- [ffprobe.exe](https://huggingface.co/lj1995/VoiceConversionWebUI/resolve/main/ffprobe.exe?download=true)
|
|
|
|
|
|
|
|
|
|
|
|
## WebUI 始作
|
|
|
|
|
|
|
2026-07-19 21:17:17 +08:00
|
|
|
|
```bash
|
|
|
|
|
|
python webui.py
|
|
|
|
|
|
```
|
2026-07-19 22:23:01 +08:00
|
|
|
|
|
|
|
|
|
|
화면이 없는 Ubuntu 서버:
|
|
|
|
|
|
|
|
|
|
|
|
```bash
|
|
|
|
|
|
python webui.py --noautoopen
|
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
基本 포트는 `7865`입니다. `.pth` 모델은 `assets/weights/`, `.index` 파일은 `assets/indices/`에 배치하세요.
|
2026-07-19 21:17:17 +08: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)
|
2026-07-23 01:40:12 +08:00
|
|
|
|
+ [pymss-project/pymss](https://github.com/pymss-project/pymss)
|
2026-07-19 21:17:17 +08:00
|
|
|
|
+ [audio-slicer](https://github.com/openvpi/audio-slicer)
|
|
|
|
|
|
## 모든寄與者분들의勞力에感謝드립니다
|
|
|
|
|
|
|
|
|
|
|
|
<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" />
|
|
|
|
|
|
</a>
|