# MDB-Drums annotations to gm midi note mdb_drum_map = { 'KD': 35, 'SD': 38, 'SDB': 38, 'SDD': 38, 'SDF': 38, 'SDG': 38, 'SDNS': 38, 'CHH': 42, 'OHH': 46, 'PHH': 44, 'HIT': 50, 'MHT': 48, 'HFT': 43, 'LFT': 41, 'RDC': 51, 'RDB': 53, 'CRC': 49, 'CHC': 52, 'SPC': 55, 'SST': 37, 'TMB': 54, } # ENST Drums annotations to gm midi drum note enst_drum_map = { 'bd': 35, 'cs': 37, 'rs': 38, 'sd': 38, 'sd-': 38, 'lft': 41, 'chh': 42, 'lt': 45, 'ohh': 46, 'lmt': 47, 'mt': 48, 'cr': 49, 'c1': 49, 'cr1': 49, 'cr5': 49, 'rc': 51, 'rc1': 51, 'rc3': 51, 'ch': 52, 'ch1': 52, 'ch5': 52, 'spl': 55, 'spl2': 55, 'cb': 56, 'cr2': 57, 'c': 57, 'c4': 57, 'rc2': 59, 'rc4': 59, 'sticks': 75, #'mtr': -1, #'sweep': -1, #'ltr': -1, } # RBMA annotations to gm midi drum note rbma_drum_map = { '0': 36, # bass drum '1': 38, # snare drum '2': 42, # closed hi-hat '3': 46, # open hi-hat '4': 44, # pedal hi-hat '5': 56, # cowbell '6': 53, # ride bell '7': 41, # low floor tom '9': 43, # high floor tom '10': 45, # low tom '11': 47, # low-mid tom '12': 48, # high-mid tom '13': 50, # high tom '14': 37, # side stick '15': 39, # hand clap '16': 51, # ride cymbal '17': 49, # crash cymbal '18': 55, # splash cymbal '19': 52, # chinese cymbal '20': 70, # shaker, maracas '21': 54, # tambourine '22': 75, # claves, stick click '23': 81, # high bells / triangle } # general midi note number, note name, instrument name (for channel 10 i.e. #9) gm_midi_drum_map = [[35, "B0", "Acoustic Bass Drum"], [36, "C1", "Bass Drum 1"], [37, "C#1", "Side Stick"], [38, "D1", "Acoustic Snare"], [39, "Eb1", "Hand Clap"], [40, "E1", "Electric Snare"], [41, "F1", "Low Floor Tom"], [42, "F#1", "Closed Hi Hat"], [43, "G1", "High Floor Tom"], [44, "Ab1", "Pedal Hi-Hat"], [45, "A1", "Low Tom"], [46, "Bb1", "Open Hi-Hat"], [47, "B1", "Low-Mid Tom"], [48, "C2", "Hi Mid Tom"], [49, "C#2", "Crash Cymbal 1"], [50, "D2", "High Tom"], [51, "Eb2", "Ride Cymbal 1"], [52, "E2", "Chinese Cymbal"], [53, "F2", "Ride Bell"], [54, "F#2", "Tambourine"], [55, "G2", "Splash Cymbal"], [56, "Ab2", "Cowbell"], [57, "A2", "Crash Cymbal 2"], [58, "Bb2", "Vibraslap"], [59, "B2", "Ride Cymbal 2"], [60, "C3", "Hi Bongo"], [61, "C#3", "Low Bongo"], [62, "D3", "Mute Hi Conga"], [63, "Eb3", "Open Hi Conga"], [64, "E3", "Low Conga"], [65, "F3", "High Timbale"], [66, "F#3", "Low Timbale"], [67, "G3", "High Agogo"], [68, "Ab3", "Low Agogo"], [69, "A3", "Cabasa"], [70, "Bb3", "Maracas"], [71, "B3", "Short Whistle"], [72, "C4", "Long Whistle"], [73, "C#4", "Short Guiro"], [74, "D4", "Long Guiro"], [75, "Eb4", "Claves"], [76, "E4", "Hi Wood Block"], [77, "F4", "Low Wood Block"], [78, "F#4", "Mute Cuica"], [79, "G4", "Open Cuica"], [80, "Ab4", "Mute Triangle"], [81, "A4", "Open Triangle"]] gm_midi_drum_notes = [line[0] for line in gm_midi_drum_map] num_gm_midi_drum_notes = len(gm_midi_drum_notes) names_f_map = [line[2] for line in gm_midi_drum_map] # general midi notes to 3-class label system names_3_map = ['KD', 'SD', 'HH'] num_3_drum_notes = len(names_3_map) f_to_3_map = { 35: 0, 36: 0, 38: 1, 40: 1, 42: 2, 44: 2, 46: 2, } # general midi to 8-class label system names_m_map = ['BD', 'SD', 'TT', 'HH', 'CY', 'RD', 'CB', 'CL'] num_m_drum_notes = len(names_m_map) f_to_m_map = {35: 0, # BD 36: 0, # BD #37: -1, # (side stick) 38: 1, # SD #39: -1, # (clap) 40: 1, # SD 41: 2, # TT (lft) 42: 3, # HH 43: 2, # (hft) 44: 3, # pedal hh 45: 2, # (lt) 46: 3, # open hh 47: 2, # (lmt) 48: 2, # (hmt) 49: 4, # CY 50: 2, # (ht) 51: 5, # RD 52: 4, # chinese 53: 6, # ride bell / bells / etc #54: -1, # tamborine 55: 4, # splash 56: 6, # cowbell 57: 4, # crash2 #58: -1, # vibraslap 59: 5, # ride 2 #60: -1, # bongo hi #61: -1, # bongo lo #62: -1, # conga #63: -1, # conga #64: -1, # conga #65: -1, # timbales #66: -1, # timbales #67: -1, # agogo #68: -1, # agogo #69: -1, #70: -1, #71: -1, #72: -1, #73: -1, #74: -1, 75: 7, # claves #76: -1, # hi wood block #77: -1, # low wood block #78: -1, #79: -1, #80: -1, # mute triangle #81: -1 # open triangle } # general midi to 18-class label system names_l_map = ['BD', 'SD', 'SS', 'CLP', 'LT', 'MT', 'HT', 'CHH', 'PHH', 'OHH', 'TB', 'RD', 'RB', 'CRC', 'SPC', 'CHC', 'CB', 'CL'] num_l_drum_notes = len(names_l_map) f_to_l_map = {35: 0, # BD 36: 0, # BD 38: 1, # SD 40: 1, # SD 37: 2, # side stick 39: 3, # clap 41: 4, # TT (lft) 43: 4, # (hft) 45: 5, # (lt) 47: 5, # (lmt) 48: 6, # (hmt) 50: 6, # (ht) 42: 7, # HH 44: 8, # pedal hh 46: 9, # open hh 54: 10, # tamborine 51: 11, # RD 59: 11, # ride 2 53: 12, # ride bell 49: 13, # crash 57: 13, # crash2 55: 14, # splash 52: 15, # chinese 56: 16, # cowbell #58: -1, # vibraslap #60: -1, # bongo hi #61: -1, # bongo lo #62: -1, # conga #63: -1, # conga #64: -1, # conga #65: -1, # timbales #66: -1, # timbales #67: -1, # agogo #68: -1, # agogo #69: -1, #70: -1, #71: -1, #72: -1, #73: -1, #74: -1, 75: 17, # click #76: -1, # hi wood block #77: -1, # low wood block #78: -1, #79: -1, #80: -1, # mute triangle #81: -1 # open triangle }