2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 5 years have passed since last update.

「Spleeter」で耳コピが楽になるかもしれない

Last updated at Posted at 2019-11-08

はじめに

Spleeterっていうツールが登場しました(と知人に教えてもらいました)。

基本的には機械学習データを使用して、楽曲をパート分けするものなんですが、
自分はアニソンとかゲームの曲を弾いたりするので、やはり見出す用途としては「耳コピ」です。

これが楽になっちゃう(かもしれない)! ということで、早速飛びついてみた次第です。

以下、簡単な使い方と、使ってみた結果、使ってみた感想など。

導入

超便利なやつ

ちょっと前に出たばかりのspleeterですが、早速便利なツールを作成された方がいらしゃいました。
環境ゆえに少し処理時間はかかりますが、導入の手間がないので便利です!

どうしても自分でやりたい

自分でやりたい欲ばりさんは[この記事] (https://gigazine.net/news/20191107-spleeter/)どおりにやれば大丈夫ですが、ざっと手順を書くと

  1. Condaのインストール(記事ではMiniconda3を選択、以下Miniconda3を前提)
  2. spleeterプロジェクトのclone
  3. 設定
  4. 起動
  5. 実行!

です。

念のためいくつか引っかかりそうなとこなどを

git入れとこうね

記事ではgit cloneをAnaconda Prompt上で実行してますが、gitのパスが環境変数に登録されていないと無効なコマンド扱いされます。
仮にgitをインストール済みでも、git bash onlyでインストールしてたりすると登録されてないかも。
環境変数に C:\Program Files\Git\cmd みたいな感じで追加しましょう。

ただこの部分はspleeterのプロジェクトが持ってこれてればいいので、

  • git bashでgit cloneする(spleeterを実行する時に、cloneしたディレクトリを指定すればいい)
  • githubからzipでダウンロードして展開する

のいずれかでも問題ないと思います。

WARNING:spleeter:ffprobe error (see stderr output for detail)がでる

実行した時にこのエラーが出ることがあります。

stderr 見ろってことなので 2> error.log したけど特に詳細はでず・・・。
issueによると実は詳細は出ない(!)らしいので、
ffprobe xxx.mp3を行うも、普通に動作するし・・・。

ということでよく分からないながらも

  • ffmpegの再インストール
  • 環境変数へパス通す C:\Program Files (x86)\ffmpeg\bin みたいな
  • 再起動

あたりを行うことで動作するようになりました。

ファイルサイズ気をつけて

二台のPCで実行してみてたんですが、片方は3分強のmp3を処理したところ見事にフリーズしました。
もう一方では特に問題なく動きましたが、どっちかというとこっちPCの方が性能が低く、フリーズの理由も不明なので
ファイルを処理する時はフリーズしても大丈夫なようにしておいた方が良いかもしれません。

結果

分離したといっても、それが本当に分離できているのかが判断できなければ意味がありません。
というわけで、それぞれのパートを把握してる自作曲で試します。
(ボカロなので苦手な方はご注意を)

A B
[原曲] (https://tawaship.github.io/spleeter_test/d/origin.mp3) [原曲] (https://tawaship.github.io/spleeter_test/w/origin.mp3)
[ボーカル] (https://tawaship.github.io/spleeter_test/d/vocals.mp3) [ボーカル] (https://tawaship.github.io/spleeter_test/w/vocals.mp3)
[ドラム] (https://tawaship.github.io/spleeter_test/d/drums.mp3) [ドラム] (https://tawaship.github.io/spleeter_test/w/drums.mp3)
[ベース] (https://tawaship.github.io/spleeter_test/d/bass.mp3) [ベース] (https://tawaship.github.io/spleeter_test/w/bass.mp3)
[ピアノ] (https://tawaship.github.io/spleeter_test/d/piano.mp3) [ピアノ] (https://tawaship.github.io/spleeter_test/w/piano.mp3)
[other] (https://tawaship.github.io/spleeter_test/d/other.mp3) [other] (https://tawaship.github.io/spleeter_test/w/other.mp3)

気になる分離精度は・・・

ボーカル

ボカロってこともあるのか、otherと分け合ってしまっているイメージ
40点

ドラム

割とちゃんと分離できてるが、シンバル系がotherに持っていかれてるのが残念
70点

ベース

アタック音に該当するところが恐らくotherに持っていかれて音がもこもこしているものの、音程は問題ない
90点

ピアノ

ピアノが単独に近い状態であればきっちりここに入るが、他の音が混ざってくるとotherに持っていかれる
40点

その他

殆どの上モノが割と綺麗に出てるが、上4パート以外が全部まとまるので耳コピには使いづらいかも
50点

といった感じでした。

ここにあるテスト結果を聞くともっと綺麗に分離できているみたいなので、楽器構成やマスタリングの質などにも大きく左右されそうですね。

感想

思ったよりもドラムとベースの分離がしっかりできてたので、これらのパートであれば十分使えるのではないかと思います。
特にベースはバスドラとの聞き分けがしづらい事がそれなりにあるので、この辺が分離できてることで精度が上がりそうです。

otherについても、ドラムとベースがいなくなっている分、判別はしやすくなってるんじゃないかなという印象でした。

ボーカルとピアノは・・・これからに期待。

耳コピしたことがないという人には割とおススメできる使い方かもしれません。

終わりに

ラジカセ(死語)でカセットテープ(死語)を流しつつ
巻戻し(古語)を繰り返して耳コピしていた頃からは考えられないくらいに時代は進化してますね。

曲を渡すと全パート完全に綺麗に分離して、かつ譜面が生成された上に最適な演奏になるようなTAB譜ができる
みたいな時代がくるのもそう遠い日ではないのかも?

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?