声音克隆软件的技术原理(AI又进化了,声音克隆革命性突破)
大家好 ,我是 Jack 。
因 ChatGPT 、Stable Diffusion 让 AI 在文本 、图像生成领域火出了圈 。
但 AI 在生成方面的能力 ,可不仅如此 ,音频领域也出现了很多优秀的项目。
我用我本人的音频数据 ,训练了一个 AI 模型 ,生成了几段歌曲 ,效果已经在我最新一期的视频中展示了 ,感兴趣的可以看下:
https://www.bilibili.com/video/BV1x24y147yq
视频、教程制作不易 ,跪求三连支持 ,一个免费的赞也行~
勿用技术做恶
勿用技术做恶,必须放在第一个来说 。
请勿用该技术从事诈骗等违法行为 ,请遵守《互联网信息服务深度合成管理规定》等法律法规 。
本教程仅供交流学习使用 ,同时,本人也不提供任何人的训练好的音频模型 。
准备工作
视频里所使用的技术是 so-vits-svc ,是音频转音频 ,属于音色转换算法,支持正常的说话 ,也支持歌声的音色转换 。
项目不提供任何人的音频训练模型 ,所以想要体验 ,必须先自己训练模型 。
显卡建议使用 N 卡 ,且显存 8G 以上 ,我的显卡是 RTX 2060 S ,训练自己的模型大概用了 14 个小时 。
训练数据很关键 ,需要准备至少 1 个小时的音频 ,越多高质量的音频数据 ,效果越好 。
比如我的本次训练,就是使用了我往期视频的音频数据 ,数据时长 1 个小时 。
我家里的电脑是 Windows ,所以本教程以 Windows 为例进行讲解 。
我将项目所需要的代码 、环境 、工具,进行了打包 ,可以一键运行:
下载地址(网盘提取码:qi2p):
https://pan.baidu.com/s/1Jm-p_DZ2IVcNkkOYVULerg?pwd=qi2p
当然 ,也可以直接用作者开源的代码直接部署:
https://github.com/StarStringStudio/so-vits-svc
本项目不支持文本转音频,如果需要文本转音频 ,可以移步看看这个:
https://github.com/jaywalnut310/vits
准备干声数据
训练数据 、还有预测推理的数据 ,都必须是人物的干声。
也就是说 ,不能包括背景音 、伴奏 、合声等 ,所以无论是训练和预测 ,都需要对数据进行处理 。
这里用到的工具是 UVR5 ,我提供的整合包里包含了这个工具 。
在 Windows 下可以直接使用 ,打开软件 ,按照如下配置:
运行即可分离人声和伴奏:
然后再按照如下配置 ,去除合声:
有 Vocals_Vocals 后缀的音频就是处理后的,这个音频就可以用来训练。
不过因为音频太长 ,很容易爆显存 ,可以对音频文件进行切片,这个整合包里也提供了饮品切分工具 Audio Slicer ,直接运行 slicer-gui.exe 。
填写输入路径 ,填写输出路径,其它参数都默认即可 ,这样你就会得到切分好的音频段 。
在项目的 so-vits-svc-4.0/dataset_raw 目录下创建一个文件夹 ,比如我的是 jackcui_processed ,将处理好的数据放到里面:
这样数据的准备工作 ,手动配置的部分就完成了。
训练模型
数据预处理
接下来可以直接运行我提供的整合包里的脚本 1 、数据预处理.bat 。
这个脚本就是按照步骤 ,运行各个 py 脚本:
大约跑个几分钟 ,就能处理完成 ,处理完毕后 ,会在 datset/44k 下生成一个文件夹 ,里面的数据如下图所示:
模型训练
直接运行 2 、训练.bat 即可开启训练 。
如果你的显卡够好,可以增加 batch_size 提高训练速度 ,对应的配置文件在 configs/config.json 文件里 。
这个训练时间很长 ,大概需要几个小时的时间 。
推理预测
推理预测同理,新运行 3 、训练聚类模型.bat 生成数据 pt 文件 。几分钟即可跑完 。
然后修改 app.py 里的这一行:
训练好的模型存放在了 logs/44k 目录下 ,这里改为你训练好的模型地址 ,以及对应的配置文件,最后是第三步生成的 pt 文件路径 。
记住这里 app.py 必须改好 ,否则第四步会报错 。
最后运行 4 、推理预测.bat 文件 。
程序会直接开启一个 webui ,将开启的 url ,直接复制到浏览器地址栏中打开即可。
就是一个简单的 Web 页面 ,里面的参数 ,可以直接使用默认的 ,放入一个音频 ,即可转换音色 ,很简单 ,这里就不展示了 。
确认流程都跑通后,可以试着调整一些参数 ,个人影响太大 ,主要还是看训练数据,也就是用软件分离的干声质量 。
最后
最后也再强调一下 ,请勿用技术做恶!
我的训练数据 ,只用了往期视频的音频文件,数据丰富度很差 ,都是叙事的语调 ,缺少高低音的歌唱数据。
所以效果上 ,高低起伏的变化少了 ,听起来就是 ,全是技巧 ,莫得感情 。
但是如果用于普通对话的音色转换 ,绝对是够用了 。
视频结尾也展示了一个惊艳一些的效果 ,歌手的数据就丰富很多了 ,所以效果更好。
创心域SEO版权声明:以上内容作者已申请原创保护,未经允许不得转载,侵权必究!授权事宜、对本内容有异议或投诉,敬请联系网站管理员,我们将尽快回复您,谢谢合作!