JannikAhlers commited on
Commit
20890fe
·
1 Parent(s): 4b07f1f

improve midi simplification

Browse files
This view is limited to 50 files because it contains too many changes.   See raw diff
Files changed (50) hide show
  1. simplify_midi_pretty.py +58 -0
  2. test_data/drummer1/eval_session/10_soul-groove10_102_beat_4-4.simplified.mid +0 -0
  3. test_data/drummer1/eval_session/1_funk-groove1_138_beat_4-4.simplified.mid +0 -0
  4. test_data/drummer1/eval_session/2_funk-groove2_105_beat_4-4.simplified.mid +0 -0
  5. test_data/drummer1/eval_session/3_soul-groove3_86_beat_4-4.simplified.mid +0 -0
  6. test_data/drummer1/eval_session/4_soul-groove4_80_beat_4-4.simplified.mid +0 -0
  7. test_data/drummer1/eval_session/5_funk-groove5_84_beat_4-4.simplified.mid +0 -0
  8. test_data/drummer1/eval_session/6_hiphop-groove6_87_beat_4-4.simplified.mid +0 -0
  9. test_data/drummer1/eval_session/7_pop-groove7_138_beat_4-4.simplified.mid +0 -0
  10. test_data/drummer1/eval_session/8_rock-groove8_65_beat_4-4.simplified.mid +0 -0
  11. test_data/drummer1/eval_session/9_soul-groove9_105_beat_4-4.simplified.mid +0 -0
  12. test_data/drummer1/session1/100_neworleans-secondline_94_beat_4-4.simplified.mid +0 -0
  13. test_data/drummer1/session1/101_dance-disco_120_beat_4-4.simplified.mid +0 -0
  14. test_data/drummer1/session1/102_funk_95_beat_4-4.simplified.mid +0 -0
  15. test_data/drummer1/session1/103_funk_95_fill_4-4.simplified.mid +0 -0
  16. test_data/drummer1/session1/104_funk_95_fill_4-4.simplified.mid +0 -0
  17. test_data/drummer1/session1/105_funk_95_fill_4-4.simplified.mid +0 -0
  18. test_data/drummer1/session1/106_funk_95_fill_4-4.simplified.mid +0 -0
  19. test_data/drummer1/session1/107_funk_95_fill_4-4.simplified.mid +0 -0
  20. test_data/drummer1/session1/108_funk_95_fill_4-4.simplified.mid +0 -0
  21. test_data/drummer1/session1/109_funk_95_fill_4-4.simplified.mid +0 -0
  22. test_data/drummer1/session1/10_jazz-funk_116_fill_4-4.simplified.mid +0 -0
  23. test_data/drummer1/session1/110_funk_95_fill_4-4.simplified.mid +0 -0
  24. test_data/drummer1/session1/111_funk_95_fill_4-4.simplified.mid +0 -0
  25. test_data/drummer1/session1/112_funk_95_fill_4-4.simplified.mid +0 -0
  26. test_data/drummer1/session1/113_funk_95_fill_4-4.simplified.mid +0 -0
  27. test_data/drummer1/session1/114_funk_95_fill_4-4.simplified.mid +0 -0
  28. test_data/drummer1/session1/115_funk_95_fill_4-4.simplified.mid +0 -0
  29. test_data/drummer1/session1/116_funk_95_fill_4-4.simplified.mid +0 -0
  30. test_data/drummer1/session1/117_funk_95_fill_4-4.simplified.mid +0 -0
  31. test_data/drummer1/session1/118_funk_95_fill_4-4.simplified.mid +0 -0
  32. test_data/drummer1/session1/119_funk_95_fill_4-4.simplified.mid +0 -0
  33. test_data/drummer1/session1/11_jazz-funk_116_fill_4-4.simplified.mid +0 -0
  34. test_data/drummer1/session1/120_funk_95_fill_4-4.simplified.mid +0 -0
  35. test_data/drummer1/session1/121_funk_95_fill_4-4.simplified.mid +0 -0
  36. test_data/drummer1/session1/122_funk_95_fill_4-4.simplified.mid +0 -0
  37. test_data/drummer1/session1/123_funk_95_fill_4-4.simplified.mid +0 -0
  38. test_data/drummer1/session1/124_funk_95_fill_4-4.simplified.mid +0 -0
  39. test_data/drummer1/session1/125_funk_95_fill_4-4.simplified.mid +0 -0
  40. test_data/drummer1/session1/126_funk-fast_125_beat_4-4.simplified.mid +0 -0
  41. test_data/drummer1/session1/127_funk-fast_125_fill_4-4.simplified.mid +0 -0
  42. test_data/drummer1/session1/128_funk-fast_125_fill_4-4.simplified.mid +0 -0
  43. test_data/drummer1/session1/129_funk-fast_125_fill_4-4.simplified.mid +0 -0
  44. test_data/drummer1/session1/12_jazz-funk_116_fill_4-4.simplified.mid +0 -0
  45. test_data/drummer1/session1/130_funk-fast_125_fill_4-4.simplified.mid +0 -0
  46. test_data/drummer1/session1/131_funk-fast_125_fill_4-4.simplified.mid +0 -0
  47. test_data/drummer1/session1/132_funk-fast_125_fill_4-4.simplified.mid +0 -0
  48. test_data/drummer1/session1/133_funk-fast_125_fill_4-4.simplified.mid +0 -0
  49. test_data/drummer1/session1/134_funk-fast_125_fill_4-4.simplified.mid +0 -0
  50. test_data/drummer1/session1/135_funk-fast_125_fill_4-4.simplified.mid +0 -0
