news 2026/9/1 11:23:57

RVC 人声分离怎么做:UVR5 从环境搭建到批量输出的完整指南

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
RVC 人声分离怎么做:UVR5 从环境搭建到批量输出的完整指南

RVC 人声分离怎么做:UVR5 从环境搭建到批量输出的完整指南

【免费下载链接】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)内置了一套基于 UVR5 的人声分离模块,能把混音里的人声和伴奏拆成两份独立音频,为翻唱训练、去混响修复、素材提取等场景提供干净的声音素材。本文按"先跑通、再理解、后调优"的顺序,带你从零完成第一次分离。

1. 快速上手:从克隆仓库到第一次分离

结论:整个上手链路只有四步——装依赖、放权重、启动 WebUI、在界面上点一次分离。以下按最小必要步骤展开。

1.1 获取代码与安装依赖

git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI

进入目录后,根据显卡选择对应的依赖清单安装(Python 需 3.8 以上):

pip install -r requirements.txt # NVIDIA 显卡 pip install -r requirements-amd.txt # AMD 显卡(Linux/ROCm) pip install -r requirements-dml.txt # AMD/Intel 显卡(DirectML) pip install -r requirements-ipex.txt # Intel 显卡(Linux/IPEX)

另外确认系统已安装ffmpegffprobe(macOS 可用brew install ffmpeg,Ubuntu/Debian 用apt install ffmpeg)。分离流程在输入格式不标准时会依赖 ffmpeg 做自动转码。

1.2 准备 UVR5 权重文件

模型文件统一放在 assets/uvr5_weights/ 目录,文件名即界面里可选择的模型名。仓库自带了一份下载脚本 tools/dlmodels.sh,其中列出的 UVR5 权重清单为:

模型文件定位
HP2_all_vocals.pth通用人声提取
HP3_all_vocals.pth带高频端处理的人声提取(HP3 系列)
HP5_only_main_vocal.pth只提取主唱人声,适合多声部歌曲
VR-DeEchoNormal.pth/VR-DeEchoAggressive.pth常规 / 激进去回声去混响
VR-DeEchoDeReverb.pth混响压制偏重的版本
onnx_dereverb_By_FoxJoy/vocals.onnxONNX 格式去混响模型

先下载一两个常用的(例如HP2_all_vocals+VR-DeEchoNormal)即可跑通,其余按需补齐。

1.3 启动 WebUI 并执行首次分离

在项目根目录执行:

python infer-web.py

启动后浏览器会自动打开界面,设备(CUDA / Metal / CPU)由 configs/config.py 自动探测,无需手动配置。进入 UVR5 分离选项卡,完成四件事:

  1. 选择模型名(对应权重文件名);
  2. 指定输入目录(放歌曲或人声混音);
  3. 分别指定人声输出目录与伴奏输出目录;
  4. 设置聚合度(agg)与输出格式,点击开始。

处理完成后,两个输出目录里会按原文件名得到分离后的人声与伴奏文件。

2. 核心能力拆解

分离功能的全部入口在 infer/modules/uvr5/,共三个文件:统一调度、频谱分离、去混响专用网络。理解以下三个能力点,就覆盖了日常使用场景。

2.1 多模型人声/伴奏分离

调度逻辑见 infer/modules/uvr5/modules.py:按模型名路由到不同的分离网络,人声/伴奏两个结果分别写入你指定的目录。选型的判断依据很简单——多声部歌曲选"only_main_vocal"类模型,普通二合一歌曲选通用 vocals 模型。

2.2 去回声与去混响(DeEcho 系列)

VR-DeEcho*系列模型名中含 "DeEcho" 字样时会走 infer/modules/uvr5/vr.py 中专门的去回声预处理分支,比普通分离多一层混响压制。录制环境不好的 demo、翻唱原曲想拿干净人声时,这类模型比普通 vocals 模型更合适。另有一个 ONNX 去混响模型由 infer/modules/uvr5/mdxnet.py 中的MDXNetDereverb网络承载。

2.3 输入自动转码与整目录批处理

modules.py会先用 ffprobe 检查输入:若不是 44100Hz 立体声,自动经 ffmpeg 转码为 44.1kHz 立体声 WAV 再进模型;单声道输入会被自动复制成双声道。输入目录里可以放多个文件,程序逐个处理并打印"文件名->Success"的进度,天然支持批量。

3. 实战工作流:从一首歌到可用的翻唱训练数据

这是 RVC 里 UVR5 最常见的用途:用 UVR5 从原曲中提取人声,再把这些人声作为训练数据去训练自己的音色模型。完整链路如下:

  1. 准备素材:挑 3~5 首目标歌手底噪低、混响少的歌,放入一个目录(如my_songs/)。
  2. 批量分离:WebUI 的 UVR5 分离选项卡中,输入目录选my_songs/,模型先用HP2_all_vocals跑一遍;若人声带明显"水声"残留,换VR-DeEchoNormal重跑,输出到vocals/
  3. 人工筛选:听一遍输出,保留分离干净的片段。多声部歌曲建议改用HP5_only_main_vocal再提取一次,只留主唱。
  4. 喂给训练流程:把筛选后的干净人声集中到一个目录,在训练选项卡中作为训练数据输入(官方建议至少 10 分钟低底噪语音),进入"预处理 → 训练 → 推理"的常规流程。

