本教程涵盖了从识别正确文件到在 WebUI 或实时界面中配置参数的核心步骤。
1. 模型文件准备(识别正确的文件)
在开始使用之前,必须区分"训练断点"和"推理模型"。
- 推理模型(Weights):这是用于分享和变声的最终文件,通常存放在
weights文件夹下,大小约为 60MB+。 - 训练断点(Logs):存放在
logs/实验名称文件夹下的 pth 文件(几百 MB)仅用于继续训练,强行用于推理可能会导致报错(如缺少 f0 或采样率信息)。 - 索引文件(Index):文件名通常为
added_XXX.index,存放在logs/实验名称下。它记录了训练集的特征,用于减少"音色泄漏"。
2. 在 WebUI 中加载模型
- 放置文件:将
.pth模型文件放入 RVC 根目录的weights文件夹,将.index文件放入logs对应的实验文件夹中。 - 刷新列表:启动
go-web.bat后,在"推理"选项卡点击"刷新音色列表"。 - 选择音色:在下拉菜单中选中你的模型文件。如果模型加载正确,系统会自动检测其版本(v1 或 v2)和采样率。
3. 核心参数配置指南
为了获得最佳变声效果,需要根据源音频调整以下参数:
变调(f0up_key)
如果是男声转女声,通常加 12(一个八度);女声转男声则减 12。
音高提取算法
- RMVPE:强烈推荐。它是目前最强的开源模型,不仅抗噪能力强,且资源消耗比 Crepe 更低,能有效解决"哑音"问题。
- Harvest/PM:传统算法,适合特定场景但处理速度较慢。
检索比例(Index Rate)
- 作用:用于缓解"音色泄漏"。
- 调节建议:如果设置为 1,音色最接近训练集,但如果训练集质量差,可能会导致音质下降;设置为 0 则不使用检索功能。如果训练数据非常优质,索引文件的影响会减小。
4. 实时变声使用(go-realtime-gui)
如果你需要在直播或语音通话中使用:
- 启动:双击运行
go-realtime-gui.bat开启实时变声迷你界面。 - 输入输出设置:关键点是输入和输出设备必须选择相同的类型(如均为 MME 或均为 ASIO)。
- 延迟优化:RVC 默认端到端延迟约为 170ms。如果使用支持 ASIO 的驱动,可以将延迟压低至 90ms。
5. 常见问题排查
- 找不到模型:如果点击刷新后仍无模型,请检查文件是否确实在
weights文件夹内,并检查控制台是否有报错信息。 - 显存溢出(Cuda error):如果在推理时遇到显存不足,可以在
config.py中尝试调小x_pad、x_query等缓存参数。 - 连接错误:如果 WebUI 弹出
Expecting value: line 1 column 1,请关闭系统全局代理/LAN 代理并刷新页面。
6. 进阶:从小模型提取
如果你只有训练过程中的大型 logs 文件,可以使用 WebUI 底部的 "ckpt 处理" (ckpt processing) 选项卡。在这里你可以手动提取出包含音高信息(f0)和采样率信息的精简版 pth 文件(~60MB),完成后模型会自动出现在推理列表中。