当前位置:   article > 正文

基于So-VITS-SVC4.0声音克隆_so-vits-svc 4.0 亚音

so-vits-svc 4.0 亚音

So-VITS-SVC声音克隆项目是一项开源离线项目,SVC Develop Team的所有成员以及本项目的开发者和维护者对本项目没有控制权。项目贡献者从未向任何组织和个人提供任何形式的帮助,包括但不限于数据集提取、数据集处理、计算支持、训练支持、推理等。此外,项目贡献者也无法得知用户使用该项目的目的是什么。因此,所有基于本项目训练的 AI 模型和合成音频与本项目贡献者无关,由此产生的任何问题均由用户自行承担。

警告:请务必解决数据集授权问题,禁止使用未经授权的数据集进行训练!任何因使用未经授权的数据集进行训练造成的问题,需自行承担全部责任和后果!与本文、本仓库、仓库维护者、SvcDevelopTeam无关!

  1. 本项目旨在促进学术交流和学习,仅供非生产环境使用。
  2. 任何基于so-vits制作的视频发布到视频平台上,都必须在简介中明确说明输入源歌声或音频,例如使用他人发布的视频/音频分离人声作为输入源进行转换的,必须提供明确的原视频、音乐链接;若使用自己的人声或使用其他歌声合成引擎合成的声音作为输入源进行转换的,也必须在简介中进行说明。
  3. 由于输入源造成的侵权问题需自行承担全部责任和一切后果。如果使用其他商用歌声合成软件作为输入源,请确保遵守该软件的使用条例,许多歌声合成引擎使用条例明确指出不可将其用作输入源进行转换!
  4. 继续使用视为已同意本仓库README所述相关条款,本仓库README已进行劝导义务,不对后续可能存在问题负责。
  5. 如果将本仓库代码进行二次分发,或公开发表任何由此项目产生的结果(包括但不限于在视频网站上发布),请注明原作者及代码来源(本仓库)。
  6. 如果将此项目用于任何其他企划,请提前联系并告知本仓库作者,我们将不胜感激。

在这里插入图片描述

模型简介

歌声音色转换模型,基于SoftVC内容编码器提取源音频语音特征,与F0一起输入到VITS中替换原本的文本输入,实现歌声转换的效果。同时更换声码器为 NSF HiFiGAN 解决断音问题。

Python 版本

Python 3.8.9 版本能够稳定地运行该项目。

版本更新内容

  • 该项目为一键整合包,无语安装python。
  • 特征输入更换为 Content Vec
  • 统一使用44100hz采样率以确保音频质量的一致性。
  • 通过更改hop size等参数和简化部分模型结构,成功降低了推理所需显存占用。4.0版本的44khz显存占用量甚至小于3.0版本的32khz。
  • 对部分代码结构进行了调整以提高整体代码的可读性和可维护性。
  • 数据集制作、训练过程与3.0版本保持一致,但模型完全不通用,数据集也需要重新预处理。
  • 新增了可选项1:vc模式可自动预测音高f0,即在进行语音转换时不需要手动输入变调key,男女声的调能够自动转换,但该模式仅适用于语音转换,转换歌声会导致音高不准确。
  • 新增了可选项2:通过kmeans聚类方案减小音色泄漏,让音色更加接近目标音色。

模型数据

预先下载的模型文件

  • hubert 目录下的checkpoint_best_legacy_500.pt文件,整合包中已存在无需手动下载。
  • logs/44k 目录下预训练底模文件: G_0.pth、D_0.pth,整合包中已存在无需手动下载,也可以自行训练创建。

数据集准备

仅需要以下文件结构将数据集放入dataset_raw目录即可,其中speaker0,speaker1可以用人名代替。

这里强烈建议使用UVR5进行声音的提取预处理操作,如果有不会操作的请查看该文章对应的视频。

dataset_raw
├───speaker0
│   ├───xxx1-xxx1.wav
│   ├───...
│   └───Lxx-0xx8.wav
└───speaker1
    ├───xx2-0xxx2.wav
    ├───...
    └───xxx7-xxx007.wav
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9

可以自定义说话人名称

dataset_raw
└───one_person
    ├───1.wav
    ├───...
    └───xxxx_(Vocals).wav
  • 1
  • 2
  • 3
  • 4
  • 5

数据预处理

  1. 重采样至44100Hz单声道。
