🐡
MusicCapsデータセットをダウンロードする方法
概要
MusicCapsはGoogleが公開している楽曲とキャプションをペアにしたデータセットです。5500程度の楽曲に説明文とタグが付いたデータセットとなっています。
こちらのデータセットの特徴は以下の2つです
- 商用利用可能なライセンスである(CC BY-SA 4.0)
- 楽曲と説明文がペアになっている
こちらのデータセットはGoogleのテキストから楽曲を生成する論文 MusicLM: Generating Music From Text と同時に公開されました。
今回はこちらのデータセットの音声をダウンロードしてみます。
ダウンロード用のソースコード
データセットをダウンロードするためのソースコードはKaggleのデータセットのページのCodeタブで見つかります。
今回はこちらのmusiccaps-explorerを使ってダウンロードします。
MusicCapsはAudioSetと同じくYoutube上のファイルを参照しています。musiccaps-explorerではyt-dlpを使ってYoutubeの動画から音声をダウンロードします。
ダウンロード時の注意
musiccaps-explorer は以下の設定でダウンロードするファイル数、同時ダウンロード数を設定できます。ここで注意したいのがYoutube側の制限です。大量にファイルをダウンロードすると制限にひっかかる可能性があります。一度ひっかかると音声ファイルがダウンロードできなくなります。
大量にダウンロードする方はこちらのcoresを1にして、さらにソースコードのダウンロードしているところの後にtime.sleep(5)などを入れて、ほどほどに間隔を空けるようにしてください。
samples_to_load = 32 # How many samples to load
cores = 4 # How many processes to use for the loading
sampling_rate = 44100 # Sampling rate for the audio, keep in 44100
writer_batch_size = 1000 # How many examples to keep in memory per worker. Reduce if OOM.
data_dir = "./music_data" # Where to save the data
本当にYoutube側の制限?
yt-dlpのgithubのissueで議論されています。この制限に引かかっている人がかなりいるようです。私も一度大量にダウンロードした後で音声がダウンロードできなくなりました。
Discussion