查看: 6267|回复: 19

[AI变声器]RVC AI 实时变声器,可变任何声音,保姆级别使用教程

[复制链接]
  • 打卡等级:本地老炮
  • 打卡总天数:454
  • 打卡月天数:0
  • 打卡总奖励:7441
  • 最近打卡:2023-12-13 12:11:15

该用户从未签到

7414

主题

7494

帖子

3万

积分

官方小组

积分
32088

优秀版主热心会员活跃会员最佳新人乐于助人认证作者在线狂人优秀版主荣耀管理辅助先锋原创先锋发主题奖发帖勋章精品主题

发表于 2023-5-10 13:35:58 | 显示全部楼层 |阅读模式
He*** 2023-5-10 13:35:58 6267 19 显示全部楼层
b219bd25af819f0bb13a4213f9daf60e4fec9724.jpg

download.jpg

一个基于VITS的简单易用的语音转换(变声器)框架,算法相关经验和成果是b站花儿不哭和Rcell经过半年时间做了上百组实验得出的当前的最优解,注意需要N卡才能玩,A卡目前只能战未来Github

特点
@入梦增强版
1 对AI变声集成了VB-audio虚拟MME麦克风,可以实时输出
2 对RVC增强了模型地址,减少加载工作量

相比于传统变声器优点
1 AI变声不吃个人声线,只需要清晰的说化即可,传统变声器只能根据个人声线进行变化
2 可以训练模型,加载各种声线,语气声线多样化
相比于传统变声器缺点
1 延迟太高,通常都是1-5秒以上,传统变声器最低可以无延迟
2 咬字不清晰,气息非常奇怪,感情波动就会失真,非常吃模型的音源
3 吃配置较高,需要CPU和GPU双重占用,配置低就无法使用,RVC目前只能兼容N卡
4 兼容性还是太差了,AI变声目前还不成熟,闪退稳定性有待优化

博主观点
1 使用的时候建议独立声卡或者麦克风,耳机噪音过大会非常影响到AI变声效果,麦克风音质越好,效果越好
2 对CPU和GPU双重资源的压力,部分配置低的用户可能带不动,建议有独立显卡在使用
3 延迟太高,如果使用MME协议输出,延迟在2秒到6秒,如果麦克风音质太低,设置低延迟声音会卡顿
4 说话的时候不能大喊大叫,必须平稳说话,否则声音就变成气音
5 打游戏还是不行的,因为延迟太高,如果说话过快会覆盖下一句话,不能情绪过于激动不然也会变成气音
6 只是发短语音消息而非实时通话,声音还是非常棒的,颠覆了我对于AI变声的印象,科技使人进步

简介
使用top1检索替换输入源特征为训练集特征来杜绝音色泄漏
即便在相对较差的显卡上也能快速训练
使用少量数据进行训练也能得到较好结果(推荐至少收集10分钟低底噪语音数据)
可以通过模型融合来改变音色(借助ckpt处理选项卡中的ckpt-merge)
简单易用的网页界面
可调用UVR5模型来快速分离人声和伴奏

