機械学習を用いて音楽データからドラム・ベース・ピアノ・ボーカルを抽出できる spleeter を試してみました。
ギターの音が聞きやすくなって楽しいです。耳コピーも楽になる場合がありそうですね。
目次
インストール
Linuxでインストールしてみました。mkdir spleeter 11053 git clone https://github.com/Deezer/spleeter 11058 mv ~/Miniconda3-latest-Linux-x86_64.sh ./ 11059 chmod +x Miniconda3-latest-Linux-x86_64.sh 11060 sudo ./Miniconda3-latest-Linux-x86_64.sh 11063 . .zshenv 11064 . ~/.zshenv 11066 conda list 11069 conda env creat -f spleeter/conda/spleeter-cpu.yaml 11070 conda env create -f spleeter/conda/spleeter-cpu.yaml 11074 spleeter separate -i spleeter/audio_example.mp3 -p spleeter:2stems -o output conda git clone https://github.com/Deezer/spleeter conda install -c conda-forge spleeter
# >>> conda initialize >>> # !! Contents within this block are managed by 'conda init' !! __conda_setup="$('/usr/local/share/miniconda3/bin/conda' 'shell.bash' 'hook' 2>$ if [ $? -eq 0 ]; then eval "$__conda_setup" else if [ -f "/usr/local/share/miniconda3/etc/profile.d/conda.sh" ]; then . "/usr/local/share/miniconda3/etc/profile.d/conda.sh" else export PATH="/usr/local/share/miniconda3/bin:$PATH" fi fi unset __conda_setup # <<< conda initialize <<<
使い方
conda activate spleeter-cpu
spleeter separate -i spleeter/audio_example.mp3 -p spleeter:2stems -o output
使ってみて
かなり綺麗に分離される音楽データがあって、ドラムのコピーは捗りそうです。
ベースはギターと被るせいか、うまく分離できない場合があります。ぼくの試した音楽データの場合は、ベースはあまりうまく出来ないですね。
ソース(音楽データ)によっては2stemsでは全然分離されない場合がありますね。 2stemsではうまくいかなくても、4stemsや5stemsでは分離されるものもあります。
ギターのカッティングなど、よく聞こえるようになって楽しいです。
関連リンク
- https://cdm.link/2019/11/deezers-spleeter-open-source-ai-tool-to-split-stems/
- https://deezer.io/releasing-spleeter-deezer-r-d-source-separation-engine-2b88985e797e
- https://github.com/deezer/spleeter/wiki/1.-Installation#using-conda
- https://github.com/deezer/spleeter/wiki/2.-Getting-started
- https://github.com/deezer/spleeter
- https://docs.conda.io/en/latest/
- https://conda.io/projects/conda/en/latest/user-guide/install/linux.html