基于so-vits-svc的开源项目教程
1. 项目介绍
so-vits-svc 是一个基于 vits 和 softvc 的歌声音色转换模型。该模型可以通过 SoftVC 内容编码器提取源音频的语音特征,并与 F0 同时输入 VITS 替换原本的文本输入,从而达到歌声转换的效果。此外,项目还采用了 NSF HiFiGAN 声码器来解决断音问题。
2. 项目快速启动
以下是快速启动项目的步骤:
环境准备
确保已经安装了 Python 和 pip。项目依赖的 Python 库可以在 requirements.txt
文件中找到。
pip install -r requirements.txt
数据准备
将数据集放入 dataset_raw
目录,数据集的结构应为:
dataset_raw
├───speaker0
│ ├───xxx1-xxx1.wav
│ ├───...
│ └───Lxx-0xx8.wav
└───speaker1
├───xx2-0xxx2.wav
├───...
└───xxx7-xxx007.wav
数据预处理
执行以下命令对数据进行预处理:
python resample.py
python preprocess_flist_config.py
python preprocess_hubert_f0.py
模型训练
使用以下命令开始训练模型:
python train.py -c configs/config.json -m 32k
模型推理
将待转换的音频放入 raw
文件夹,然后执行以下命令进行推理:
python inference_main.py
确保在 inference_main.py
中正确设置了 model_path
、clean_names
、trans
和 spk_list
等参数。
3. 应用案例和最佳实践
- 数据集准备:确保使用的数据集已经获得了合法授权,避免使用未经授权的数据集进行训练。
- 模型训练:针对不同说话人的模型,建议训练单说话人模型以获得更接近目标音色的效果。
- 模型推理:在推理时,注意调整音频的变调半音数量以及合成的说话人名称。
4. 典型生态项目
目前,so-vits-svc 社区维护了一个相关仓库 so-vits-svc
,用于接手维护 sovits 项目。此外,还有 SoftVitsResearch
仓库,用于开发一些更复杂的功能,如面向 Onnx 端的 MoeSS 等。开发者可以参考这些项目以获取更多关于 so-vits-svc 的信息和资源。