asigalov61
commited on
Upload TMIDIX.py
Browse files
TMIDIX.py
CHANGED
@@ -6897,25 +6897,40 @@ def binary_matrix_to_original_escore_notes(binary_matrix,
|
|
6897 |
|
6898 |
def escore_notes_averages(escore_notes,
|
6899 |
times_index=1,
|
6900 |
-
durs_index=2,
|
|
|
6901 |
ptcs_index=4,
|
6902 |
vels_index=5,
|
|
|
6903 |
score_is_delta=False,
|
6904 |
return_ptcs_and_vels=False
|
6905 |
):
|
6906 |
|
6907 |
if score_is_delta:
|
6908 |
-
|
6909 |
-
|
|
|
|
|
|
|
6910 |
else:
|
6911 |
descore_notes = delta_score_notes(escore_notes)
|
6912 |
-
|
6913 |
-
|
6914 |
-
|
|
|
|
|
|
|
|
|
|
|
|
|
6915 |
|
6916 |
if return_ptcs_and_vels:
|
6917 |
-
|
6918 |
-
|
|
|
|
|
|
|
|
|
6919 |
|
6920 |
return [sum(times) / len(times), sum(durs) / len(durs), sum(ptcs) / len(ptcs), sum(vels) / len(vels)]
|
6921 |
|
|
|
6897 |
|
6898 |
def escore_notes_averages(escore_notes,
|
6899 |
times_index=1,
|
6900 |
+
durs_index=2,
|
6901 |
+
chans_index=3,
|
6902 |
ptcs_index=4,
|
6903 |
vels_index=5,
|
6904 |
+
average_drums=False,
|
6905 |
score_is_delta=False,
|
6906 |
return_ptcs_and_vels=False
|
6907 |
):
|
6908 |
|
6909 |
if score_is_delta:
|
6910 |
+
if average_drums:
|
6911 |
+
times = [e[times_index] for e in escore_notes if e[times_index] != 0]
|
6912 |
+
else:
|
6913 |
+
times = [e[times_index] for e in escore_notes if e[times_index] != 0 and e[chans_index] != 9]
|
6914 |
+
|
6915 |
else:
|
6916 |
descore_notes = delta_score_notes(escore_notes)
|
6917 |
+
if average_drums:
|
6918 |
+
times = [e[times_index] for e in descore_notes if e[times_index] != 0]
|
6919 |
+
else:
|
6920 |
+
times = [e[times_index] for e in descore_notes if e[times_index] != 0 and e[chans_index] != 9]
|
6921 |
+
|
6922 |
+
if average_drums:
|
6923 |
+
durs = [e[durs_index] for e in escore_notes]
|
6924 |
+
else:
|
6925 |
+
durs = [e[durs_index] for e in escore_notes if e[chans_index] != 9]
|
6926 |
|
6927 |
if return_ptcs_and_vels:
|
6928 |
+
if average_drums:
|
6929 |
+
ptcs = [e[ptcs_index] for e in escore_notes]
|
6930 |
+
vels = [e[vels_index] for e in escore_notes]
|
6931 |
+
else:
|
6932 |
+
ptcs = [e[ptcs_index] for e in escore_notes if e[chans_index] != 9]
|
6933 |
+
vels = [e[vels_index] for e in escore_notes if e[chans_index] != 9]
|
6934 |
|
6935 |
return [sum(times) / len(times), sum(durs) / len(durs), sum(ptcs) / len(ptcs), sum(vels) / len(vels)]
|
6936 |
|