10分钟录音训出专属音色:RVC变声器完整上手指南
2026/9/20 21:23:23 网站建设 项目流程

10分钟录音训出专属音色:RVC变声器完整上手指南

【免费下载链接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data <= 10 mins!项目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI

想让视频配音、游戏角色或翻唱换上另一个人的声音,又不想碰音频工程细节?RVC变声器就是干这个的——它来自开源项目 Retrieval-based Voice Conversion WebUI(RVC),你提供 10 到 50 分钟的目标人声录音,它训练出一个音色模型,之后任何音频输进去,都会以那个音色重新输出。下面是从零到跑通的完整流程。

🎙️ 先把录音录够、把硬件门槛确认好

动手之前,先处理整个流程里最不可逆的一环:录音。数据质量直接决定模型的效果上限,录坏了后面怎么调参数都救不回来;硬件不达标也一样,所以两件事放一起说清楚。

录音把握三件事:

  • 环境安静:底噪会直接学进模型,训练轮次再高也压不下去;
  • 状态有变化:语速、语调、情绪带些起伏,别只念一种腔调,模型靠这些样本覆盖不同发音状态;
  • 单条别太长:几十秒到一两分钟一段即可,过长的录音在切分和内存占用上都是负担。

时长上,官方 FAQ 建议总时长 10 到 50 分钟;如果录音干净、底噪低、音色有辨识度,5 到 10 分钟也能训出可用模型。录完统一转成 WAV 就行,采样率不用纠结,预处理阶段会自动重采样到你选定的档位。

硬件方面,4GB 显存是底线:4G 的卡可以完成训练和推理,低于 4GB(3G、2G 的老卡)官方 FAQ 的建议是直接放弃。程序启动时会自动读显存大小调整内部参数,页面默认的批次大小约等于显存 GB 数的一半,这就是稳定起步值。训练时如果批次缩到 1 还报 out of memory,那就是显卡确实不够,只能换卡或租云 GPU。另外留点系统内存:切分和音高提取是多进程吃 CPU 的,内存吃紧就把"CPU 进程数"调低,或手动把训练音频切短些。

⚙️ 部署 RVC 训练环境并启动训练页

代码放在项目根目录,按顺序来:

git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI cd Retrieval-based-Voice-Conversion-WebUI python -m venv rvc-env

激活虚拟环境(Windows 是rvc-env\Scripts\activate,Linux/macOS 是source rvc-env/bin/activate)后,按显卡装依赖。仓库根目录提供了几份依赖清单:NVIDIA 显卡按你的 CUDA 版本装requirments_cu118_py312.txtrequirments_cu128_py312.txt,AMD 显卡(Windows/DirectML)装对应 DML 环境的依赖,纯 CPU 用requirments_cpu_py312.txt,安装命令统一是pip install -r <依赖文件>

还有两件不能省的事:装 ffmpeg(切分和重采样都靠它,Ubuntu 上sudo apt install ffmpeg,macOS 上brew install ffmpeg);下载预训练底模文件——仓库里提供了各平台的 dlmodels 下载脚本,缺了 assets 目录下的底模,训练和推理都起不来。

然后启动训练页:

python webui.py

浏览器会自动打开 7865 端口的训练网页(端口被占用时程序会自动往上找可用端口)。Windows 用户也可以直接双击go-webui.bat走整合包路线。

三个关键训练参数 + 两项顺手要改的设置

网页训练页里真正值得动的数字就三个,其余保持默认:

项目建议值说明
训练轮数(total_epoch)有底噪:20~30 轮;干净且时长充足:可到 200 轮底噪大的数据训太多轮,模型会把噪音也学进去(官方 FAQ Q9)
保存间隔每 10 轮存一个点间隔小才能逐个试听,挑出最早达标的那个,避开过拟合
批次大小(batch size)页面默认值,OOM 就往下调默认约等于显存 GB 数的一半,稳定起步值

再顺手改两项:采样率选 48k 对应 v2 底模,这是官方配置里质量上限最高的一档(对应 configs/v2/48k.json);音高提取算法选 rmvpe,界面标注它效果最好且只占少量显存,harvest 低音更好但极慢,pm 适合歌声输入时提速。

最后确认训练集文件夹路径、填一个实验名(后面找模型全靠它),点"一键训练"。流程会依次执行数据切分、F0 与 HuBERT 特征提取、模型训练、索引训练,日志全部写在logs/实验名/下,核心训练脚本在 train/train.py。

从"能用"到"好用":索引、检索占比与防撕裂

训练完只是"能用",离"好用"还差两步设置。

先别跳过索引。索引文件决定推理结果保留多少训练集的音色:跳过它,输出音质可能不错,但相似度会打折扣。回到网页点"训练索引",它会用 faiss 把训练特征聚成检索库,产物是logs/实验名/added_开头的.index文件。如果一键训练结束时没看到索引,多半是训练集太大卡住了索引添加步骤,重按一次"训练索引"即可(FAQ Q2)。

然后切到"模型推理"页,点"刷新音色",选你的模型和索引,上传一段音频转换。这一页重点调的是检索特征占比(index rate),范围 0 到 1,默认 0.75:

  • 调高接近 1:音色完全锚定训练集,不会漏出输入源或底模的音色,但音质上限被训练集锁死;
  • 调低到 0:不做检索保护,音质可能更好,但"音色泄露"问题会回来;
  • 训练集本身优质且时长足时,这个值反而不重要,模型自己已经不太引用外部音色。

另外两个旋钮:变调是整数半音,+12 升八度、-12 降八度;protect 滑条默认 0.33,专门防清辅音和呼吸声撕裂,输出有电音时往高调。

批量转换与实时变声

批量:不用开网页,WebUI 里自带"批量推理"页签——填一个待转换音频文件夹,指定输出目录(默认 opt),目录里每个音频会被逐个转换后输出。

实时:想说话实时变声,双击go-realtime_gui.bat启动实时界面(对应入口 realtime_gui.py)。官方给出的延迟数据是端到端 170 毫秒;换成 ASIO 输入输出设备可压到 90 毫秒,但后者非常依赖声卡驱动支持,普通 USB 声卡别期待这个数字。

⏱️ 60 秒自检:你的模型到底行不行

跑完一遍流程,用下面四步验证:

  1. 打开"模型推理"页,点"刷新音色",挑一个训练时保存的中间模型(不一定是最后一个);
  2. 上传一段训练时没用过的音频——从你那份 10 分钟录音里截一段没用上的即可;
  3. 点转换,听三件事:音色像不像目标、有没有漏出输入源音色、清辅音和呼吸声是否撕裂;
  4. 判据:音色对、源音色不漏、无电音,流程就通了。音色不对就换一个保存点重听;有电音就把 protect 往高调;源音色明显漏出就把检索特征占比往上调。

对上了,恭喜,你的专属音色模型已经可以投入使用了。

【免费下载链接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data <= 10 mins!项目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI

创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询