惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

Simon Willison's Weblog
Simon Willison's Weblog
G
Google Developers Blog
Spread Privacy
Spread Privacy
I
InfoQ
V
V2EX
S
Schneier on Security
小众软件
小众软件
C
CERT Recently Published Vulnerability Notes
博客园 - 聂微东
奇客Solidot–传递最新科技情报
奇客Solidot–传递最新科技情报
Stack Overflow Blog
Stack Overflow Blog
T
Threat Research - Cisco Blogs
L
Lohrmann on Cybersecurity
Recent Announcements
Recent Announcements
Cyber Security Advisories - MS-ISAC
Cyber Security Advisories - MS-ISAC
Attack and Defense Labs
Attack and Defense Labs
云风的 BLOG
云风的 BLOG
The Hacker News
The Hacker News
S
SegmentFault 最新的问题
C
Cybersecurity and Infrastructure Security Agency CISA
NISL@THU
NISL@THU
OSCHINA 社区最新新闻
OSCHINA 社区最新新闻
GbyAI
GbyAI
Latest news
Latest news
S
Secure Thoughts
Project Zero
Project Zero
MongoDB | Blog
MongoDB | Blog
I
Intezer
Security Latest
Security Latest
Apple Machine Learning Research
Apple Machine Learning Research
Vercel News
Vercel News
N
Netflix TechBlog - Medium
V2EX - 技术
V2EX - 技术
量子位
T
Threatpost
T
The Blog of Author Tim Ferriss
Y
Y Combinator Blog
T
Tor Project blog
A
Arctic Wolf
Microsoft Security Blog
Microsoft Security Blog
T
The Exploit Database - CXSecurity.com
大猫的无限游戏
大猫的无限游戏
T
Tailwind CSS Blog
freeCodeCamp Programming Tutorials: Python, JavaScript, Git & More
C
Check Point Blog
博客园 - Franky
Google DeepMind News
Google DeepMind News
The Register - Security
The Register - Security
The GitHub Blog
The GitHub Blog
L
LINUX DO - 热门话题

xnum’s blog

2025/03 初春日本四國遊記 2024/8 菲律賓遊學記 使用DNS紀錄來自動更新IP白名單 lvremove 遇到 contains a filesystem in use 多媒體檔案管理和下載伺服器 - 軟體篇 淘寶退貨 順豐寄回大陸經驗 在Linux上面安裝glances並設定為系統服務 在dnsmasq加上自動生成PTR紀錄 ultrahuman ring air 台灣購買兼使用心得
AI Singing Voice Conversion (SVC) 的試玩心得
Jia Jun Yeh · 2024-04-21 · via xnum’s blog

一時興起想來玩玩看用AI換歌曲的演唱者聲音,想當然不會有現成的,要自己訓練模型才行。

需要準備的煉丹材料大約是總計30分鐘到一小時的歌聲材料,最好乾淨而且覆蓋的音域夠廣.

如果材料裡面有伴奏的話,出來的聲音完全沒法用.如果覆蓋的音域不夠廣,在某些音高模型推理出來的結果就會啞掉.

由於so-vits-svc的中文資源看起來比較多,就先嘗試用這套來做訓練了。

準備資料的過程大約是準備好一些原始音檔,長度可能是5分鐘到10分鐘不等,太長的直播類型影音檔就要先解出音樂檔,切割適當大小後再丟去分離人聲。很長的原始資料會讓分離人聲軟體記憶體耗盡崩潰,一般來說切到10分鐘以內就可以。接著就要請出第一個免費軟體來分離人聲了。

一開始我用的是voice-separate-v0.0.4,但分離出來的效果不是太滿意。看到有人推薦Untimate Vocal Remover 5,發現他的效果不錯,裡面也有數個模型可以選擇。這邊我選的是:

Process Method: VR Architecture
Window Size: 320
Aggression setting: 5
VR Model: 5_HP-Karaoke-UVR

分離後甚至連其他人聲的和聲都被劃分到伴奏去,分出來的人聲相對正確乾淨許多。

接續就是用slicer切割成比較小的音檔了。如果切割設定不正確,就會看到好幾個數十秒的大檔,要自己慢慢調整到適當的切割參數。我的標準是讓他產生0秒到數十秒的音檔,留下2秒到25秒的音檔。

資料都準備好以後就可以跟著so-vits-svc的教學跑,但是上面有很多選項跟分支路線,我選擇的是:

1. 編碼器:用vec768l12
2. 底模:隨便抓的
3. NSF-HIFIGAN:要抓,因為擴散模型很建議練一份
4. F0預測器:用rmvpe
5. 響度崁入:啟用
6. 預處理(preprocess_hubert_f0.py):使用淺擴散功能
7. 主模型訓練:我訓練到7200步
8. 擴散模型訓練:我訓練到4000步
9. 聚類音色洩漏控制模型:練就對了,完成訓練會自己退出
10. 特徵檢索:同上
11. 針對推理時的擴散模型使用,我覺得k_step在100到300間對於聲音的乾淨程度都不錯,沒有繼續往大的方向試

最後推理完成後,出來的聲音檔沒意外的話會聽起來顯得很單薄,這時候就需要用混音軟體稍微再去加強厚度,有點類似卡拉OK的聲音效果。Audacity就能提供一些基本的編輯功能,在聲音效果選擇壓縮器和殘響,套用上去之後可以有點改善,更進階的調整就需要學習混音軟體的使用了,調整完畢之後再把伴奏音軌也加進來,並且適當的調整兩個音軌的音量到比較平衡,一首歌就完成了。

儘管模型訓練出來的擬真程度已經很高,但針對一些比較需要唱腔用腹部發音的歌曲,像是:晴る,就會顯得不自然,尤其是拉長音和換氣的部分會整個消失或破碎。總之推理的結果會缺乏渾厚感或是感情。另外一首歌的強弱大小聲好像也會被犧牲掉,就看要不要再用混音軟體後製處理看看了。反之來說,一些輕快的歌曲,像是:サインはB,基本後製以後就聽不太出差異。

至於訓練的平台,我在runpod上面租了一台雲端機器,使用community cloud,一張RTX3090每小時只要0.26美元,總共花了五個小時做完這些訓練,花費才1美金多。比起用自己的電腦訓練,還要開冷氣降溫,真是實惠多了。但硬碟空間給的有點少,會不小心用滿就是。但他只能預先儲值才能使用,結果預儲值了25美金,裡面還有23美金不能領出來,真是有點浪費錢。