CoolFace
Datasetpublic

ryangowe/guitar-chord-mix

Guitar Chord Mix A unified dataset of guitar audio clips with per-string MIDI pitch annotations, built from multiple public guitar datasets. Designed for training guitar chord and note recognition models. Sources Dataset Type License Description GuitarSet Real recordings CC-BY-4.0 Multi-instrument solo guitar with note-level JAMS annotations Guitar-Techs Real recordings CC-BY-4.0 Single notes, scales, and chords with per-string MIDI EGFxSet Real… See the full description on the dataset page: https://huggingface.co/datasets/ryangowe/guitar-chord-mix.

sourceHugging Facecc-by-4.0updated 3mo agoView on Hugging Face
0likes1.3kdownloads
Dataset Card

Guitar Chord Mix

A unified dataset of guitar audio clips with per-string MIDI pitch annotations, built from multiple public guitar datasets. Designed for training guitar chord and note recognition models.

Sources

DatasetTypeLicenseDescription
GuitarSetReal recordingsCC-BY-4.0Multi-instrument solo guitar with note-level JAMS annotations
Guitar-TechsReal recordingsCC-BY-4.0Single notes, scales, and chords with per-string MIDI
EGFxSetReal recordingsCC-BY-4.0Single notes through 13 guitar effects
Isolated Guitar ChordsReal recordingsCC-BY-4.024 major/minor chord recordings
SFZ instrumentsSynthesis samplesCC0Guitar sample libraries (emilyguitar, shinyguitar, blackgreen, freepats)
DEMANDNoiseCC-BY-4.018 real-world noise environments for augmentation

Format

Each clip consists of:

  • —WAV: 22.05 kHz, mono, PCM 16-bit
  • —JAMS: 6 note_midi annotations, one per string (low E to high e)

JAMS per-string fields

Each note_midi annotation carries:

FieldLocationTypeDescription
string indexannotation_metadata.data_sourcestring "0"–"5"0 = low E, 5 = high e (matches GuitarSet's convention)
strum_annotatedsandboxbooltrue if time/duration are precise strum timing; false if detected via energy threshold (onset unreliable)

Auxiliary resources

sfz/ and noise/ are not annotated clips and carry no JAMS. They are raw material, kept separate from the labeled set:

  • —SFZ instruments (sfz/) — synthesis source: guitar sample libraries in SFZ format (.sfz definitions plus their WAV samples), grouped by library. Render notes or chords with an SFZ player (e.g. sfizz) to generate synthetic clips; the rendered audio is produced separately and is not shipped here.
  • —DEMAND noise (noise/) — augmentation: one WAV per environment (channel ch01), resampled to 22.05 kHz mono to match the clips. Mix into clips as background noise for robustness.

Directory structure

clips/
  guitarset/          # GuitarSet clips (.wav + .jams)
  guitar-techs/       # Guitar-Techs clips (.wav + .jams)
  egfxset/
    <effect>/         # EGFxSet, sharded per effect (.wav + .jams) — keeps each dir < 10k files
  isolated-chords/    # Isolated chord clips (.wav + .jams)
sfz/                  # SFZ instrument samples
noise/                # DEMAND noise environments (.wav)
clips/manifest.json   # keyed by path relative to clips/, e.g. egfxset/Clean/Middle-Neck_2-9

Splits

SourceTrainValTest
GuitarSet, Guitar-Techs, EGFxSet90%10%-
Isolated Chords-30%70%

Usage

python
from huggingface_hub import snapshot_download

snapshot_download("ryangowe/guitar-chord-mix", repo_type="dataset", local_dir="data/")

Citation

If you use this dataset, please cite the original sources:

  • —GuitarSet: Xi et al., "GuitarSet: A Dataset for Guitar Transcription", ISMIR 2018
  • —Guitar-Techs: Su et al., 2023 (Zenodo 7791968)
  • —EGFxSet: Schmid et al., "EGFxSet", DAFx 2023
  • —DEMAND: Thiemann et al., "The Diverse Environments Multi-channel Acoustic Noise Database", 2013
ryangowe/guitar-chord-mix · CoolFace