RVC快速语音转换指南:10分钟克隆一条专属声线
【免费下载链接】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),喂给它十来分钟的干声,语音转换就完成了——这个开源项目把语音克隆压缩到了分钟级。
项目速览
- 解决的问题:用少量干声训练出可模仿特定人声色的 AI 语音模型,输入新音频即输出对应音色。
- 技术路线:基于 VITS(一种神经网络语音合成框架)并叠加检索增强——推理时从检索库里匹配音色,数据有限时输出也不至于跑偏。
- 与同类方案的差异:图形界面驱动,不需要命令行训练经验;训练数据 10 分钟以内即可见效,单卡即可运行。
获取代码并按显卡安装依赖
- 克隆项目代码到本地:
git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI然后进入项目目录(cd Retrieval-based-Voice-Conversion-WebUI)。
- 按显卡类型安装依赖。NVIDIA 直接用下面的命令;A 卡把文件名换成 requirements-dml.txt(DirectML 路线),Intel Arc 换成 requirements-ipex.txt:
pip install -r requirements.txt- 下载预训练权重、音高提取模型和 UVR5 人声分离权重(总量数 GB,首次使用跑一次即可):
python tools/download_models.py核心工作流:从干声到转换结果
准备训练数据
录几分钟干净、干燥的语音,背景噪声越小越好,剪掉长静音段,存成 WAV。10 分钟起步,数据越充足,音色越稳定。
一键启动本地训练页面
运行下面命令后,本地服务启动,浏览器会自动打开训练页面:
python infer-web.py挑选音高提取算法与索引率
- 音高提取算法:选 RMVPE。它负责从语音中提取基频(f0,也就是你听感里的"音调"),出自 Interspeech 2023,精度高、速度快,还能正常处理哑音段,是默认最稳的选择。
- 采样率:32k 省显存,40k 综合最优,48k 追求最高音质。6GB 显存从 40k 开始。
- 训练轮数 total_epoch:先给 10~20 轮,产物仍有杂音再追加。
- index_rate(索引率):控制输出音色有多少来自检索库。训练数据干净、量足时可以调高;数据少而杂,压到 0.4~0.6。拿不准就调低一些,听完再每次加 0.1。
跑推理并试听效果
训练结束后切到推理页,选中生成的模型和索引文件,传入任意音频试听。音调不对就动 pitch(半音单位,男声转女声常用 +12 左右),音色不准就回调 index_rate,循环试听。
🎤 在语音聊天里做实时变声
实时变声是 RVC 使用频率最高的功能:麦克风输入边说话边转换,适合语音聊天、直播场景。运行下面命令即可启动:
python tools/rvc_for_realtime.py关注两个参数:threhold是静音阈值,设太低会把背景噪声一起转换,太高又容易吞掉气声;block_time是处理块时长,越小延迟越低,但太小可能出现断续。模型融合(混合两个模型的特征)可用tools/trans_weights.py,人声伴奏分离则直接用主页面的 UVR5,能把训练数据的底噪和伴奏剥掉。
⚙️ 按现象调参数:常见故障对照表
| 现象 | 可能原因 | 调整方向 |
|---|---|---|
| 输出音色不像原主人 | index_rate 偏低 | 每次加 0.1 对比试听 |
| 输出里混入输入者音色 | index_rate 过高或数据噪声大 | 调低 index_rate,重新分离训练数据 |
| 声音发闷、有电流感 | 训练轮数不足或数据底噪高 | 增加 total_epoch,换干声训练 |
| 实时模式延迟高 | block_time 偏大或 CPU 瓶颈 | 减小 block_time,走 GPU 推理 |
| 训练中途显存爆掉 | batch_size 过大 | 降到 1,采样率改 32k |
资源指引
- docs/en/:英文文档目录,含 FAQ 与训练技巧,中文版在 docs/cn/
- infer/modules/vc/:语音转换核心逻辑,推理管线与模块参数都在这里
infer/modules/train/:数据预处理与训练脚本,音高提取脚本在 extract/ 下i18n/locale/:13 种界面语言,含 zh_CN.json 与 en_US.jsonconfigs/config.json:运行时配置,自动记录你最近一次选中的参数
接下来可以做什么
- 用 UVR5 把你喜欢的歌曲重新分离,拿提取出的干声训练第二个模型做对比
- 用模型融合混合两条声线,验证哪种配比更像目标音色
- 换一种 i18n 界面语言,或用 infer_cli.py 做命令行批量推理
语音转换只能用于本人声音,或在取得声主明确授权后进行;不要用它冒充他人或用于其他不当用途。
【免费下载链接】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),仅供参考