Spleeter導入メモ~プログラムのプの字も知らないド素人が四分五裂しただけ~
<Spleeterとは?>
音楽ファイルを、ボーカルファイルと楽器演奏ファイルに分割する無料プログラム
(ただし、無料に釣られて面白半分に手を出すと地獄を見る)
<ここまでは簡単だった点>
Miniconda(Anacondaの一種)をインストール
https://docs.conda.io/en/latest/miniconda.html
Gitをインストール
https://git-scm.com/downloads
<それぐらいできるだろと思った点>
git clone https://github.com/deezer/spleeter
conda install -c conda-forge spleeter
conda env create -f spleeter/conda/spleeter-cpu.yaml
conda activate spleeter-cpu
(コマンドを一行ずつコピペして実行)
<つまづいた点>
Spleeterがインストールできない
conda env create -f spleeter/conda/spleeter-cpu.yaml を入力すると
エラー表記が返ってくる
EnvironmentFileNotFound: 'C:\Users\ユーザー名\spleeter\conda\spleeter-cpu.yaml' file not found
そこから先に進めない
<原因>
spleeter-cpu.yaml がない
(コマンド表記では所定の場所には見つからないとなっているがそもそもフォルダごとない)
<解決策>
右クリックから新規作成で、テキストドキュメントを作成
テキストドキュメント=メモ帳に以下をコピペする
name: spleeter-cpu
channels:
- conda-forge
- anaconda
dependencies:
- python=3.7
- tensorflow=1.14.0
- ffmpeg
- pandas==0.25.1
- requests
- pip
- pip:
- museval==0.3.0
- musdb==0.3.1
- norbert==0.2.1
- spleeter
上書き保存する
ファイルの名前を 新しいテキスト ドキュメント.txt から
spleeter-cpu.yaml にコピペで書き換える(注:拡張子ごと書き換える)
Cドライブのspleeterフォルダの中に 新しいフォルダー を作る
作成したフォルダの名前を conda に書き換える
condaフォルダの中に先ほど作成した spleeter-cpu.yaml をコピペする
この状態でAnaconda Prompt (miniconda3)をもう一度立ち上げて
conda env create -f spleeter/conda/spleeter-cpu.yaml
を入力するとインストールに成功する
<つまづいた点>
サンプル音源で分割をテストすると分割に成功しましたという表記が出るが
できたファイルがどこにあるのかわからない
<原因1>
spleeterフォルダの中に output または audio_output というフォルダがない
解説サイトにあるような
spleeter separate -i spleeter/audio_example.mp3 -p spleeter:2stems -o output
または
python -m spleeter separate -i audio_example.mp3 -o audio_output
というコマンド表記が間違っている
正確には、個人のPC情報のため一部が省略されている点と、説明不足な点が混ざっている
<解決策1>
spleeterフォルダ内のaudio_example.mp3を選択して右クリック
右クリックメニューからプロパティを開く
セキュリティタブを開く
オブジェクト名にファイルのアドレスが表示されているので全部コピーする
先のコマンドの spleeter/audio_example.mp3 の部分をまるまるコピペで置き換える
書き換えたコマンドをAnaconda Prompt (miniconda3)にコピペすると分割が成功する
成功するのは成功するのだがspleeterフォルダの中にはoutputと名のつくフォルダがない
Cドライブをまるごと検索するとCドライブ直下にoutputフォルダが単体で作成されている
その中に分割に成功したファイルが発見できる
<原因2>
-o outputというコマンドが-oでターゲットフォルダを指定しているのだが
肝心のoutputフォルダのアドレスが正確に表記されていないために
Cドライブ直下にoutputフォルダを作れというコマンドとして処理されてしまう
2回目以降は最初に作成されたoutputフォルダの中に順次、分割されたファイルが作られていく流れ
<解決策2>
outputの部分を、自分が作成先に指定したいフォルダのアドレスに書き換える
<つまづいた点>
日本語名のファイルを分割しようとするとNo such file or directoryと表記されて分割できない
<原因>
ファイル名に「半角スペース」または「全角スペース」が含まれている
<解決策>
エラーで表示されたファイル名をよく見るとスペース以降のファイル名が省略されている
つまりスペース以降のファイル名を認識しないということ
(2バイト文字に特有の呪い)
スペースを削るまたはファイルをリネームする
<気がついた点>
アイコンを叩いてアプリを起動してマウスで操作する普通のフリーソフトではない
コマンドライン(真っ黒なウインドウに白文字の英語が並んでるやつ)を使って
一字一句間違いなくコマンドを正確に入力すると結果が返ってくるタイプ(コピペ推奨)
アナコンダを使ってコマンドを入力して
Spleeter本体ファイルをダウンロード&インストールする仕組みになっている
インストール後、conda activate spleeter-cpu のコマンドを入力することで
アナコンダのコマンドラインを使ってSpleeterの操作が可能になる仕組み
GUIアプリケーションではなくコマンドラインで操作するプログラムなので
一般的なソフトと同じ感覚でブラウザからダウンロードする必要は全くない
落としたファイルを叩いてもとくに何も起こらないというかよくわからない
DLしておくとむしろ邪魔というか混乱する
DLした方は消した方がPCの容量にもやさしい
<NO MORE 老人会>
分割ソフトと言うと、なぜかうまいみかんが食べたくなる