simplify_midi_pretty.py ADDED
@@ -0,0 +1,58 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ import os
2
+ import csv
3
+ # import mido
4
+ import pretty_midi
5
+ from pathlib import Path
6
+
7
+ CSV_FILE = "test_data/info.csv"
8
+ CSV_FILE_OUT = "test_data/info_simplified.csv"
9
+ base_folder = Path("test_data")
10
+
11
+ filter_values = (
12
+ 35, # Acoustic Bass Drum
13
+ 36, # Bass Drum 1
14
+ 37, # Side Stick
15
+ 38, # Acoustic Snare
16
+ 39, # Hand Clap
17
+ 40, # Electric Snare
18
+ )
19
+
20
+ first_midi = None
21
+ outfile = []
22
+ with open(CSV_FILE) as fd:
23
+ reader = csv.DictReader(fd)
24
+ for i, row in enumerate(reader):
25
+ filename = row["midi_filename"]
26
+ print(f"{i} processing file {filename}...")
27
+ mid = pretty_midi.PrettyMIDI(str(base_folder/filename))
28
+ out_mid = pretty_midi.PrettyMIDI(resolution=32)
29
+ out_track = pretty_midi.Instrument(program=0, is_drum=True)
30
+ note_length = mid.estimate_tempo() / (60*32)
31
+
32
+ for instr in mid.instruments:
33
+ if not instr.is_drum:
34
+ continue
35
+ for note in instr.notes:
36
+ if note.pitch in filter_values:
37
+ out_track.notes.append(
38
+ pretty_midi.Note(
39
+ velocity=100,
40
+ pitch=note.pitch,
41
+ start=note.start,
42
+ end=note.start + note_length,
43
+ )
44
+ )
45
+
46
+ new_filename = filename.split(".")
47
+ new_filename.insert(-1, "simplified")
48
+ new_filename = ".".join(new_filename)
49
+ out_mid.instruments.append(out_track)
50
+ out_mid.write(str(base_folder/new_filename))
51
+ row["simplified_midi_filename"] = new_filename
52
+ outfile.append(row)
53
+ with open(CSV_FILE_OUT, "w+") as fd:
54
+ fieldnames = outfile[0].keys()
55
+
56
+ writer = csv.DictWriter(fd, fieldnames=fieldnames)
57
+ writer.writeheader()
58
+ writer.writerows(outfile)
test_data/drummer1/eval_session/10_soul-groove10_102_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/10_soul-groove10_102_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/10_soul-groove10_102_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/1_funk-groove1_138_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/1_funk-groove1_138_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/1_funk-groove1_138_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/2_funk-groove2_105_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/2_funk-groove2_105_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/2_funk-groove2_105_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/3_soul-groove3_86_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/3_soul-groove3_86_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/3_soul-groove3_86_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/4_soul-groove4_80_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/4_soul-groove4_80_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/4_soul-groove4_80_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/5_funk-groove5_84_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/5_funk-groove5_84_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/5_funk-groove5_84_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/6_hiphop-groove6_87_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/6_hiphop-groove6_87_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/6_hiphop-groove6_87_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/7_pop-groove7_138_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/7_pop-groove7_138_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/7_pop-groove7_138_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/8_rock-groove8_65_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/8_rock-groove8_65_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/8_rock-groove8_65_beat_4-4.simplified.mid differ
 