常见问题解答
Q1:ffmpeg error/utf8 error.
大概率不是ffmpeg问题,而是音频路径问题;
ffmpeg读取路径带空格、()等特殊符号,可能出现ffmpeg error;训练集音频带中文路径,在写入filelist.txt的时候可能出现utf8 error;
Q2:一键训练结束没有索引
显示"Training is done. The program is closed."则模型训练成功,后续紧邻的报错是假的;
一键训练结束完成没有added开头的索引文件,可能是因为训练集太大卡住了添加索引的步骤;已通过批处理add索引解决内存add索引对内存需求过大的问题。临时可尝试再次点击"训练索引"按钮。
Q3:训练结束推理没看到训练集的音色
点刷新音色再看看,如果还没有看看训练有没有报错,控制台和webui的截图,logs/实验名下的log,都可以发给开发者看看。
Q4:如何分享模型
rvc_root/logs/实验名 下面存储的pth不是用来分享模型用来推理的,而是为了存储实验状态供复现,以及继续训练用的。用来分享的模型应该是weights文件夹下大小为60+MB的pth文件;
后续将把weights/exp_name.pth和logs/exp_name/added_xxx.index合并打包成weights/exp_name.zip省去填写index的步骤,那么zip文件用来分享,不要分享pth文件,除非是想换机器继续训练;
如果你把logs文件夹下的几百MB的pth文件复制/分享到weights文件夹下强行用于推理,可能会出现f0,tgt_sr等各种key不存在的报错。你需要用ckpt选项卡最下面,手工或自动(本地logs下如果能找到相关信息则会自动)选择是否携带音高、目标音频采样率的选项后进行ckpt小模型提取,提取完在weights文件夹下会出现60+MB的pth文件,刷新音色后可以选择使用。
Q5:Connection Error.
也许你关闭了控制台(黑色窗口)。
Q6:WebUI弹出Expecting value: line 1 column 1 (char 0).
请关闭系统局域网代理/全局代理。
这个不仅是客户端的代理,也包括服务端的代理(例如你使用autodl设置了http_proxy和https_proxy学术加速,使用时也需要unset关掉)
Q7:不用WebUI如何通过命令训练推理
训练脚本:
可先跑通WebUI,消息窗内会显示数据集处理和训练用命令行;
推理脚本:
https://huggingface.co/lj1995/VoiceConversionWebUI/blob/main/myinfer.py
例子:
runtime\python.exe myinfer.py 0 "E:\codes\py39\RVC-beta\todo-songs\1111.wav" "E:\codes\py39\logs\mi-test\added_IVF677_Flat_nprobe_7.index" harvest "test.wav" "weights/mi-test.pth" 0.6 cuda:0 True
f0up_key=sys.argv[1]
input_path=sys.argv[2]
index_path=sys.argv[3]
f0method=sys.argv[4]#harvest or pm
opt_path=sys.argv[5]
model_path=sys.argv[6]
index_rate=float(sys.argv[7])
device=sys.argv[8]
is_half=bool(sys.argv[9])
Q8:Cuda error/Cuda out of memory.
小概率是cuda配置问题、设备不支持;大概率是显存不够(out of memory);
训练的话缩小batch size(如果缩小到1还不够只能更换显卡训练),推理的话酌情缩小config.py结尾的x_pad,x_query,x_center,x_max。4G以下显存(例如1060(3G)和各种2G显卡)可以直接放弃,4G显存显卡还有救。
Q9:total_epoch调多少比较好
如果训练集音质差底噪大,20~30足够了,调太高,底模音质无法带高你的低音质训练集
如果训练集音质高底噪低时长多,可以调高,200是ok的(训练速度很快,既然你有条件准备高音质训练集,显卡想必条件也不错,肯定不在乎多一些训练时间)
Q10:需要多少训练集时长
推荐10min至50min
保证音质高底噪低的情况下,如果有个人特色的音色统一,则多多益善
高水平的训练集(精简+音色有特色),5min至10min也是ok的,仓库作者本人就经常这么玩
也有人拿1min至2min的数据来训练并且训练成功的,但是成功经验是其他人不可复现的,不太具备参考价值。这要求训练集音色特色非常明显(比如说高频气声较明显的萝莉少女音),且音质高;
1min以下时长数据目前没见有人尝试(成功)过。不建议进行这种鬼畜行为。
Q11:index rate干嘛用的,怎么调(科普)
如果底模和推理源的音质高于训练集的音质,他们可以带高推理结果的音质,但代价可能是音色往底模/推理源的音色靠,这种现象叫做"音色泄露";
index rate用来削减/解决音色泄露问题。调到1,则理论上不存在推理源的音色泄露问题,但音质更倾向于训练集。如果训练集音质比推理源低,则index rate调高可能降低音质。调到0,则不具备利用检索混合来保护训练集音色的效果;
如果训练集优质时长多,可调高total_epoch,此时模型本身不太会引用推理源和底模的音色,很少存在"音色泄露"问题,此时index_rate不重要,你甚至可以不建立/分享index索引文件。
Q11:推理怎么选gpu
config.py文件里device cuda:后面选择卡号;
卡号和显卡的映射关系,在训练选项卡的显卡信息栏里能看到。
Q12:如何推理训练中间保存的pth
通过ckpt选项卡最下面提取小模型。

游客,如果您要查看本帖隐藏内容请回复



回复

使用道具 举报

  • 打卡等级:热心大叔
  • 打卡总天数:101
  • 打卡月天数:0
  • 打卡总奖励:1286
  • 最近打卡:2023-12-24 19:33:38

该用户从未签到

0

主题

117

帖子

1810

积分

金牌会员

Rank: 6Rank: 6

