基于 so-vits-svc 的 AI 音声训练

让我们从 git clone 开始:

1
git clone https://github.com/svc-develop-team/so-vits-svc.git

下载模型及相关文件

🔗 checkpoint_best_legacy_500.pt
放在 pretrain 文件夹下
🔗 nsf_hifigan_20221211.zip
解压后,将四个文件放在 pretrain/nsf_hifigan 文件夹下
🔗 fcpe.pt
放在 pretrain 文件夹下
🔗 rmvpe.pt
放在 pretrain 文件夹下
🔗 D_0.pth
放在 logs/44k 文件夹下
🔗 G_0.pth
放在 logs/44k 文件夹下

数据准备与预处理

首先,你需要准备来自同一人声的 数小时 长的音频,质量越高越好。

然后进行切片,使用 audio-slicer

🔗 GitHub Release

在其界面中,选中你的音频。

如果是普通人声,可以直接以默认参数开始切片;

如果是歌声,可以将 Minimum Interval 调整到 100 或者 50。

然后,手动去除其中过长或过短的部分,保持每个音频切片都在 5-15s 之间。

回到 so-vits-svc 项目文件夹,将切片放入 dataset_raw/{歌手名} 文件夹中,然后运行:

1
2
3
4
pip install -r requirements.txt
python resample.py
python preprocess_flist_config.py --vol_aug
python preprocess_hubert_f0.py --f0_predictor dio

训练

1
python train.py -c configs/config.json -m 44k

注意:训练开始之后,你可以随时停止并测试当前 checkpoint 的模型。

推理

将原音频放在 raw 文件夹下,然后:

1
python inference_main.py -m "logs/44k/G_30400.pth" -c "configs/config.json" -n "src.wav" -t 0 -s "zack"

效果

本作品 [页面标题] 创作,采用 CC BY-NC-SA 4.0