レビュー

AIで音楽をボーカル・ドラム・ベース・その他に分離できる「Demucs」

煩雑な環境構築作業をしなくても「Colaboratory」で手軽に試せる

「Hybrid Demucs from Colab」

 「Demucs」は、AI技術を利用して複数の楽器で演奏・ミックスされた音楽を、ボーカル・ドラム・ベース・その他の楽器に分離して出力できるアプリ。Facebookなどで知られるMeta社の研究部門Meta Researchが開発しているオープンソースプロジェクトで、無料で利用できる。

 本来はPythonの実行環境「Anaconda」などをインストールし、環境を構築して実行するスクリプトだが、Googleが提供しているWebブラウザー上でPythonを実行できる無料サービス「Colaboratory」上で動作する「Hybrid Demucs from Colab」が利用可能。今回は手軽に利用できるこちらを使用した(要Google アカウント)。

利用方法

 「Colaboratory」で動作する「Demucs」は「Google ドライブ」と接続してファイルを読み込む仕組み。そのため、あらかじめ自分の「Google ドライブ」の[マイドライブ]フォルダー内にアップロード用の[demucs]フォルダーを作成し、分離したい音楽ファイルをコピーしておこう。ファイル形式はMP3/WAVE/Ogg/FLACに対応しているようだ。

 準備ができたら「Colaboratory」上の「Hybrid Demucs from Colab」のページをWebブラウザーで開き、スクリプトを上から順に1つずつ実行していく。スクリプトが表示されているエリアの冒頭にある「[ ]」(マウスオーバーすると再生ボタンに変化)をクリックすると、そのエリアのスクリプトが実行可能だ。実行が完了すると「[ ]」の左にチェックマーク(✓)が表示されるので、このマークを確認したら次のスクリプトを実行していく。

赤枠で囲んだ部分をクリックするとスクリプトが実行される

 最初のエリアを実行すると実行の可否を尋ねる警告が表示されるので、[このまま実行]ボタンを押す。次のエリアを実行すると今度は「Google ドライブ」へのアクセス可否を尋ねる警告が表示されるので、[Google ドライブに接続]ボタンを押し、ポップアップしたウィンドウでアカウントを選択してアクセスの内容を確認後、許可しよう。

最初のエリアを実行すると表示される警告では[このまま実行]ボタンを押す
次エリアを実行すると表示される警告では[Google ドライブに接続]ボタンを押す
Google アカウントを選択
アクセスの内容を確認後、一番下までスクロールして[許可]ボタンを押す

 後は順にスクリプトを実行していき5番目のエリア(末尾が「separate()」で終わっているエリア)の実行が完了すると、楽器ごとに分離したファイルが出力される。出力フォルダーは「Google ドライブ」の[マイドライブ]に作成された[demucs_separated]-[mdx_extra]-[<元ファイル名>]フォルダー。出力されるファイルは44100 Hz/320 kbpsのMP3形式で、ファイル名「vocal.mp3」「drums.mp3」「bass.mp3」「other.mp3」となる。

順にスクリプトを実行していく
5番目のエリアが実際の分離処理になっており時間がかかるが、完了すればファイルが出力される

 ちなみに、その下の最後に残ったエリアは、実行すると手動で元ファイルを選択・アップロード可能。ただし、ダウンロード先は「Google ドライブ」となる。

分離されたファイルについて

 今回はスティービー・ワンダーの名曲『Superstition(迷信)』を使用してテストしたが、分離された音源は多少不自然な成分が含まれるものの、はっきりとボーカル、ドラム、ベース、その他に分けられた。うっすらと他の音が聞こえるときもあるが、イコライザー処理やエフェクトで誤魔化せるレベルだ。

 個人で楽しむのであれば、ドラムとベース、その他をミックスして、本物の演奏をバックにしたカラオケを作ることができるだろう。また、過去のミュージシャンの名演奏を単体で取り出して、その秘密を探るといった使い方も可能。

 著作権の問題をクリアすればサンプリングネタとして使えるレベルなので、過去の音源から1つの楽器のみを取り出して新たな音楽が生まれる可能性を感じた。「Colaboratory」を使えばパソコンの知識はそれほど必要ないので、気になる方はぜひ試してみてほしい。