/MID-FiLD_code

[AAAI'24] Official dataset & demo code for MID-FiLD: MIDI Dataset for Fine-Level Dynamics

MIT LicenseMIT

MID-FiLD_code

Dataset & demo code for paper: 'MID-FiLD: MIDI Dataset for Fine-Level Dynamics' (AAAI 2024)

Extraction

To use MID-FiLD, first clone this repository and run

unzip -q ./MiD-FiLD_dataset

to extract the MID-FiLD_dataset.zip file into MID-FiLD_dataset/ directory in the cloned repository.

After extraction, the overall tree will be like this:

.
└── MID-FiLD_code/
    ├── assets/
    │   ├── instrument.png
    │   ├── mood.png
    │   └── track_role.png
    ├── MiD-FiLD_dataset/
    │   ├── train/
    │   │   ├── MID_FiLD_0001.mid
    │   │   ├── MID_FiLD_0002.mid
    │   │   └── ...
    │   ├── test/
    │   │   ├── MID_FiLD_0031.mid
    │   │   ├── MID_FiLD_0034.mid
    │   │   └── ...
    │   └── MID-FiLD_metadata.csv
    ├── LICENSE
    └── README.md

Metadata

  1. Each sample in MID-FiLD consists of 5 fields of metadata specified in the paper:
  • instrument
  • track_role
  • mood
  • min_cc
  • max_cc
  1. The metadatas can be accessed through the MID-FiLD_metadata.csv file in the extracted folder. Ex):
import pandas as pd
df = pd.DataFrame(".MID-FiLD_dataset/MID-FiLD_metadata.csv", sep=",", index="False")
  1. Each column of the dataframe contains the values for each metadata field, along with 2 more auxiliary columns:
  • id: ID of the sample,

  • split: tagged with 'train(3990 samples)' or 'test(432 samples)'.

    Samples for each split category are placed in the path ./MID-FiLD_dataset/train/* or ./MID-FiLD_dataset/test/*.

  1. Below shows each unique class in columns 'instrument', 'track_role', and 'mood'.
Values in instrument: ['bamboo_flute', 'bassoon', 'brass_ensemble', 'clarinet', 'fiddle', 'flute', 'horn', 'oboe', 'sax', 'string_cello', 'string_double_bass', 'string_viola', 'string_violin', 'trombone', 'trumpet', 'tuba', 'whistle', 'woodwind_ensemble']

Values in track_role: ['accompaniment', 'bass', 'main_melody', 'pad', 'riff', 'sub_melody']

Values in mood: ['bouncy', 'calm', 'dreamy', 'funny', 'groovy', 'happy', 'hopeful', 'inspiring', 'magical', 'mysterious', 'peaceful', 'relaxing', 'romantic', 'sad', 'scary', 'sexy', 'tense', 'tragicomic', 'uplifting']
  1. The ./assets directory contains the histogram of each classes in columns 'instrument', 'track_role', and 'mood'.