在这篇文章中记录一下模型训练和声音克隆流程

1 前言

  1. 项目开源地址:https://github.com/RVC-Boss/GPT-SoVITS
  2. 官方中文教程文档:https://www.yuque.com/baicaigongchang1145haoyuangong/ib3g1e
  3. 准备:wav 格式的音频,训练需要 不少于 6G 显存,推理需要 不少于 4G 显存。
  4. 整合包:https://www.123pan.com/s/5tIqVv-GVRcv.html

更新:下载 main 代码,用 GPT-SoVITS-main 里的文件替换整合包中的文件;

2 人声伴奏分离

2.1 提取人声

在 urv5 操作界面中选择输入音频路径、输出文件夹路径、格式勾选 wav、处理算法 MDX-Net、模型 Bs-Roformer-Viperx-1297、勾选 GPU Conversion和 Vocals Only,其他保持默认。设置好后,点击 Process Progress,进行人声提取。

image

如果有报错:An Error Occurred: ZeroDivisionError

原因:输入的多个音频中有几个音频的时长太短。

2.2 去混响

UVR-De-Echo-Normal(轻度混响)、勾选 No Echo Only(只保留没有混响的),其他保持不变。

![image](https://github.com/AlanFox240416/wplinote/assets/167155570/17d39155-2ec4-47d8-9a73-296856628b46)

</p>
</details> 

2.3 降躁

选择 No Echo 的音频作为输入音频、选择输出文件夹路径、模型改为 UVR-DeNoise,取消勾选 Noise only,其他保持不变。

image

2.4 音频调峰

音频增益,圈中的峰值振幅是最大音频的分贝,调整增益值使峰值在 -9dB到-6dB 之间。

image

3 算力互联

3.1 创建实例

点击社区镜像-圈中输入“GPT-SoVITS”,搜索到冷鸟鸟的镜像,点击进入创建实例界面。

image

实例名称:gsv,选择 N-3090-24(24G 显存)和 1卡,勾选同意《服务端口使用承诺书》,其他保持默认。

image

3.2 运行实例

等待实例部署完成,点击 Jupyter,进入笔记本界面。

image

4 音频切割(制作数据集)

4.1 上传音频

4.2 启动Web-UI

4.2 切割

4 标注音频(给数据集打标)

4.1 自动打标

保持默认不变,点击开启离线批量 ASR

image

先等待 ASR 完成(ASR 进程结束),再勾选下面的开启打标 WebUI。

4.2 人工校对

5 训练模型

5.1 数据集格式化

点击 1-GPT-SoVITS-TTS,输入模型名称,点击 1A-训练集格式化工具,保持默认设置不变,点击开启一键三连。

image

5.2 微调训练

先点击 SoVITS 训练,等 SoVITS 训练结束后再点击 GPT 训练。

!image

5.3 下载模型

  1. 算力互联需要,本地直接推理即可;

  2. 训练完成后点击中断按钮,中断 Web-UI;

  3. 运行打包模型的代码,运行完成后显示“打包完成”;

  4. 进入/fssd/workdir/GPT-SoVITS/文件夹路径下,找到 GPT_ SoVITS_ pack.zip,右键下载。

    流程示意图如下

    image

  5. 下载结束后,回到算力互联,点击删除实例。

6 本地推理

  1. 将GPT模型(ckpt 后缀)放入 GPT_weights 文件夹,SoVITS 模型(pth 后缀)放入 SoVITS_weights文件夹;

  2. 双击整合包中的 go-webui.bat等待 Web-UI 自动打开;

  3. 点击 1-GPT-SoVITS-TTS,再点击 1C-推理,刷新模型路径,选择对应模型;

  4. 勾选开启 TTS 推理 WebUI,等待打开推理界面。

    选择 GPT 模型和 SoVITS 模型,上传参考音频(小于10s,没有会报错),输入参考音频的文本,输入需要合成的文本,点击合成语音。

    image

  5. 合成语音时间过长,注意一下终端,是否有进行推理,或者报错。

转载请注明出处