第二个轻量场景是去混响修复:录制的 demo 房间回声重时,用VR-DeEchoAggressive跑一遍,输出目录得到压过混响的人声,可直接用于后期处理。激进版压制更强但会损失部分自然度,建议 Normal 与 Aggressive 各跑一份对比再定稿。

4. 排错与调优

4.1 常见问题排查

现象可能原因处理办法
界面模型下拉列表为空assets/uvr5_weights/下没有.pth文件按 1.2 清单补齐权重,文件名需与清单一致
某文件处理失败或无输出输入格式异常,自动转码依赖 ffmpeg确认ffmpeg/ffprobe已安装且在 PATH 中
处理明显偏慢跑在 CPU 上,或聚合度设得过高确认已装好 CUDA 依赖;调小 agg
分离边缘有水声、残留感模型与素材不匹配换 DeEcho 系列或 HP3/HP5 对比试听
显存吃紧、批处理中断单次处理音频过长把长音频切成数分钟一段再分目录处理

4.2 性能与质量优化要点

  • 设备与精度config.pydevice_config()会自动处理大部分情况——老款显卡(如 GTX 10 系)会被强制降级为 fp32 并覆写configs/inuse/下配置,这是正常行为,不用手动改。
  • 聚合度(agg):控制分块之间的重叠平滑程度。值越大边缘越干净但耗时越长;先用中等值起步,对拼接痕迹明显的文件再单独调大重跑。
  • 输入规格:44100Hz 立体声文件会跳过转码直接进模型,是效率最高的输入形式;手头的 MP3 直接丢进去也可以,代价是多一步转码时间。
  • 输出格式:界面上可选输出格式,翻唱训练、二次处理选无损格式(如 flac/wav),试听对比选压缩格式即可,不影响分离质量。
  • 批处理习惯:把同批文件放同一个目录一次跑完;程序处理结束后会自动执行torch.cuda.empty_cache()释放显存,连续跑多批无需手动干预。

5. 延伸探索

  • docs/cn/faq.md:中文常见问题,分离、训练相关报错先来这里查。
  • docs/cn/Changelog_CN.md:更新日志,了解各版本新增的分离能力与修复项。
  • infer/lib/uvr5_pack/lib_v5/modelparams/:UVR5 的分频段参数配置(4band_v2.json等),想理解"为什么分离要分 4 个频段"可以看这里。
  • tools/:模型下载、批量推理等辅助脚本,infer_cli.py适合不想开界面时走命令行。

可以立即执行的三步

  1. 按 1.2 清单下载HP2_all_vocalsVR-DeEchoNormal两个权重到 assets/uvr5_weights/,跑通第一次分离;
  2. 用同一首歌对比这两个模型的输出,建立对"分离强度"的听觉判断;
  3. 挑出一段 30 秒左右的干净人声,接入训练选项卡走一遍完整流程,把 UVR5 和 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

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

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/9/1 11:23:01

Folo AI RSS 阅读器完整上手教程:把全网订阅装进一条时间线

Folo AI RSS 阅读器完整上手教程&#xff1a;把全网订阅装进一条时间线 【免费下载链接】follow &#x1f9e1; Folo is the AI RSS Reader 项目地址: https://gitcode.com/GitHub_Trending/fol/follow 每天醒来&#xff0c;博客、新闻、视频、播客散落在一堆 App 里&am…

作者头像 李华
网站建设 2026/9/1 11:22:41

基于射频信号的无人机检测与识别:MATLAB+Python开源代码实战解析

简介&#xff1a;面向无人机射频信号检测与识别研究的一套MATLAB与Python代码合集&#xff0c;适合相关方向的开发者、科研人员及无人机安防领域初学者使用。资源包共18个文件&#xff0c;包含7个MATLAB脚本&#xff08;覆盖数据聚合、标注、数据库详情分析及分类演示等环节&am…

作者头像 李华
网站建设 2026/9/1 11:22:37

OSError模型加载失败?一套容错加载方案彻底解决

简介&#xff1a;在使用ComfyUI-Easy-Use执行背景移除节点时&#xff0c;常因HuggingFace模型版本选择不当而触发OSError&#xff0c;提示缺少pytorch_model.bin或model.safetensors文件。这份源码包正是为解决此类问题而整理&#xff0c;面向ComfyUI用户与图像处理开发者&…

作者头像 李华
网站建设 2026/9/1 11:16:47

AI量化交易内卷:多智能体博弈如何导致利润归零

聪明反被聪明误&#xff1a;当AI量化交易员在“内卷”中走向利润归零如果你是一名量化研究员或交易员&#xff0c;最近可能正被一种无力感包围&#xff1a;精心设计的策略回测曲线完美&#xff0c;但一上线实盘&#xff0c;阿尔法&#xff08;Alpha&#xff09;就迅速衰减&…

作者头像 李华