20分钟跑通RVC-WebUI:本地语音转换从零到出模型的完整路线

📅 2026/8/22 16:51:47
20分钟跑通RVC-WebUI:本地语音转换从零到出模型的完整路线
20分钟跑通RVC-WebUI本地语音转换从零到出模型的完整路线【免费下载链接】rvc-webuiliujing04/Retrieval-based-Voice-Conversion-WebUI reconstruction project项目地址: https://gitcode.com/gh_mirrors/rv/rvc-webui先说结论这套流程跑完后你的浏览器里能直接播放一段换了一个人开口、但说的还是同一句话的音频磁盘上多出一个.pth音色模型文件之后任何一条 wav 丢进去都能变成这个声音。它叫 RVC-WebUI做的是检索式语音转换Retrieval-based Voice ConversionRVC模型先把声音拆成说了什么和谁在说两层再用目标音色重新合成所以不需要暴力改音调成品自然度比传统变声器高。适合谁有一块独立显卡NVIDIA 4GB 以上、想给视频配音、给音频换声、训练专属音色又不想碰云 API 的人。谁别用纯 CPU 机器——能跑但训练一个模型可能要挂一晚上对实时变声直播有要求的也不合适它走的是先算好再输出的离线路线。环境清单与三步安装官方测试环境是 Windows 10、Python 3.10.9、torch 2.0.0cu118。按这个对齐后面基本不会出岔子项目最低要求推荐配置说明操作系统Windows 10 / Linux / macOSWindows 或 Linux脚本对三端都有覆盖Python3.103.10启动脚本会自动建 venv版本要对GPU4GB 显存仅训练需要8GB纯推理门槛低得多内存8GB16GB预处理阶段吃 CPU 内存磁盘2GB10GB预训练模型 训练中间产物安装就三步每步说一句它到底在干什么git clone https://gitcode.com/gh_mirrors/rv/rvc-webui cd rvc-webui这一步把全部项目文件拉到本地磁盘后续所有操作都在这一个目录里完成。Windows 用户双击webui-user.batLinux / macOS 用户运行./webui.sh。脚本自动建 Python 虚拟环境、装 PyTorch 和依赖库、往models/下下载预训练模型全程看日志滚动就行看到日志停止滚动后浏览器访问127.0.0.1:7860。页面打开即安装完成能看到 Inference、Training、Merge、Split Audio 四个标签页。老显卡或纯 CPU 机器启动前在webui-user.bat/webui-user.sh里把COMMANDLINE_ARGS--precision fp32打开。默认是 fp16半精度显存占用低但计算能力不足的 GPU 跑不动它。主线任务四张任务卡片任务 1用预训练模型完成第一次转换打开Inference推理标签页四个标签页里排第一的就是它。操作在模型下拉框选一个已下载的模型 → 在Source Audio填一条 wav 文件路径 → 点Infer推理按钮预期结果Status状态框从 Infering... 变成 Success下方Output播放器里出现换声后的音频文件同时落在项目根目录的outputs/里参数解释本页两个最常用的Transpose移调范围 -20 到 20默认 0调大输出整体变高男声转女声一般拉到 12调小输出整体变低女声转男声给 -12Retrieval Feature Ratio检索特征比例0 到 1默认 1调大音色更贴近目标模型调小更多保留原素材的说话习惯默认值直接用。Pitch Extraction Algorithm基频提取算法用于从音频里提取音调曲线默认是crepe另外三个选项是dio、harvest、mangio-crepe先别动。任务 2用 10 分钟素材训练自己的音色模型分两步先切素材再训练。第一步Split Audio音频切分标签页Input Audio (File or Directory)填长音频路径Output Directory填输出目录点Separate分离按钮。默认会把音频切成Minimum audio length1000ms 到Maximum audio length5000ms 的短片段Silence Threshold静音阈值默认 -40 dB——音量低于这个值就算静音在静音处下刀。切完人工过一遍带电流声、背景音的片段手动删掉。第二步Training训练标签页Model Name填myvoiceDataset glob填dataset/**/*.wav**表示递归匹配子目录旁边的Recursive复选框默认已勾选其余保持默认Model versionv2、Target sampling rate40k、f0 ModelYes、Number of epochs30、Batch size4点Train训练按钮。预期结果Status框依次打印 Preprocessing... → Extracting f0... → Extracting features... → Training model... → Training index...最后停在 Training completed。models/checkpoints/下生成myvoice的检查点文件推理页模型下拉框里刷新后即可选到。参数里只有Number of epochs训练轮数值得解释调大模型对素材拟合得更死10 分钟以上数据可以加到 50-100但过拟合后声音会发紧调小30 轮对 10 分钟数据已经够用低于 20 轮音色学不到位。Batch size每批样本数同理调大训练快但显存占用高显存紧张就降到 2。任务 3批量转换一个文件夹Source Audio里填带*的匹配模式例如inputs/*.wav或整个文件夹路径Out folder输出目录必填否则Status会直接报 Out folder is required for batch processing。点Infer后逐条处理结果全部落到输出目录。建议单条素材控制在 10 秒以内长音频先切再转。任务 4合并两个模型出混血音色打开Merge融合标签页Model A、Model B下拉框各选一个模型Output name填新名字点Merge and save合并并保存想当场听效果就点Merge and gen合并并生成它会顺手把你填好的Source Audio转一遍。Base alpha基础权重0 到 1默认 0.5调大结果更偏向 Model B调小更偏向 Model A。0.5 就是五五开。问题速查现象、原因、解法只收新手高频问题按现象 → 最可能原因 → 最快解法排现象最可能原因最快解法装依赖时报 Microsoft Visual C 14.0 or greater is required.缺 C 编译环境安装微软 C Build ToolsWorkloads 里勾上 C Build Tools重装依赖训练 / 推理中途显存溢出Batch size 偏大或采样率偏高Batch size 降到 2 → 换 32k 采样率 → 音频切到 10 秒以内按顺序降级输出明显电音感、像机器人模型按无音高方式训练或基频算法不适配确认训练时f0 Model为 Yes推理时把Pitch Extraction Algorithm在crepe和harvest之间换着试训练报 No audio files foundDataset glob没匹配到文件检查 glob 写法dataset/**/*.wav和Recursive是否勾选批量转换报 Out folder is required for batch processing用了*通配但没填输出目录把Out folder填上再点Infer启动日志打印 WARNING: FP16 is not supported on this GPU显卡太老跑不了半精度不用管代码已自动回退 fp32想手动指定就设COMMANDLINE_ARGS--precision fp32进阶两招让效果再上一档① 逐层融合。两个模型五五开不满意时在Merge页勾选Each key merge逐键融合界面会展开 enc_p、dec、flow 三组折叠面板每组里可以单独调每一层的权重——说白了就是音色层多听 B 的细节层多听 A 的。默认方法 Weight sum 的计算式是 A*(1-alpha)B*alpha另一个 Add difference 是 A(B-C)*alpha需要第三个模型 C 做参照。② 压缩检索索引。训练时Train Index默认 Yes会生成 FAISS 索引FAISS 是 Facebook 开源的向量检索库作用是在目标音色库里快速找最像的片段推理时勾选Auto Load Index后音色还原更准。索引文件太大就勾选Reduce index size with kmeans用 k-means 聚类压缩索引maximum index size默认 10000。参数默认值速查拿不准就按这一列来参数所在页面默认值一句话解释TransposeInference0整体移调±12 左右是男女互换的常用档Pitch Extraction AlgorithmInferencecrepe基频提取算法质量优先Retrieval Feature RatioInference11 最贴近目标音色0 最像原声Model versionTrainingv2当前推荐版本别切回 v1Target sampling rateTraining40k40k 是质量与速度的平衡点f0 ModelTrainingYes开启后音高信息才参与建模Transpose 也才生效Batch size / Number of epochsTraining4 / 30显存吃紧先降 batch size再谈加 epochsBase alphaMerge0.50 全偏 A1 全偏 BFAQQ1f0 Model 是什么不开会怎样基频fundamental frequency就是音调。开 Yes模型会学音高曲线推理时Transpose才能生效开 No 适合无音高素材但换声时音高变化会不自然。人声素材一律保持默认 Yes。Q2采样率 32k / 40k / 48k 怎么选40k 是默认平衡点显存不足或素材是普通说话声用 32k 省资源追求高音细节且显存充裕再上 48k。注意训练和推理用同一个模型时采样率必须一致。Q3为什么输出里有电音感按顺序查训练时f0 Model是否 Yes →Pitch Extraction Algorithm换harvest试试 →Retrieval Feature Ratio提到 0.8 以上 → 输入音频是否是干净人声。四步走完还有问题多半是素材质量不行。Q4素材能不能用网上下载的音频可以但必须是干净人声——无背景音乐、无混响、无多人抢话。素材质量直接决定模型上限这也是同样的设置别人好你差最常见的原因。Q5多个人声想装进一个模型训练页勾选Multiple speakers多说话人素材按说话人分文件夹推理时用Speaker ID滑块切换到人。收尾一句话总结RVC-WebUI 把推理、训练、融合、切分四件事压进了一个浏览器页面你只需要喂素材、点按钮、听结果。今晚就能做的最小行动找一段 10 分钟以上的干净人声素材放进dataset/按任务 2从Separate到Train完整跑一遍明早起来听myvoice的转换效果。【免费下载链接】rvc-webuiliujing04/Retrieval-based-Voice-Conversion-WebUI reconstruction project项目地址: https://gitcode.com/gh_mirrors/rv/rvc-webui创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考