From 1ccd5941e5f17a273dad681301a287aafb7973d9 Mon Sep 17 00:00:00 2001 From: acekagami <127201056+acekagami@users.noreply.github.com> Date: Tue, 25 Apr 2023 08:12:07 +0800 Subject: [PATCH] docs(readme_zh_cn): update README_zh_CN.md (#477) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Co-authored-by: 宇宇 <47858007+xieyumc@users.noreply.github.com> --- README_zh_CN.md | 132 +++++++++++++++++++++++++++++++++++------------- 1 file changed, 98 insertions(+), 34 deletions(-) diff --git a/README_zh_CN.md b/README_zh_CN.md index 8eb16b5b..24406827 100644 --- a/README_zh_CN.md +++ b/README_zh_CN.md @@ -30,30 +30,65 @@ License

-基于 [`so-vits-svc4.0(V1)`](https://github.com/svc-develop-team/so-vits-svc)的一个分支,支持实时推理和图形化推理界面。 +基于 [`so-vits-svc4.0(V1)`](https://github.com/svc-develop-team/so-vits-svc)的一个分支,支持实时推理和图形化推理界面,且兼容其模型。 ## 新功能 - **实时语音转换** (增强版本 v1.1.0) +- 与[`QuickVC`](https://github.com/quickvc/QuickVC-VoiceConversion)相结合 +- 修复了原始版本中对 [`ContentVec`](https://github.com/auspicious3000/contentvec) 的误用[^c] - 使用 CREPE 进行更准确的音高推测 -- 图形化界面 -- 统一命令行界面(无需运行 Python 脚本) -- 只需使用 `pip` 安装即可使用 +- 图形化界面和统一命令行界面 +- 相比之前双倍的训练速度 +- 只需使用 `pip` 安装即可使用,不需要安装 `fairseq` - 自动下载预训练模型和 HuBERT 模型 - 使用 black、isort、autoflake 等完全格式化的代码 -- 还有一些细微差别 + +[^c]: [#206](https://github.com/34j/so-vits-svc-fork/issues/206) ## 安装教程 ### 可以使用 bat 一键安装 + + Download .bat + + +### 本 bat 汉化基于英文版,对原版进行了一些本地工作和优化,如安装过程有问题,可以尝试安装原版 + Download .bat -### 手动安装: +### 手动安装 + +
+ 创建一个虚拟环境 -### [创建一个虚拟环境](https://github.com/34j/so-vits-svc-fork/wiki#creating-a-virtual-environment) +Windows: + +```shell +py -3.10 -m venv venv +venv\Scripts\activate +``` + +Linux/MacOS: + +```shell +python3.10 -m venv venv +source venv/bin/activate +``` + +Anaconda: + +```shell +conda create -n so-vits-svc-fork python=3.10 pip +conda activate so-vits-svc-fork +``` + +如果 Python 安装在 Program Files,在安装时未创造虚拟环境可能会导致`PermissionError` + +
### 安装 @@ -61,16 +96,13 @@ ```shell python -m pip install -U pip setuptools wheel -pip install -U torch torchaudio --index-url https://download.pytorch.org/whl/cu117 +pip install -U torch torchaudio --index-url https://download.pytorch.org/whl/cu118 pip install -U so-vits-svc-fork ``` -- 如果没有可用 GPU, 不需要执行 `pip install -U torch torchaudio --index-url https://download.pytorch.org/whl/cu117`. +- 如果没有可用 GPU 或使用 MacOS, 不需要执行 `pip install -U torch torchaudio --index-url https://download.pytorch.org/whl/cu118`. MPS 可能已经安装了. - 如果在 Linux 下使用 AMD GPU, 请使用此命令 `--index-url https://download.pytorch.org/whl/rocm5.4.2` - 替换掉 `--index-url https://download.pytorch.org/whl/cu117` . Windows 下不支持 AMD GPUs (#120). -- 如果 `fairseq` 报错: - - 如果提示 [`Microsoft C++ Build Tools`](https://visualstudio.microsoft.com/visual-cpp-build-tools/) 没有安装. 安装即可. - - 如果提示缺少 dll 文件, 重新安装 `Microsoft Visual C++ 2022` 和 `Windows SDK` 可能有用 + 替换掉 `--index-url https://download.pytorch.org/whl/cu118` . Windows 下不支持 AMD GPUs (#120). ### 更新 @@ -99,13 +131,13 @@ svcg - 实时转换 (输入源为麦克风) ```shell -svc vc --model-path +svc vc ``` - 从文件转换 ```shell -svc --model-path source.wav +svc infer source.wav ``` [预训练模型](https://huggingface.co/models?search=so-vits-svc-4.0) 可以在 HuggingFace 获得。 @@ -123,16 +155,22 @@ svc --model-path source.wav - 如果数据集有 BGM,请用例如[Ultimate Vocal Remover](https://ultimatevocalremover.com/)等软件去除 BGM. 推荐使用`3_HP-Vocal-UVR.pth` 或者 `UVR-MDX-NET Main` . [^1] +- 如果数据集是包含单个歌手的长音频文件, 使用 `svc pre-split` 将数据集拆分为多个文件 (使用 `librosa`). - 如果数据集是包含多个歌手的长音频文件, 使用 `svc pre-sd` 将数据集拆分为多个文件 (使用 `pyannote.audio`) 。为了提高准确率,可能需要手动进行分类。如果歌手的声线多样,请把 --min-speakers 设置为大于实际说话者数量. 如果出现依赖未安装, 请通过 `pip install pyannote-audio`来安装 `pyannote.audio`。 -- 如果数据集是包含单个歌手的长音频文件, 使用 `svc pre-split` 将数据集拆分为多个文件 (使用 `librosa`). [^1]: https://ytpmv.info/how-to-use-uvr/ -#### Google Colab +#### 云端 [![Open In Colab](https://colab.research.google.com/assets/colab-badge.svg)](https://colab.research.google.com/github/34j/so-vits-svc-fork/blob/main/notebooks/so-vits-svc-fork-4.0.ipynb) +[![Open In Paperspace](https://img.shields.io/badge/Open%20in-Paperspace-blue?style=flat-square&logo=paperspace)](https://console.paperspace.com/github/34j/so-vits-svc-fork-paperspace/blob/main/so-vits-svc-fork-4.0-paperspace.ipynb) +[![Paperspace Referral]()](https://www.paperspace.com/?r=9VJN74I)[^p] + +如果你无法获取 10GB 显存以上的显卡,对于轻量用户,推荐使用 Google Colab 的免费方案;而重度用户,则建议使用 Paperspace 的 Pro/Growth Plan。当然,如果你有高端的显卡,就没必要使用云服务了。 + +[^p]: If you register a referral code and then add a payment method, you may save about $5 on your first month's monthly billing. Note that both referral rewards are Paperspace credits and not cash. It was a tough decision but inserted because debugging and training the initial model requires a large amount of computing power and the developer is a student. #### 本地 @@ -148,11 +186,13 @@ svc train -t #### 注意 - 数据集的每个文件应该小于 10s,不然显存会爆。 -- 如果想要 f0 的推理方式为 CREPE, 用 `svc pre-hubert -fm crepe` 替换 `svc pre-hubert`. - 由于性能原因,可能需要减少 `--n-jobs` 。 -- 建议在执行 `train` 命令之前更改 `config.json` 中的 batch_size 以匹配显存容量。 默认值针对 Tesla - T4(16GB 显存)进行了优化,但没有那么多显存也可以进行训练。 +- 建议在执行 `train` 命令之前提高 `config.json` 中的 `batch_size` 以匹配显存容量。 将`batch_size`设为`auto-{init_batch_size}-{max_n_trials}`(或者只需设为`auto`)就会自动提高`batch_size`,直到爆显存为止(不过自动调高 batch_size 有概率失效) +- 如果想要 f0 的推理方式为 `CREPE`, 用 `svc pre-hubert -fm crepe` 替换 `svc pre-hubert`. +- 若想正确使用`ContentVec`,用 `-t so-vits-svc-4.0v1`替换`svc pre-config`。由于复用 generator weights,一些 weights 会被重置而导致训练时间稍微延长. +- 若要使用`MS-iSTFT Decoder`,用 `svc pre-config -t quickvc`替换 `svc pre-config`. - 在原始仓库中,会自动移除静音和进行音量平衡,且这个操作并不是必须要处理的。 +- 倘若你已经大规模训练了一个免费公开版权的数据集,可以考虑将其作为底模发布。 +- 对于更多细节(比如参数等),详见[Wiki](https://github.com/34j/so-vits-svc-fork/wiki) 或 [Discussions](https://github.com/34j/so-vits-svc-fork/discussions). ### 帮助 @@ -202,21 +242,46 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d - - - - - - - + + + + + + + - + - - - + + + + + + + + + + + + + + + + + + + + + + + + + + + +
34j
34j

💻 🤔 📖 💡 🚇 🚧 👀 ⚠️ 📣 🐛
GarrettConway
GarrettConway

💻 🐛 📖
BlueAmulet
BlueAmulet

🤔 💬 💻
ThrowawayAccount01
ThrowawayAccount01

🐛
緋

📖 🐛
Lordmau5
Lordmau5

🐛 💻
DL909
DL909

🐛
34j
34j

💻 🤔 📖 💡 🚇 🚧 👀 ⚠️ 📣 🐛
GarrettConway
GarrettConway

💻 🐛 📖 👀
BlueAmulet
BlueAmulet

🤔 💬 💻 🚧
ThrowawayAccount01
ThrowawayAccount01

🐛
緋

📖 🐛
Lordmau5
Lordmau5

🐛 💻 🤔 🚧 💬 📓
DL909
DL909

🐛
Satisfy256
Satisfy256

🐛
Satisfy256
Satisfy256

🐛
Pierluigi Zagaria
Pierluigi Zagaria

📓
ruckusmattster
ruckusmattster

🐛
Desuka-art
Desuka-art

🐛
heyfixit
heyfixit

📖
ruckusmattster
ruckusmattster

🐛
Desuka-art
Desuka-art

🐛
heyfixit
heyfixit

📖
Nerdy Rodent
Nerdy Rodent

📹
谢宇
谢宇

📖
ColdCawfee
ColdCawfee

🐛
sbersier
sbersier

🤔 📓 🐛
Meldoner
Meldoner

🐛
mmodeusher
mmodeusher

🐛
AlonDan
AlonDan

🐛
Likkkez
Likkkez

🐛
Duct Tape Games
Duct Tape Games

🐛
Xianglong He
Xianglong He

🐛
75aosu
75aosu

🐛
tonyco82
tonyco82

🐛
yxlllc
yxlllc

🤔 💻
outhipped
outhipped

🐛
escoolioinglesias
escoolioinglesias

🐛 📓 📹
Blacksingh
Blacksingh

🐛
Mgs. M. Thoyib Antarnusa
Mgs. M. Thoyib Antarnusa

🐛
Exosfeer
Exosfeer

🐛 💻
guranon
guranon

🐛 🤔 💻
Alexander Koumis
Alexander Koumis

💻
@@ -227,5 +292,4 @@ Thanks goes to these wonderful people ([emoji key](https://allcontributors.org/d -This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. -Contributions of any kind welcome! +This project follows the [all-contributors](https://github.com/all-contributors/all-contributors) specification. Contributions of any kind welcome!