音音色轉(zhuǎn)換教程)
10分鐘音頻煉出AI聲線RVC-WebUI 語(yǔ)音音色轉(zhuǎn)換教程【免費(fèi)下載鏈接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data 10 mins!項(xiàng)目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUIRetrieval-based-Voice-Conversion-WebUI下稱 RVC-WebUI做的事很直接把你手里 10 分鐘左右的清晰人聲煉成一個(gè)能用的語(yǔ)音轉(zhuǎn)換模型再在瀏覽器里把任何一段音頻說(shuō)成這個(gè)人的聲音。底模是用約 50 小時(shí)開源 VCTK 數(shù)據(jù)集預(yù)訓(xùn)練好的你不需要從零訓(xùn)練只做微調(diào)訓(xùn)練、推理、人聲分離全部收在一個(gè) Gradio 網(wǎng)頁(yè)里不碰代碼也能跑完整個(gè)流程。這套框架能做什么10 分鐘低底噪數(shù)據(jù)即可訓(xùn)出可用模型推薦采樣率 40k/48ktop1 檢索替換輸入源特征為訓(xùn)練集特征從機(jī)制上杜絕音色泄漏內(nèi)置 InterSpeech 2023 的 RMVPE 音高提取比 crepe_full 更快專治啞音實(shí)時(shí)變聲端到端延遲 170ms配合 ASIO 輸入輸出可壓到 90ms集成 UVR5 做伴奏/人聲分離AMD/Intel 顯卡在 Windows 可走 DirectMLLinux 走 CPU能力說(shuō)完了下面把環(huán)境搭起來(lái)。裝依賴與啟動(dòng)最短路徑環(huán)境要求一句話Python 3.12 x64Ubuntu 24.04 x86_64 或 Windows 桌面環(huán)境NVIDIA 顯卡顯存 ≥4GB 體驗(yàn)最佳configs/config.py 里寫死了這個(gè)下限低于它會(huì)自動(dòng)退回 CPU。第一步克隆倉(cāng)庫(kù)git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI cd Retrieval-based-Voice-Conversion-WebUI第二步建虛擬環(huán)境按硬件裝依賴python3.12 -m venv .venv source .venv/bin/activate # CPU / AMD / IntelAMD 在 Windows 上可用 DirectML pip install -r requirments_cpu_py312.txtNVIDIA 用戶分兩種情況RTX 50 系先裝 CUDA 12.8 的 Torch 再裝requirments_cu128_py312.txtRTX 50 系以前的卡先裝 CUDA 11.8 的 Torch 再裝requirments_cu118_py312.txt。裝完可以驗(yàn)證一下python -c import torch; print(torch.__version__, torch.cuda.is_available())第三步下載預(yù)訓(xùn)練模型到assets/用 Hugging Face 的hf download把lj1995/VoiceConversionWebUI倉(cāng)庫(kù)里的hubert_base/、rmvpe/rmvpe.pt、pretrained/、pretrained_v2/拉到assets/下只有要用 UVR5 分離人聲才需要額外下uvr5_weights/。Windows 用戶若系統(tǒng)沒(méi)有 ffmpeg把ffmpeg.exe、ffprobe.exe放到項(xiàng)目根目錄即可。第四步一條命令啟動(dòng)python webui.py默認(rèn)監(jiān)聽(tīng) 7865 端口瀏覽器自動(dòng)打開無(wú)桌面的服務(wù)器加--noautoopen參數(shù)端口被占時(shí)程序會(huì)自動(dòng)順延到下一個(gè)可用端口。提示實(shí)時(shí)變聲是另一個(gè)入口python realtime_gui.pyWindows 下雙擊go-realtime_gui.bat它獨(dú)立于 WebUI走桌面小窗口參數(shù)可以熱更新、不用重啟。環(huán)境通了接下來(lái)走一遍最高頻的主線備數(shù)據(jù)、訓(xùn)練、轉(zhuǎn)換。把 10 分鐘人聲喂給訓(xùn)練器訓(xùn)練頁(yè)簽按 step1 到 step3 排好了操作順序照著點(diǎn)即可。step1填實(shí)驗(yàn)配置填一個(gè)實(shí)驗(yàn)名logs/下每個(gè)實(shí)驗(yàn)一個(gè)文件夾配置、日志、ckpt 都放里面選目標(biāo)采樣率 40k 或 48k再?zèng)Q定模型是否帶音高指導(dǎo)——唱歌場(chǎng)景必須選是純語(yǔ)音可以選否。版本默認(rèn) v2對(duì)應(yīng)assets/pretrained_v2/f0G40k.pth這一代底模。step2a處理數(shù)據(jù)填入訓(xùn)練文件夾路徑點(diǎn)處理數(shù)據(jù)。train/preprocess.py 會(huì)自動(dòng)遍歷所有能解碼的音頻用能量切片器-42dB 閾值、約 3.7 秒一片、0.3 秒重疊切成短片段并做響度歸一化同時(shí)做 48Hz 高通濾掉低頻轟鳴。你只需要保證素材是單一說(shuō)話人、低底噪、無(wú)背景音樂(lè)原曲帶伴奏的先丟進(jìn)伴奏人聲分離去混響去回聲頁(yè)簽用 UVR5 提一遍干聲。step2b特征提取音高用 CPU 提取選 rmvpe 算法Hubert 聲學(xué)特征用 GPU 提取多卡可以用-分隔填多個(gè)卡號(hào)并行。step3開始訓(xùn)練關(guān)鍵參數(shù)就三個(gè)默認(rèn)值基本能用參數(shù)默認(rèn)值說(shuō)明save_every_epoch5每 5 個(gè) epoch 存一次 ckpttotal_epoch2010 分鐘小數(shù)據(jù)跑完 20 輪通常就夠每張顯卡的 batch_size按顯存自動(dòng)估算顯存緊就往下調(diào)提示數(shù)據(jù)在 10 分鐘以內(nèi)的小數(shù)據(jù)勾上緩存所有訓(xùn)練集至顯存能明顯提速數(shù)據(jù)量大就別勾收益小還容易炸顯存。訓(xùn)練結(jié)束后你會(huì)拿到三樣?xùn)|西實(shí)驗(yàn)?zāi)夸浝锏拇篌w積訓(xùn)練 ckpt、assets/weights/里的小體積推理模型.pth、以及用 train/train_index.py 基于 faiss 建好的 .index 索引文件。推理時(shí) .pth 和 .index 要配套選。模型到手跑第一句轉(zhuǎn)換。第一次轉(zhuǎn)換先摸透三個(gè)參數(shù)模型推理 → 單次推理頁(yè)簽里選模型后拖入音頻真正影響聽(tīng)感的是這三個(gè)滑塊變調(diào)整數(shù)半音數(shù)12 升一個(gè)八度-12 降一個(gè)八度男女互轉(zhuǎn)基本就是 ±12檢索特征占比index_rate默認(rèn) 0.75控制拿訓(xùn)練集特征替換源特征的比例拉高音色更像目標(biāo)說(shuō)話人保護(hù)protect默認(rèn) 0.33保護(hù)清輔音和呼吸聲、防止電音撕裂拉滿 0.5 等于關(guān)閉保護(hù)音高提取算法選 rmvpe 即可它是默認(rèn)值也是目前最穩(wěn)的選擇。轉(zhuǎn)完不滿意先看批量推理頁(yè)簽填輸入文件夾整批音頻會(huì)輸出到opt/目錄適合回頭一次性驗(yàn)證多個(gè)素材。提示同一個(gè)輸入路徑連續(xù)推理時(shí)程序會(huì)緩存已提取的音高反復(fù)調(diào)參對(duì)比不用每次等重新提取。想更懂它為什么這樣工作花兩分鐘看看目錄劃分。目錄怎么分核心模塊速覽Retrieval-based-Voice-Conversion-WebUI/ ├── webui.py # WebUI 入口五個(gè)頁(yè)簽都掛在這 ├── realtime_gui.py # 實(shí)時(shí)變聲獨(dú)立 GUI ├── infer/ # 推理核心 │ ├── vc/pipeline.py # 轉(zhuǎn)換主流程 │ ├── hubert.py # Hubert 特征提取 │ ├── rmvpe.py # RMVPE 音高提取 │ └── rtrvc.py # 實(shí)時(shí)推理接口 ├── train/ # 切片、特征提取、訓(xùn)練、索引構(gòu)建 ├── tools/ # UVR5 分離、CUDA Graph 等工具 ├── configs/ # v1/v2 網(wǎng)絡(luò)配置文件 └── i18n/ # 12 種語(yǔ)言界面三個(gè)設(shè)計(jì)點(diǎn)值得知道檢索式替換推理時(shí)先在 faiss 索引里找訓(xùn)練集中最相似的特征top1蓋住輸入源特征相當(dāng)于把目標(biāo)音色的聲紋指紋壓到源特征上音色泄漏就是這么被掐斷的設(shè)備自適應(yīng)精度configs/config.py 按顯存和 SM 版本自動(dòng)決定 fp16/fp32 甚至退回 CPUPascal 和 16 系老卡不會(huì)被強(qiáng)推半精度模塊化推理鏈路音高RMVPE、聲學(xué)特征Hubert、聲碼器VITS 系各自獨(dú)立換算法只需換 infer/ 下對(duì)應(yīng)模塊理解了結(jié)構(gòu)看看別人拿它做什么。唱歌、直播、批量轉(zhuǎn)換三個(gè)真實(shí)用法翻唱與 AI 歌手訓(xùn)練時(shí)是否帶音高指導(dǎo)必須選是推理時(shí)變調(diào)給 ±12 做男女對(duì)調(diào)音高用 rmvpe 提取男低音場(chǎng)景 RMVPE 的識(shí)別比老算法穩(wěn)得多。想融合兩個(gè)人的音色用ckpt處理頁(yè)簽的 ckpt-merge 把兩個(gè) .pth 按比例混合即可不必重訓(xùn)。直播與虛擬形象跑realtime_gui.py輸入輸出設(shè)備選同一種類型比如都用 MME追求更低延遲就切 ASIO端到端 90ms 量級(jí)。界面里顯示的算法延遲/推理時(shí)間會(huì)實(shí)時(shí)更新方便你按硬件調(diào) block_time 和 crossfade。批量與進(jìn)階調(diào)參輸出有電音撕裂把 protect 往 0.5 方向調(diào)低音色不夠像把 index_rate 提到 0.8 以上并確認(rèn) .index 選對(duì)了。顯存富余的話batch_size 按顯存 GB 數(shù)除以 2往上加是 webui.py 里用的估算邏輯訓(xùn)練提速明顯。踩坑速查表現(xiàn)象大概率原因一句話解法啟動(dòng)報(bào)依賴缺失或 cuda.is_available() 為 FalseTorch 的 CUDA 版本與驅(qū)動(dòng)不匹配按顯卡重選 cu118/cu128 依賴重裝訓(xùn)練中途顯存 OOMbatch_size 過(guò)大或勾了顯存緩存調(diào)小 batch_size大數(shù)據(jù)關(guān)掉緩存至顯存轉(zhuǎn)換出來(lái)還像原說(shuō)話人索引沒(méi)選或 index_rate 過(guò)低確認(rèn) .pth 與 .index 配套占比拉到 0.75 以上輔音處電音、撕裂保護(hù)參數(shù)沒(méi)生效protect 調(diào)到 0.4~0.5 之間注意 0.5 是關(guān)閉實(shí)時(shí)變聲爆音或延遲忽大忽小輸入輸出設(shè)備 hostapi 類型不一致兩側(cè)選同類型如都 MME進(jìn)階切 ASIO從 10 分鐘素材到可聽(tīng)感不錯(cuò)的模型RVC-WebUI 把這條鏈路壓到了裝依賴、下模型、點(diǎn)按鈕的長(zhǎng)度。建議下一步先拿 v2 底模跑一遍默認(rèn)參數(shù)驗(yàn)證流程再回頭調(diào) index_rate 和 protect 這兩個(gè)最敏感的旋鈕——它們決定了你離目標(biāo)音色還差多少。更多歷史細(xì)節(jié)可以翻 docs/cn/Changelog_CN.md?!久赓M(fèi)下載鏈接】Retrieval-based-Voice-Conversion-WebUIEasily train a good VC model with voice data 10 mins!項(xiàng)目地址: https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考