python resample.py
  • 1
  1. 自动划分训练集、验证集,以及自动生成配置文件。
python preprocess_flist_config.py
  • 1
  1. 生成hubert与f0。
python preprocess_hubert_f0.py
  • 1

执行完以上步骤后 dataset 目录便是预处理完成的数据,可以删除 dataset_raw 文件夹了。

4.参数修改config.json

  • keep_ckpts:训练时保留最后几个模型,0为保留所有,默认只保留最后3

  • all_in_mem:加载所有数据集到内存中,某些平台的硬盘IO过于低下、同时内存容量 远大于 数据集体积时可以启用

模型训练

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

命令行模型推理

使用 inference_main.py

# 例
python inference_main.py -m "logs/44k/G_xxxxx.pth" -c "configs/config.json" -n "xxxxxx.wav" -t 0 -s "speaker0"
  • 1
  • 2

必填项部分

  • -m | --model_path:模型路径。
  • -c | --config_path:配置文件路径。
  • -n | --clean_names:wav 文件名列表,放在 raw 文件夹下。
  • -t | --trans:音高调整,支持正负(半音)。
  • -s | --spk_list:合成目标说话人名称。
  • -cl | --clip:音频强制切片,默认0为自动切片,单位为秒/s。

可选项部分:部分具体见下一节

  • -lg | --linear_gradient:两段音频切片的交叉淡入长度,如果强制切片后出现人声不连贯可调整该数值,如果连贯建议采用默认值0,单位为秒。
  • -fmp | --f0_mean_pooling:是否对F0使用均值滤波器(池化),对部分哑音有改善。注意,启动该选项会导致推理速度下降,默认关闭。
  • -a | --auto_predict_f0:语音转换自动预测音高,转换歌声时不要打开这个会严重跑调。
  • -cm | --cluster_model_path:聚类模型路径,如果没有训练聚类则随便填。
  • -cr | --cluster_infer_ratio:聚类方案占比,范围0-1,若没有训练聚类模型则默认0即可。

推理优化 自动f0预测

4.0模型训练过程会训练一个f0预测器,对于语音转换可以开启自动音高预测,如果效果不好也可以使用手动的,但转换歌声时请不要启用此功能!!!会严重跑调!!

在inference_main.py中设置auto_predict_f0为true即可。

推理优化 聚类音色泄漏控制

聚类方案可以减小音色泄漏,使得模型训练出来更像目标的音色,但是单纯的聚类方案会降低模型的咬字清晰度。本模型采用了一种融合的方式,可以线性控制聚类方案与非聚类方案的占比,也就是可以手动在“像目标音色”和“咬字清晰”之间调整比例,找到合适的折中点。

使用聚类前面的已有步骤不用进行任何变动,只需要额外训练一个聚类模型。虽然聚类方案的效果比较有限,但训练成本也比较低。

训练过程:

  • 使用cpu性能较好的机器训练,据我的经验在腾讯云6核cpu训练每个speaker需要约4分钟即可完成训练。
  • 执行python cluster/train_cluster.py ,模型的输出会在 logs/44k/kmeans_10000.pt。

推理过程:

  • inference_main中指定cluster_model_path。
  • nference_main中指定cluster_infer_ratio,0为完全不使用聚类,1为只使用聚类,通常设置0.5即可。

推理优化 F0均值滤波

介绍:对F0进行均值滤波,可以有效的减少因音高推测波动造成的哑音(由于混响或和声等造成的哑音暂时不能消除)。该功能在部分歌曲上提升巨大,如果歌曲推理后出现哑音可以考虑开启。

在inference_main中设置f0_mean_pooling为true即可。

云端项目地址

如果自己机器配置不够训练该模型可以考虑使用colab进行尝试。

sovits4_for_colab.ipynb

WebUI 使用操作

具体使用方法参考视频操作。

训练更加简单,无需输入代码。

请添加图片描述
参数可视化调配。

请添加图片描述
一键断点训练模型。

请添加图片描述
模型推理更多参数可供选择。

请添加图片描述

【分享】so-vits-svc-4.0

百度网盘
百度网盘
夸克网盘 提取码:4GBw
夸克网盘 提取码:JdST

本文内容由网友自发贡献,转载请注明出处:https://www.wpsshop.cn/w/盐析白兔/article/detail/204914
推荐阅读
相关标签
  

闽ICP备14008679号