积分
1810
发表于 2023-5-10 16:46:57 | 显示全部楼层
蓝白*** 2023-5-10 16:46:57 显示全部楼层
自打看了楼主的帖子,腰不酸背不疼,一口气上二楼
回复

使用道具 举报

  • 打卡等级:热心大叔
  • 打卡总天数:166
  • 打卡月天数:0
  • 打卡总奖励:2019
  • 最近打卡:2024-03-30 12:04:09

该用户从未签到

0

主题

193

帖子

2887

积分

金牌会员

Rank: 6Rank: 6

积分
2887
发表于 2023-5-10 17:40:24 | 显示全部楼层
杰*** 2023-5-10 17:40:24 显示全部楼层
入梦软件,他有官网免费下载,还有资源整合。
回复

使用道具 举报

  • 打卡等级:热心大叔
  • 打卡总天数:154
  • 打卡月天数:0
  • 打卡总奖励:1953
  • 最近打卡:2023-10-19 21:55:23

该用户从未签到

0

主题

98

帖子

2553

积分

金牌会员

Rank: 6Rank: 6

积分
2553
发表于 2023-5-10 18:46:52 | 显示全部楼层
anra*** 2023-5-10 18:46:52 显示全部楼层
搞G上七散提问下资源
回复

使用道具 举报

  • 打卡等级:常驻代表
  • 打卡总天数:32
  • 打卡月天数:0
  • 打卡总奖励:401
  • 最近打卡:2023-07-22 08:38:44

该用户从未签到

1

主题

45

帖子

636

积分

高级会员

Rank: 4

积分
636
发表于 2023-5-10 22:33:13 | 显示全部楼层
ll*** 2023-5-10 22:33:13 显示全部楼层
好贴支持!
回复

使用道具 举报

  • 打卡等级:小镇青年
  • 打卡总天数:70
  • 打卡月天数:1
  • 打卡总奖励:848
  • 最近打卡:2024-04-11 08:47:13

该用户从未签到

1

主题

81

帖子

1259

积分

金牌会员

Rank: 6Rank: 6

积分
1259
发表于 2023-5-11 13:10:03 | 显示全部楼层
Dem*** 2023-5-11 13:10:03 显示全部楼层
好贴支持!
回复

使用道具 举报

  • 打卡等级:即来则安
  • 打卡总天数:16
  • 打卡月天数:0
  • 打卡总奖励:259
  • 最近打卡:2023-06-18 20:30:24

该用户从未签到

0

主题

45

帖子

459

积分

中级会员

Rank: 3Rank: 3

积分
459
发表于 2023-5-16 10:59:30 | 显示全部楼层
6036*** 2023-5-16 10:59:30 显示全部楼层
感谢楼主,好人一生平安
回复

使用道具 举报

  • 打卡等级:常驻代表
  • 打卡总天数:47
  • 打卡月天数:0
  • 打卡总奖励:531
  • 最近打卡:2024-01-22 18:13:21

该用户从未签到

1

主题

219

帖子

1122

积分

金牌会员

Rank: 6Rank: 6

积分
1122
发表于 2023-5-19 08:55:41 | 显示全部楼层
辉夜*** 2023-5-19 08:55:41 显示全部楼层
自打看了楼主的帖子,腰不酸背不疼,一口气上二楼
回复

使用道具 举报

  • 打卡等级:热心大叔
  • 打卡总天数:101
  • 打卡月天数:0
  • 打卡总奖励:1182
  • 最近打卡:2024-02-12 22:46:50

该用户从未签到

0

主题

129

帖子

1809

积分

金牌会员

Rank: 6Rank: 6

积分
1809
发表于 2023-5-21 10:58:35 | 显示全部楼层
23667*** 2023-5-21 10:58:35 显示全部楼层
自打看了楼主的帖子,腰不酸背不疼,一口气上二楼
回复

使用道具 举报

  • 打卡等级:热心大叔
  • 打卡总天数:213
  • 打卡月天数:0
  • 打卡总奖励:2891
  • 最近打卡:2024-02-22 13:10:35

该用户从未签到

1

主题

247

帖子

3914

积分

论坛元老

Rank: 8Rank: 8

积分
3914
发表于 2023-7-2 20:26:42 | 显示全部楼层
以*** 2023-7-2 20:26:42 显示全部楼层
遇见神贴岂能不顶
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 马上注册

本版积分规则 返回列表 发新帖

老铁,赶快加入我们吧!
X
快速回复 返回顶部 返回列表