test_data/drummer1/eval_session/9_soul-groove9_105_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/eval_session/9_soul-groove9_105_beat_4-4.simplified.mid and b/test_data/drummer1/eval_session/9_soul-groove9_105_beat_4-4.simplified.mid differ
 
test_data/drummer1/session1/100_neworleans-secondline_94_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/100_neworleans-secondline_94_beat_4-4.simplified.mid and b/test_data/drummer1/session1/100_neworleans-secondline_94_beat_4-4.simplified.mid differ
 
test_data/drummer1/session1/101_dance-disco_120_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/101_dance-disco_120_beat_4-4.simplified.mid and b/test_data/drummer1/session1/101_dance-disco_120_beat_4-4.simplified.mid differ
 
test_data/drummer1/session1/102_funk_95_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/102_funk_95_beat_4-4.simplified.mid and b/test_data/drummer1/session1/102_funk_95_beat_4-4.simplified.mid differ
 
test_data/drummer1/session1/103_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/103_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/103_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/104_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/104_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/104_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/105_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/105_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/105_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/106_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/106_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/106_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/107_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/107_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/107_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/108_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/108_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/108_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/109_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/109_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/109_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/10_jazz-funk_116_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/10_jazz-funk_116_fill_4-4.simplified.mid and b/test_data/drummer1/session1/10_jazz-funk_116_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/110_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/110_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/110_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/111_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/111_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/111_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/112_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/112_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/112_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/113_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/113_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/113_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/114_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/114_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/114_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/115_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/115_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/115_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/116_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/116_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/116_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/117_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/117_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/117_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/118_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/118_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/118_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/119_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/119_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/119_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/11_jazz-funk_116_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/11_jazz-funk_116_fill_4-4.simplified.mid and b/test_data/drummer1/session1/11_jazz-funk_116_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/120_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/120_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/120_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/121_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/121_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/121_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/122_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/122_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/122_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/123_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/123_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/123_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/124_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/124_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/124_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/125_funk_95_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/125_funk_95_fill_4-4.simplified.mid and b/test_data/drummer1/session1/125_funk_95_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/126_funk-fast_125_beat_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/126_funk-fast_125_beat_4-4.simplified.mid and b/test_data/drummer1/session1/126_funk-fast_125_beat_4-4.simplified.mid differ
 
test_data/drummer1/session1/127_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/127_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/127_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/128_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/128_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/128_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/129_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/129_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/129_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/12_jazz-funk_116_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/12_jazz-funk_116_fill_4-4.simplified.mid and b/test_data/drummer1/session1/12_jazz-funk_116_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/130_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/130_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/130_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/131_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/131_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/131_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/132_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/132_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/132_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/133_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/133_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/133_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/134_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/134_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/134_funk-fast_125_fill_4-4.simplified.mid differ
 
test_data/drummer1/session1/135_funk-fast_125_fill_4-4.simplified.mid CHANGED
Binary files a/test_data/drummer1/session1/135_funk-fast_125_fill_4-4.simplified.mid and b/test_data/drummer1/session1/135_funk-fast_125_fill_4-4.simplified.mid differ