Unofficial PyTorch dataset for Slakh
MIT License
Unofficial PyTorch dataset for Slakh.
This project is a work in progress, expect breaking changes!
original
, splits_v2
, redux
)redux_no_pitch_bend
, ...) (Should also be filed upstream) (implemented by skip_pitch_bend_tracks
)mix.flac
(all the instruments comined)train
, validation
or test
groupeletric-bass
, piano
, guitar
, ...)max_files_in_memory
)Download the Slakh dataset (see the official website). It's about 100GB compressed so expect using some time on this point.
Install the Python package with pip:
pip install slakh-dataset
Convert the audio to 16 kHz (see https://github.com/ethman/slakh-utils)
You can use the dataset (AMT usecase):
from torch.utils.data import DataLoader
from slakh_dataset import SlakhAmtDataset
dataset = SlakhAmtDataset(
path='path/to/slakh-16khz-folder'
split='redux', # 'splits_v2','redux-no-pitch-bend'
audio='mix.flac', # 'individual'
label_instruments='electric-bass', # or `label_midi_programs`
# label_midi_programs=[33, 34, 35, 36, 37],
groups=['train'],
skip_pitch_bend_tracks=True,
sequence_length=327680,
max_files_in_memory=200,
)
batch_size = 8
loader = DataLoader(dataset, batch_size, shuffle=True, drop_last=True)
# train model on dataset...
This code is based on the dataset in Onset and Frames by Jong Wook Kim which is MIT Lisenced.
Slakh http://www.slakh.com/