把音樂中的人聲跟樂器都分離出來的超強軟體Spleeter

在查有沒有command line可以分離歌聲跟伴奏的工具時,發現了這個強大的程式。雖然跟一般專業處理聲音的軟體比起來,處理出來的結果沒有太大差別,失真也沒有比較少,不過他強大的地方在於除了人聲以外,他還可以分離出鋼琴、鼓聲、Bass等等樂器。對於想玩重新編曲的或DJ的人來說,應該是一個蠻實用的工具。

安裝

因為Spleeter是用Python寫的,所以要先確認一下電腦中有沒有裝Python。macOS的話應該都已內建了。如果沒有,或是版本太舊,可以使用homebrew先安裝好Python brew install python

安裝完python之後,確認一下python的套件管理工具pip可否使用 pip -V,可以使用的情況下會出現pip的版本資訊。

若無法使用pip,可以依照以下方式安裝:

  1. 下載安裝程式 curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
  2. 用python執行剛剛下載的安裝程式 python3 get-pip.py

透過pip安裝Spleeter

接著我們就透過pip這個套件管理工具來安裝spleeter,在command line輸入 pip install spleeter 即可。

使用方式

spleeter的指令很簡單,如下:

spleeter separate 輸入的檔案(也可以是影片) -p 所要使用的分離模式(下面會介紹) -o 要輸出到的目錄

例如:spleeter separate 2103.mp4 -p spleeter:2stems -o output

等他跑完之後,就會看到剛剛設定的輸出目錄中,有多一層目錄。點進去看,就能看到剛剛分離出來的檔案們:vocals.wav, drums.wav …etc 大功告成!

分離模式

分離模式產生結果取樣模式
spleeter:2stems人聲 / 伴奏11kHz
spleeter:4stems人聲 / Bass / 鼓 / 其他伴奏11kHz
spleeter:5stems人聲 / Bass / 鼓 / 鋼琴 / 其他伴奏11kHz
spleeter:2stems-16kHz人聲 / 伴奏16kHz
spleeter:4stems-16kHz人聲 / Bass / 鼓 / 其他伴奏16kHz
spleeter:5stems-16kHz人聲 / Bass / 鼓 / 鋼琴 / 其他伴奏16kHz
分離模式表

其他說明請見官方文件

Apple M1 M2 晶片無法執行

換了M2 Macbook後某一天突然想到要玩一下spleeter,結果竟然噴錯了!有遇到類似問題的,也可以看一下這篇的第三步之前(不需要自己build一版),或是這篇。另外要用conda list確認一下conda安裝的python版本,我本來被裝了3.10.x,後來改成 python=3.8 才有辦法跑。

在〈把音樂中的人聲跟樂器都分離出來的超強軟體Spleeter〉中有 1 則留言

發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *

這個網站採用 Akismet 服務減少垃圾留言。進一步了解 Akismet 如何處理網站訪客的留言資料