☰
10分钟录音炼出专属变声模型:RVC语音转换实战全记录
2026/10/7 9:43:04 网站建设 项目流程

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

深夜直播,导播要你换个声音出场——传统变声滤镜一股塑料感,专业音色克隆又得录几个小时素材。Retrieval-based-Voice-Conversion-WebUI(简称 RVC)把这件事的门槛打了下来:这是一个检索增强的语音转换框架,10 分钟低底噪录音就能训出可用的音色转换模型,实时变声延迟最低能压到 90ms。

30秒上手:从克隆到第一次转换 🎯

先说结论:你不需要先训模型才能听到效果。官方模型仓库里就有现成的.pth(模型权重)和.index(检索索引),拿一组放进对应目录就能直接转换,仓库会自动创建所需的工作目录。

Windows 用户直接双击go-webui.bat也行,这里给两条系统通用的手动路径:

# 克隆仓库并进入目录 git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI cd Retrieval-based-Voice-Conversion-WebUI
# Python 3.12 x64 虚拟环境(Windows 用 .venv\Scripts\activate) python -m venv .venv && source .venv/bin/activate python -m pip install --upgrade pip setuptools wheel huggingface_hub
# 先装对应 CUDA 版本的 Torch,再装依赖(RTX 50 系换 cu128) python -m pip install torch==2.7.1+cu118 torchaudio==2.7.1+cu118 --index-url https://download.pytorch.org/whl/cu118 python -m pip install -r requirments_cu118_py312.txt

没有 NVIDIA 卡?换成requirments_cpu_py312.txt走 CPU 方案,AMD/Intel 可以加--dml参数启用 DirectML 加速,不需要额外依赖文件。

# 特征提取与推理必需的三个预训练模型 hf download lj1995/VoiceConversionWebUI --revision main --include "hubert_base/*" --local-dir assets hf download lj1995/VoiceConversionWebUI rmvpe.pt --revision main --local-dir assets/rmvpe hf download lj1995/VoiceConversionWebUI --revision main --include "pretrained/*" "pretrained_v2/*" --local-dir assets
# 训练用的静音样本(需要人声分离时顺带拉下 UVR5 模型) hf download lj1995/VoiceConversionWebUI mute.zip --revision main --local-dir .model-downloads python -m zipfile -e .model-downloads/mute.zip logs
# 确认 GPU 被识别(最后一项应输出 True) python -c "import torch; print(torch.__version__, torch.version.cuda, torch.cuda.is_available())"
# 启动 WebUI,浏览器自动打开,默认端口 7865 python webui.py

打开 WebUI 的推理页签,加载你放进去的.pth和.index,音高选 0、f0 算法选 rmvpe,点一下转换——第一段变声音频就有了。

10分钟数据为什么够:跟着一条音频走完全链路 ⚡

跑通之后你可能会好奇:就 10 分钟素材,模型怎么"学"得会一个音色?我们把一条音频的处理链路完整走一遍。

输入音频先被两个"读者"读一遍:RMVPE(一个能正确处理哑音段的音高提取算法)给出每一帧的基频 f0,HuBERT 预训练模型则编码出内容特征——可以理解成"说了什么",暂时丢掉"谁在说"。

关键一步是检索。训练时,WebUI 会把训练集里每个切片的 HuBERT 特征存进 FAISS 索引,也就是那个.index文件。推理时,输入特征的每一帧都去索引里找 8 个最近邻,按距离的平方倒数加权平均,再按index_rate比例混入模型输出。也就是说,音色不是靠模型硬背下来的:底模用接近 50 小时的开源 VCTK 语音训练过,已经学会了"人声应该长什么样",你那 10 分钟只负责把方向带对,细节部分推理时从索引里现查现补。这就是 10 分钟数据就够的原因。

之后特征序列做 2 倍上采样,哑音段按protect参数混回原始特征防止噪声被错误移调,最后由 RVC 生成器(VITS 风格的编码器-解码器 + HiFi-GAN 式上采样结构)合成波形,整条合成路径用 CUDA Graph 加速,单段耗时低到可以支撑实时。推理链路都在 infer/vc/ 里,想深挖从这里入手。

用 RVC 做一个 AI 翻唱:从10分钟干声到成品 🎤

