回この記事はあるくおすし氏による寄稿記事です。(ボーカル/ベース/ピアノ/ドラム/その他)まとめはじめにはじめまして、あるくおすしというものです。去年(2019)の半ばあたりから主に音MAD等の映像作品を作っています。自分に興味があるという方は@walkingsushiboxなりuser/52842941を覗いてやってください。Spleeterってなんぞ早速本題です。Spleeterとはフランスの音楽配信サイトであるDeezerが開発したパート分離ソフトで、任意の楽曲をコイツに食わせるとドラム、ベース、伴奏、ボーカル、などのパート毎に分離された音声ファイルを出力してくれます。今流行りの機械学習の技術を使用しており、自分の手元にある曲を使ってアルゴリズムを「訓練」することもできるそうです(自分はやりませんが)。うまく活用すれば耳コピやボーカル抽出のワークフローが劇的に変化します。mlなどのオンラインサービスを使うソフトをダウンロードして自分のパソコンで走らせるの二種類があります。この記事では自分の手元で走らせる方法を解説していきますが、少々手間がかかります。一度導入してしまえば様々な場面で強力な効果を発揮するので、地道にやっていきましょう。英語が分かるという方はこちらの動画をご覧ください。ぶっちゃけこの記事はこの動画の受け売りですので。https://www.youtube.com/watch?v=tgnuOSLPwMI前提この記事で紹介するのはWindowsマシンへのインストール方法です。Macとか使ってる人は別の記事を探してください。SpleeterはGPUで動作するバージョンも用意されていますが、今回解説するのはCPUで動作するバージョンです。グラフィックカードを持っていて、その性能を有効活用したい方は以下のリンクからGPUバージョンの導入方法を見てやってみてください。https://github.com/deezer/spleeter/wiki/1.-Installation導入方法Pythonの導入SpleeterはPythonというプログラミング言語で書かれているため、その言語をパソコンにインストールする必要があります。こちらのサイトから自分の環境に合ったものを選びます。Spleeterは3.6.xもしくは3.7.xで動作が保証されているので、僕は3.7.5を使っています。Nowをクリックします。PATH”という項目に必ずチェックを入れてください。こんな感じになるPowerShellの起動Pythonのインストールが終わったらPowerShellを起動してみましょう。コマンドプロンプトと同じようなものですがシンタックスハイライト(色分け)が行われるので非常に見やすいです。ウィンドウをここで開くというオプションが表れますのでそれを選択してもよし。うまく起動できれば以下のような青い画面が立ち上がります。Spleeterはコマンドラインで動作するソフトウェアなのでインストール・実行もすべてこの画面から行います。先ほど入れたPythonが正しく動作しているかのチェック。--versionと入力してみます。3.x.xと正しく出力されればOKです。Spleeterのインストールではコマンドを使ってSpleeterをインストールしていきます。Spleeterはオンライン上でパッケージ化されて配布されているのでpipコマンドで取り寄せます。spleeterと入力してください。少々待つとなんかうじゃうじゃ出てきますがこれでOKです。--helpを実行してみましょう。ご覧のようにヘルプが表示されれば成功です。ヨシ!ffmpegの導入ソフト本体は入ったわけですが、まだやることがあります。ffmpegの導入です。ffmpegは音声や動画を扱うための前提ソフトとなります(動画編集とかやってる方なら知っていると思います)。https://ffmpeg.zeranoe.com/builds/にアクセスして必要なものをダウンロードしていきましょう。ダウンロードが完了したら任意の場所に解凍します。このとき解凍後のフォルダをどこか忘れない場所に設置してください(デスクトップはお勧めしない)。今回はドキュメントに設置した前提で話を進めます。次にffmpegをspleeterが呼び出せるようにします。右クリックしてパスのコピーを行います。検索欄に「システム」と入力しシステムのコントロールパネルを開きます。たどり着きます(画像拡大推奨)。編集を押すと以下の画面が出てくるので、右上から新規を選択し、さっきコピーしたフォルダへのパスを貼り付けます。このとき左右の””を外し、末尾に/binを追加することを忘れないでください。最後にPowerShellでffmpegを実行し、ffmpegが正しく認識されているか確認しましょう。以上のように表示されれば成功です。インストールは完了しました。ソフトを使ってみましょう。今回は相対性理論の「ミスパラレルワールド」を例に使用方法を解説していきます。並行世界spleeterには音を分割する際全部で3つのモードがあります。5を使うと楽器ごとにパートを分離できます。半端ねえ!実際にコマンドを打っていきましょう。右クリックからコピーできます)。CPUの性能にもよりますが、少なくとも1分ほどはかかるので気ままに待ちましょう。Spleeterの初回実行時、学習モデルのダウンロードがあるため多少時間がかかります。根気強く待ちましょう。pretrained_models\2stems.と表示されうまく行かなくなります。その場合は手動で学習済みモデルDLする必要があります。URLアーカイブを解凍し、PowerShellを実行したフォルダにpretraind_modelsフォルダを用意し、そこに入れて実行します。/accompaniment.wavと/vocals.wavがしっかり書き込まれてますね。実際にどの程度分離できているのか、出力された音声ファイルを聞いていきたいと思います。(ボーカル/伴奏)かなりクオリティの高いボーカル抽出が行えていますね。カラオケ音源が手に入らない場合、これを使ってカバー音源を作ったりできそう。(ボーカル/ベース/ドラム/その他)ボーカル、othersがところどころ聞きづらくなっていますが、ベースやギターの耳コピは格段にやり易くなっていると思います。(ボーカル/ベース/ピアノ/ドラム/その他)今回の楽曲にはピアノが入っていないため4stemsとほとんど同じような結果になってしまいました。電子音楽やクラシックなどジャンルが違う曲を使えば全く違った結果になると思われます。まとめ以上でSpleeterの導入方法と使用方法の解説は終わりとなります。少々手間はかかりますが、手軽に先端技術に触れるよい機会になるのではないでしょうか。記事で紹介していない機能に、手元にある楽曲データを用いてモデルをさらに強化する方法などがあります。興味がある人はGitHubのドキュメントを読んでもっと遊んでみてください。機械学習に関する開発は昨今技術の進展が目覚ましいため、今後このサービスがどのように変わっていくのか引き続き動向をチェックしていきたいと思います。ブログ初の寄稿ということで気合を入れて書きました。それではまた逢う日までノシ。コメントをキャンセルメールアドレスが公開されることはありません。*サイト次回のコメントで使用するためブラウザーに自分の名前、メールアドレス、サイトを保存する。Reverb編EbSynthの使い方。内輪成分は少なめです。・ブラックジョーク・愚痴で成り立っています。