練專屬音色模型:RVC 變聲器從錄制到批量換聲的完整指南)
10 分鐘錄音訓(xùn)練專屬音色模型RVC 變聲器從錄制到批量換聲的完整指南【免費(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-WebUIRVCRetrieval-based Voice Conversion WebUI是一個(gè)開(kāi)源的語(yǔ)音克隆與變聲器工具。你給它 10 到 50 分鐘的人聲錄音它訓(xùn)練出一個(gè)屬于你的音色模型之后任何音頻丟進(jìn)去都會(huì)用那個(gè)音色重新輸出。給視頻配音、給游戲角色換聲、做翻唱又不想碰音頻工程細(xì)節(jié)的人用的就是它。要準(zhǔn)備多少錄音錄的時(shí)候注意什么數(shù)據(jù)量決定效果上限這是整個(gè)流程里唯一不可逆的一步。官方 FAQ 的建議是總時(shí)長(zhǎng) 10 到 50 分鐘——因?yàn)槟P涂窟@些樣本覆蓋你不同的發(fā)音狀態(tài)樣本越足音色還原越穩(wěn)。如果你的錄音干凈、底噪低、音色有辨識(shí)度5 到 10 分鐘也能訓(xùn)出可用模型但上限就鎖住了。錄的時(shí)候把握三件事環(huán)境安靜。底噪會(huì)直接進(jìn)模型訓(xùn)練輪次再高也壓不下去語(yǔ)速、語(yǔ)調(diào)、情緒要有變化。別只念一種腔調(diào)模型靠這些樣本學(xué)會(huì)不同的發(fā)音狀態(tài)單條片段控制在幾十秒到一兩分鐘。過(guò)長(zhǎng)的錄音在切分和內(nèi)存占用上都是負(fù)擔(dān)錄完統(tǒng)一轉(zhuǎn)成 WAV 即可。采樣率不用糾結(jié)預(yù)處理階段會(huì)自動(dòng)重采樣到訓(xùn)練時(shí)選定的檔位。我的機(jī)器跑得動(dòng)嗎顯存、內(nèi)存和軟件夠不夠先說(shuō)結(jié)論4GB 顯存的顯卡可以完成訓(xùn)練和推理。程序啟動(dòng)時(shí)會(huì)自己讀顯存大小并調(diào)整內(nèi)部參數(shù)4GB 以下會(huì)自動(dòng)改用更保守的分塊配置。但如果你只有 3GB、2GB 的老卡官方 FAQ 的建議是直接放棄只能換卡或租云 GPU。除了顯存還有三樣前提不能省系統(tǒng)內(nèi)存。切分和音高提取吃 CPU 多進(jìn)程內(nèi)存不夠時(shí)把CPU 進(jìn)程數(shù)調(diào)低或手動(dòng)把訓(xùn)練音頻切短些ffmpeg。切分和重采樣全靠它Ubuntu 上sudo apt install ffmpegmacOS 上brew install ffmpeg預(yù)訓(xùn)練底模。倉(cāng)庫(kù)里各平臺(tái)的 dlmodels 腳本就是用來(lái)下載 assets 目錄底模的缺了底模訓(xùn)練和推理都起不來(lái)最快跑通的路徑從拉代碼到一鍵訓(xùn)練接下來(lái)所有命令都在項(xiàng)目根目錄執(zhí)行。# 拉取倉(cāng)庫(kù)代碼 git clone https://gitcode.com/GitHub_Trending/re/Retrieval-based-Voice-Conversion-WebUI進(jìn)入目錄后建虛擬環(huán)境并按顯卡裝依賴# 建環(huán)境并安裝依賴按 CUDA 版本選文件 python -m venv rvc-env # 激活 rvc-env 后執(zhí)行 pip install -r requirments_cu118_py312.txt有 CUDA 11.8 的卡選requirments_cu118_py312.txtCUDA 12.8 選requirments_cu128_py312.txt純 CPU 選requirments_cpu_py312.txt倉(cāng)庫(kù)里三個(gè)文件都在根目錄。然后啟動(dòng)訓(xùn)練網(wǎng)頁(yè)# 啟動(dòng) WebUI瀏覽器自動(dòng)打開(kāi) 7865 端口 python webui.py7865 是 configs/config.py 里寫(xiě)死的默認(rèn)端口被占用時(shí)可以用--port換。Windows 用戶也可以直接雙擊 go-webui.bat 走整合包路線。打開(kāi)訓(xùn)練頁(yè)后值得動(dòng)的數(shù)字就三個(gè)其余保持默認(rèn)參數(shù)英文 / 中文設(shè)置建議這樣設(shè)的理由batch size批次大小用頁(yè)面默認(rèn)值OOM 就往下調(diào)默認(rèn)按顯存大小自動(dòng)估算約為顯存 GB 數(shù)的一半是穩(wěn)定起步值save epoch保存間隔每 10 輪存一個(gè)點(diǎn)間隔小才能逐個(gè)試聽(tīng)挑出最早達(dá)標(biāo)的那個(gè)避免過(guò)擬合total epoch總輪數(shù)數(shù)據(jù)有底噪 20~30 輪干凈且時(shí)長(zhǎng)足可到 200 輪底噪大的數(shù)據(jù)訓(xùn)太多輪模型只會(huì)把噪音也學(xué)進(jìn)去官方 FAQ另外兩項(xiàng)影響明顯順手設(shè)一下采樣率選 48k 對(duì)應(yīng) v2 底模這是官方配置里質(zhì)量上限最高的一檔配置見(jiàn) configs/v2/48k.json音高提取算法選 rmvpe界面標(biāo)注它效果最好且只占少量顯存harvest 低音更好但極慢pm 適合歌聲輸入提速。確認(rèn)訓(xùn)練集文件夾路徑、填一個(gè)實(shí)驗(yàn)名后面找模型全靠它點(diǎn)一鍵訓(xùn)練。流程會(huì)依次執(zhí)行切分、音高提取、特征提取、訓(xùn)練主邏輯在 train/train.py全程日志寫(xiě)在logs/實(shí)驗(yàn)名/下。為什么訓(xùn)練完聲音不像兩步?jīng)]做對(duì)相似度就會(huì)打折。漏了索引訓(xùn)練相似度直接打折索引文件決定結(jié)果保留多少訓(xùn)練集的音色。跳過(guò)它推理出來(lái)的聲音音質(zhì)可能不錯(cuò)但音色對(duì)不上。在網(wǎng)頁(yè)上點(diǎn)訓(xùn)練索引它會(huì)用 faiss 把訓(xùn)練特征聚成檢索庫(kù)產(chǎn)物是logs/實(shí)驗(yàn)名/下added_開(kāi)頭的.index文件。如果一鍵訓(xùn)練結(jié)束沒(méi)看到索引多半是訓(xùn)練集太大卡住了索引添加步驟重按一次訓(xùn)練索引即可這是官方 FAQ 里明確說(shuō)明的情況。index rate 沒(méi)調(diào)對(duì)音色泄露或音質(zhì)受限切到模型推理頁(yè)點(diǎn)刷新音色選你的模型和索引上傳一段音頻轉(zhuǎn)換。重點(diǎn)調(diào)的是檢索特征占比index rate范圍 0 到 1默認(rèn) 0.75調(diào)高接近 1音色完全錨定訓(xùn)練集不會(huì)漏出輸入源或底模的音色但音質(zhì)上限被訓(xùn)練集鎖死調(diào)低到 0不做檢索保護(hù)音質(zhì)可能更好但音色泄露問(wèn)題會(huì)回來(lái)訓(xùn)練集本身優(yōu)質(zhì)且時(shí)長(zhǎng)足時(shí)這個(gè)值反而不重要模型自己已經(jīng)不太引用外部音色變調(diào)是整數(shù)半音12 升八度、-12 降八度。保護(hù)滑條protect默認(rèn) 0.33專門(mén)防清輔音和呼吸聲撕裂輸出有電音時(shí)往高調(diào)。批量轉(zhuǎn)換和實(shí)時(shí)變聲能不能做能兩個(gè)方向都有現(xiàn)成入口。批量轉(zhuǎn)換不用開(kāi)網(wǎng)頁(yè)命令行直接跑tools/infer_batch_rvc.py# 批量轉(zhuǎn)換 input 目錄下每個(gè) wav 到 output 目錄 python tools/infer_batch_rvc.py --model_name 實(shí)驗(yàn)名 \ --input_path ./input --opt_path ./output \ --index_path logs/實(shí)驗(yàn)名/added_xxx.index \ --f0up_key 0 --f0method rmvpe目錄里每個(gè).wav會(huì)被逐個(gè)轉(zhuǎn)換輸出到--opt_path指定的文件夾。想說(shuō)話實(shí)時(shí)變聲雙擊 go-realtime_gui.bat 啟動(dòng)實(shí)時(shí)界面。官方給出的延遲數(shù)據(jù)是端到端 170ms——這是完整鏈路實(shí)測(cè)值換成 ASIO 輸入輸出設(shè)備可壓到 90ms但后者非常依賴聲卡驅(qū)動(dòng)支持普通 USB 聲卡別期待這個(gè)數(shù)字。30 秒自查清單訓(xùn)練跑完之后按這個(gè)順序花 30 秒驗(yàn)證一遍全過(guò)就是通了? 錄音總時(shí)長(zhǎng)到了 10 分鐘以上且底噪聽(tīng)感干凈——數(shù)據(jù)量是效果上限先確認(rèn)它?logs/實(shí)驗(yàn)名/下有added_開(kāi)頭的.index文件——沒(méi)有就回網(wǎng)頁(yè)重按一次訓(xùn)練索引? 推理頁(yè) index rate 保持在 0.75 附近保護(hù)滑條protect沒(méi)被亂調(diào)? 挑一個(gè)保存點(diǎn)模型把 10 分鐘錄音里沒(méi)用過(guò)的一段音頻扔進(jìn)去轉(zhuǎn)換聽(tīng)音色對(duì)沒(méi)對(duì)對(duì)上了整個(gè)流程就通了。接下來(lái)可以試試批量腳本和實(shí)時(shí)界面把換聲嵌進(jìn)你的工作流里?!久赓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),僅供參考