以前の記事では、様々な音楽ジャンルのステムデータ付き楽曲データセット DSD100 を紹介しました。
DSD100 は全100曲とそれなりの楽曲数がありますが、大規模データ分析や深層学習のような処理ではなるべく多くの楽曲データが必要となります。
本記事では、この DSD100 を1つのソースとして利用した、よりデータ数の多い楽曲データセット MUSDB18 を紹介します。
MUSDB18 の概要
MUSDB18 は DSD100 と同じくステムデータ付き楽曲データセットですが、比べると以下のような違いがあります。
- 全150曲
- フォーマット
- AAC @ 256kbps でエンコードされている
- ダウンロード時のデータサイズは 約4.4 GB
- 16 kHz以上はカットされている
- 非圧縮WAV版 MUSDB18-HQ も用意されている (22.7 GB) website/tracklist.csv at master · sigsep/website · GitHub
楽曲リストによると、音楽ジャンルの内訳は以下のようになっています。
- Pop/Rock: 73曲
- Rock: 17曲
- Singer/Songwriter: 15曲
- Heavy Metal: 13曲
- Electronic: 9曲
- Rap: 9曲
- Countryr: 6曲
- Reggae: 4曲
- Jazz: 4曲
ダウンロード・利用条件・ライセンス
データセットは研究データリポジトリZenodoでホストされており、MUSDB18のWebページのデータセット名をクリックするとZenodoに飛びます。
Zenodoのページの権利関係に関する記載の翻訳が以下になります。
MUSDB18は教育目的でのみ提供されており、それらに含まれる素材を著作権者の明示的な許可なしに商業目的で使用することはできません。
100曲はThe 'Mixing Secrets' Free Multitrack Download Libraryから派生したものです。DSD100のデータを使用する際の権利に関する質問は、このオリジナルリソースを参照してください。 46曲はクリエイティブ・コモンズ(BY-NC-SA 4.0)でライセンスされたMedleyDBから引用しています。 2曲は、Native Instruments社のステムパックから提供されたものです。 2 トラックは、カナダのロックバンド The Easton Ellises が heise stems remix competition の一環として提供したもので、Creative Commons (BY-NC-SA 3.0) の下にライセンスされています。
また、楽曲リスト には各楽曲ごとのライセンスがまとめられています。
その他
エラッタに関する情報はMUSDB18のWebページに掲載されています。
データセットパーサは、Python、Docker (MATLAB), Julia 用のものが用意されています。
- GitHub - sigsep/sigsep-mus-db: Python parser and tools for MUSDB18 Music Separation Dataset
- GitHub - sigsep/sigsep-mus-io: Tools to convert sigsep mus dataset from STEMS <-> WAV
- GitHub - davidavdav/Musdb.jl: Julia interface to musdb, a signal separation challenge
Pythonの場合、ステムデータのデコードに stempeg
というモジュールを利用しています。
また、stempegではffmpegを利用しています。
使い方など、詳しくは下記のWebページを参考にしてください。
まとめ
150曲のステムデータ付き楽曲データセット MUSDB18 を紹介しました。
DSD100 に50曲のデータが追加されているため、より多くのデータが必要なアルゴリズム向きです。
また、コーデックがAACでありデコード用のライブラリも準備されているので、ダウンロード・下準備においてDSD100よりも扱いやすいのではないかと思います。
データとしてはDSD100はMUSDB18の部分集合となっていますが、MedleyDB などから集められたデータは DSD100とはライセンスが異なることに注意が必要かと思います。