!!!說明
:
- 本教程僅為 AI 學習交流
- 為避免侵權,此項目所有數據和模型需要自行解決
- 技術本身沒有好壞,但禁止利用技術進行違法犯罪
簡介#
相信這幾天一定被各個視頻平台的「冷門歌手」—— 孫燕姿刷屏了吧,AI 合成了逼真的孫燕姿的聲音,然後去演唱別的歌曲。沒錯,上面那個破音版《烏梅子醬》就是利用此技術實現的,今天我們就來簡單介紹背後的技術,並教大家如何使用 colab 實現翻唱。
項目介紹#
Sovits
(So-vits-svc)是由是中國民間歌聲合成愛好者 Rcell 基於 VITS、soft-vc、VISinger2 等一系列項目開發的一款開源免費 AI 語音轉換軟件,可以實現音色的重現,可以簡單理解為一個很厲害的變聲器。
colab 介紹#
為什麼用 colab#
電腦性能良好的朋友完全可以用自己的電腦進行訓練(必須是 N 卡),我的電腦是輕薄本,跑不了這個項目,於是使用谷歌的 colab 進行翻唱演示
什麼是 colab#
簡單理解,colab 就是谷歌為廣大開發人員提供的在線算力平台,像我這樣的平時學習的時候有算力需求,但是個人電腦無法滿足時就可以使用 colab。
colab 可以免費使用,也可以付費使用,免費的性能差一點,付費的按算力計費,但也不算貴。以前我用這個來跑stable diffusion
,後來白嫖的人太多了,谷歌就禁止免費用戶用 colab 運行 stable diffusion,所以我也不知道谷歌什麼時候會限制用這個來進行唱歌訓練。
數據與模型準備#
此項目除了 AI 翻唱,也可以讓 AI 複述你的話,就當做一個變聲器使用。大家可以訓練自己的模型,我這裡作為演示,就只教大家如何利用模型進行翻唱,以李榮浩的《烏梅子醬為例》
1. 首先需要準備你想要翻唱的歌曲,因為這個項目只是翻唱,所以需要進行人聲分離,可以使用這個在線工具進行分離操作
2. 將分離好的人聲和背景音樂下載下來,現在只需要用人聲進行翻唱,翻唱完成以後再把人聲和背景音樂結合在一起就可以了
3. 一首歌通常三到四分鐘,顯卡性能往往不足,所以需要將歌聲切片,每段控制在一分鐘以內,然後分別訓練,最後再拼在一起
下載別人訓練好的孫燕姿的語音模型
數據和模型請自行下載
好了,現在我們開始正式學習如何利用 colab 進行 AI 翻唱。
打開項目#
首先打開 GitHub項目地址,來到最下方找到Colab notebook scripts
,點擊翻唱箭頭指向的鏈接,另一個是訓練的項目。
可以看到打開 colab 的 note 頁面和我之前講的 jupyter 很像,其實就是一樣的。此項目是別人 notebook,所以我們需要點擊保存為副本到我們自己的谷歌雲盤之中
配置#
保存完成以後,我們需要檢查我們的項目是否是用 GPU 運行的,可以先點擊連接在運行,相當於運行服務器,也可以直接點擊第一個運行。這裡的Tesla T4
就是 GPU 的型號,也有可能是別的顯卡,谷歌根據此時的算力需求自動分配的。
下面依次運行這兩個配置代碼,免費的機器運行很慢,要耐心等待,等Setup 1
運行完成以後運行Setup 2
。之後就接著下面的運行下載 ContentVec 和 hugging face,可以看到下載速度非常快.
HF 模型下載完成以後,可以點擊列表下載某個具體的模型,我使用的是 AI 孫燕姿的模型,所以我需要上傳其他模型
連接雲盤與上傳數據#
點擊左上角的雲盤按鈕,會提醒你運行連接雲盤的代碼,根據提示運行和給授權就可以了,這是將此項目與你的雲盤連接起來,不是授權給第三方,所以可以放心使用。
接下來打開自己的谷歌雲盤,上傳自己的模型,然後點擊分享按鈕,打開權限,讓所有收到此分享鏈接的人都能使用,復制分享鏈接填到下面的框中,然後運行即可自動下載模型。
接著運行下面一行的解壓程序,用來解壓我們的模型
訓練#
把切片好的人聲音頻文件上傳到 raw 文件夾,設置好參數點擊Convert
就可以開始訓練了
tips:
每段音頻盡可能小一點,不超過 1 分鐘,建議 40 秒左右
每次只上傳一段音頻,訓練完成,下載以後再上傳下一段進行訓練
參數先默認,再根據訓練效果慢慢調
總結#
今天我們簡單介紹了Sovits
項目,並使用 colab 進行翻唱自己喜歡的歌曲,大家可以自己親自上手體驗,感興趣的話可以使用 GitHub 項目進行訓練自己喜歡的模型,教程 b 站也有,但一定要注意禁止違法犯罪,不要侵權,自己玩玩和學習 AI 就行了。