选最典型的场景走一遍:拿目标音色的干净干声训练,然后让新歌曲变成那个声音。

数据。10-20 分钟目标音色的干净干声就够了。手上只有带伴奏的完整歌曲?先用 WebUI 里的 UVR5 人声分离把伴奏剥掉(实现代码在 tools/uvr5/)。只有 5 分钟也别怕,后面把训练轮数拉高一点补偿即可。

预处理。训练页签点"音频切片":切片器按 -40dB 阈值把长音频切成几秒一段,静音段自动丢掉。再点"特征提取",每个片段批量算好 f0 和 HuBERT 特征。

训练。配置里选 v1 用 40k、v2 用 48k(卡弱选 32k 省显存)——采样率决定输出音频的速率,翻唱场景 48k 的高频细节更有余量。轮数给两条场景化建议:10 分钟数据,v1 练 400-500 轮(大约几个小时),v2 练个位数到十几轮即可,因为 v2 的 768 维特征更稠密、收敛更快(v1 是 256 维,可在 configs/ 里对照各档配置,文件里的epochs是上限,实际轮数在界面设)。

索引训练。训练完点一下"索引训练",基于已有特征生成.index。这就是前面说的检索索引,不训它,音色会少一层"灵魂"。

推理。加载新的.pth+.index,按歌曲调参:

参数翻唱场景建议为什么这么设
index_rate0.4~0.6高则更像训练集、低则更自然,0 为纯模型输出
f0_up_key-12(跨性别)/ 0(同性别)半音为单位移调,一个八度=12
rms_mix_rate0.05混一点原音量包络,减少"泵"感噪声
protect0.33哑音段混回原始特征,防止噪声被错误移调

输出音频重采样到与原曲一致的采样率,一首能听的 AI 翻唱就完成了。

踩坑与调优:四个你大概率会碰上的问题 🔧

1. 训练时显存爆了原因:显存不足 4G 或 batch 开太大(项目对 4G 以下卡会自动降级 fp32/CPU,属正常现象别慌)。解决:batch_size 压到 4,改选 32k 配置。验证:训练日志无 OOM,loss 曲线正常下降。

2. 输出带杂音、嗡嗡响原因:多是训练数据带背景噪声,或 index_rate 过高带来"采样感"。解决:重做 UVR5 分离 + 切片,index_rate 拉回 0.4 左右。验证:开/关索引各转一次做 A/B,杂音应明显下降。

3. 音色漂移,输出时像时不像原因:f0 提取不稳,哑音段被误判成有声段。解决:确认 f0 算法用 rmvpe,protect 在 0.3~0.4 之间微调。验证:看特征提取日志里的 f0 曲线,不该出现毛刺式跳变。

4. 实时变声延迟优化不过关原因:默认声卡缓冲与分块参数偏保守。解决:block_time 0.13、crossfade 0.08(configs/config.json 里都是默认值,别乱动),系统侧换 ASIO 驱动。验证:实时界面显示的端到端延迟,默认约 170ms,ASIO 下可到 90ms。

遇到本文没列到的怪问题,docs/cn/faq.md 基本都覆盖到了。

还能怎么玩:把训好的模型榨出更多价值 🚀

ckpt 融合:WebUI 的 ckpt 处理页签里,可以把两个音色按权重混出第三种声音,或者给不稳定的模型"补一点"高质量音色,产物是新.pth,直接丢回推理页签用。

90ms 实时变声:python realtime_gui.py拉起实时变声界面,配合 ASIO 直播完全够用,Windows 下双击go-realtime_gui.bat一步到位。

流水线集成:UVR5 人声分离模块可以独立拆出来做上游,串成"分离→切片→训练→推理"的自动化流水线;模型本身基本不分语种,中日英语的音色都用同一套流程训练。

下一步:去录 10 分钟自己的声音

下次导播再要你换个声音,你不用找音效、也不用求人录几小时素材。找间安静点的地方录 10 分钟自己的干声,按上面的流程走一遍,下午就能拥有一个自己的转换模型——现在就可以先把 30 秒上手那节跑一遍,确认自己能听到声音。

【免费下载链接】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),仅供参考

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

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

立即咨询