10分钟AI语音克隆:Retrieval-based-Voice-Conversion-WebUI(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
Retrieval-based-Voice-Conversion-WebUI(RVC)是基于VITS的开源语音转换框架,用top1检索杜绝音色泄漏,10分钟低噪语音就能训练出可上手的变声模型。游戏变声、AI歌手、影视配音的场景都适用。
📍 项目定位:RVC比同类工具好上手在哪
基于VITS的语音转换工具普遍有两个痛点:训练数据门槛高、音色泄漏难根除。RVC对这两点的解法很直接:
- top1检索:推理时把输入源特征替换为训练集里最接近的特征,从机制上杜绝目标音色混入原声;
- 低训练门槛:约10分钟语音即可出效果,相对弱的显卡也能快速训练。
此外它把UVR5人声伴奏分离和实时变声GUI一并打包,从"原始素材"到"实时输出"是完整链路。
✅ 动手前自查:你的机器能不能跑
| 项目 | 要求 | 说明 |
|---|---|---|
| 显卡 | N卡4GB显存起 / A卡 / I卡 | N卡6GB以上最顺,4GB显存会自动降级fp32 |
| Python | 大于3.8 | 3.11用户改用 requirements-py311.txt |
| 系统工具 | ffmpeg | 切分、重采样都依赖它 |
| 训练数据 | 约10分钟低噪语音 | 人声干净、语速均匀、背景噪音少 |
| 磁盘 | 10GB以上 | 预训练模型与中间文件 |
只做推理(不训练)的话,有CPU即可运行,只是速度慢。
🚀 从零跑通:四条命令打开RVC WebUI
1. 获取代码
git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI cd Retrieval-based-Voice-Conversion-WebUI预期:本地出现 infer-web.py、tools/、configs/ 等目录结构。
2. 安装依赖
pip install torch torchvision torchaudio pip install -r requirements.txt预期:安装无报错。A卡/I卡用户把第二行换成 requirements-dml.txt 或 requirements-ipex.txt;AMD ROCm(Linux)用 requirements-amd.txt。
3. 下载预训练模型
python tools/download_models.py预期:assets/ 下出现 hubert 特征模型、RMVPE 音高模型、v1/v2 预训练权重、UVR5 分离权重。
4. 首次启动
python infer-web.py预期:浏览器打开 http://127.0.0.1:7865(注意默认端口是7865,不是7860),界面含模型推理、模型训练、UVR5人声伴奏分离、ckpt处理四个标签页。
🎤 核心玩法:训练一个模型并完成变声
一键训练:从10分钟语音到可用模型
目的:把原始语音变成 .pth 音色模型 + .index 检索索引。
- 将10分钟语音(切成多个文件)放入一个文件夹,在"模型训练"页把它填为训练数据文件夹
- "实验目录"写一个唯一名称,采样率选40k或48k,勾选F0音高提取,音高提取算法选RMVPE
- 点击"一键训练"
效果:自动完成切分、F0与特征提取、模型训练、索引构建。完成后"模型推理"里可选到新音色,模型文件在 assets/weights/,索引在 logs/实验目录/。
模型推理:单文件一键变声
- 在"模型推理"的"单次推理"页:选推理音色、填输入音频文件路径、选索引
- 变调填整数半音(+12升八度、-12降八度),音高算法选RMVPE,点"转换"
效果:输出音频框里试听并下载。成批文件走"批量推理"子页整目录转换,或在终端跑 tools/infer_batch_rvc.py:
python tools/infer_batch_rvc.py --input_path audio/ --opt_path opt/ --model_name yourmodel --f0method rmvpe实时变声:麦克风即时换音色
- 终端启动:
python tools/rvc_for_realtime.py- 在GUI里选择输入声卡、音色、索引,点开始
效果:麦克风声音实时变成目标音色;默认驱动端到端约170ms,ASIO设备约90ms。
⚙️ 进阶调优:三个参数让变声更像人话
- F0算法固定用RMVPE:效果显著优于harvest/crepe,速度比crepe快,且能消除哑音;唱歌场景想提速可降级用pm。
- 索引率(检索特征占比)微调:调高后输出音色更贴近目标声线,拉满则韵律会变生硬;默认0.75是平衡起点,按±0.1步长试。
- ckpt-merge混音:在"ckpt处理"页把两个 .pth 模型按权重比例融合,做出两边都不存在的第三种音色,适合给角色设计专属声线。
⚠️ 避坑指南:新手最常踩的五个坑
- 浏览器没在7860打开→ 原因:RVC默认端口是7865,以终端打印的地址为准;端口被占用时给启动命令加
--port 8000。 - 启动报ffmpeg缺失或音频处理失败→ 原因:系统未装ffmpeg;Ubuntu执行
sudo apt install ffmpeg,MacOS执行brew install ffmpeg,Windows把ffmpeg.exe放到项目根目录。 - 输出带"电音"、撕裂感→ 原因:清辅音和呼吸声没保护;把protect参数从默认0.33上调(范围0~0.5,越大保护越强,但拉满会削弱索引效果)。
- 哑音或音高跳变→ 原因:F0提取算法不匹配;换用RMVPE,音高曲线仍跳时把harvest中值滤波半径调到≥3。
- 训练完索引下拉框没有.index→ 原因:索引未构建或列表未刷新;手动训练时先"提取特征"再点"训练索引",最后点"刷新音色列表和索引路径"。
📚 生态与入口
- 中文常见问题:docs/cn/faq.md
- 更新日志:docs/cn/Changelog_CN.md
- 训练核心代码:infer/modules/train/
- 变声管线:infer/modules/vc/
- Docker部署:Dockerfile 与 docker-compose.yml
- 多语言界面文件:i18n/locale/
把语音放好,点下"一键训练",你的第一个AI音色比想象中更快。项目MIT协议开源,生成语音的使用责任自负。
【免费下载链接】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),仅供参考