asigalov61 commited on
Commit
e22dc20
1 Parent(s): d8298b5

Upload TMIDIX.py

Browse files
Files changed (1) hide show
  1. TMIDIX.py +45 -39
TMIDIX.py CHANGED
@@ -5168,6 +5168,7 @@ def advanced_check_and_fix_chords_in_chordified_score(chordified_score,
5168
  use_filtered_chords=False,
5169
  use_full_chords=True,
5170
  remove_duplicate_pitches=True,
 
5171
  skip_drums=False
5172
  ):
5173
  fixed_chordified_score = []
@@ -5262,32 +5263,34 @@ def advanced_check_and_fix_chords_in_chordified_score(chordified_score,
5262
  new_chord.add(tuple(e))
5263
  pipa.append([e[pitches_index], e[patches_index]])
5264
 
5265
- bad_chord = set()
5266
 
5267
- for e in chord:
5268
- if e[channels_index] != 9:
5269
-
5270
- if e[pitches_index] % 12 not in tones_chord:
5271
- bad_chord.add(tuple(e))
5272
-
5273
- elif (e[pitches_index]+1) % 12 not in tones_chord:
5274
- bad_chord.add(tuple(e))
5275
-
5276
- elif (e[pitches_index]-1) % 12 not in tones_chord:
5277
- bad_chord.add(tuple(e))
5278
 
5279
- for bc in bad_chord:
 
 
 
 
 
 
 
 
 
5280
 
5281
- bc = list(bc)
5282
 
5283
- tone = find_closest_tone(tones_chord, bc[pitches_index] % 12)
5284
 
5285
- new_pitch = ((bc[pitches_index] // 12) * 12) + tone
5286
 
5287
- if [new_pitch, bc[patches_index]] not in pipa:
5288
- bc[pitches_index] = new_pitch
5289
- new_chord.add(tuple(bc))
5290
- pipa.append([[new_pitch], bc[patches_index]])
5291
 
5292
  if not skip_drums:
5293
  for e in c:
@@ -7457,7 +7460,8 @@ def harmonize_enhanced_melody_score_notes_to_ms_SONG(escore_notes,
7457
  def check_and_fix_pitches_chord(pitches_chord,
7458
  remove_duplicate_pitches=True,
7459
  use_filtered_chords=False,
7460
- use_full_chords=True
 
7461
  ):
7462
 
7463
  if remove_duplicate_pitches:
@@ -7524,30 +7528,32 @@ def check_and_fix_pitches_chord(pitches_chord,
7524
  new_chord.add(tuple([e]))
7525
  pipa.append(e)
7526
 
7527
- bad_chord = set()
7528
 
7529
- for e in chord:
7530
-
7531
- if e % 12 not in tones_chord:
7532
- bad_chord.add(tuple([e]))
7533
-
7534
- elif (e+1) % 12 not in tones_chord:
7535
- bad_chord.add(tuple([e]))
7536
 
7537
- elif (e-1) % 12 not in tones_chord:
7538
- bad_chord.add(tuple([e]))
7539
-
7540
- for bc in bad_chord:
 
 
 
 
 
 
7541
 
7542
- bc = list(bc)
7543
 
7544
- tone = find_closest_tone(tones_chord, bc[0] % 12)
7545
 
7546
- new_pitch = ((bc[0] // 12) * 12) + tone
7547
 
7548
- if new_pitch not in pipa:
7549
- new_chord.add(tuple([new_pitch]))
7550
- pipa.append(new_pitch)
7551
 
7552
  new_pitches_chord = [e[0] for e in new_chord]
7553
 
 
5168
  use_filtered_chords=False,
5169
  use_full_chords=True,
5170
  remove_duplicate_pitches=True,
5171
+ fix_bad_pitches=False,
5172
  skip_drums=False
5173
  ):
5174
  fixed_chordified_score = []
 
5263
  new_chord.add(tuple(e))
5264
  pipa.append([e[pitches_index], e[patches_index]])
5265
 
5266
+ if fix_bad_pitches:
5267
 
5268
+ bad_chord = set()
5269
+
5270
+ for e in chord:
5271
+ if e[channels_index] != 9:
 
 
 
 
 
 
 
5272
 
5273
+ if e[pitches_index] % 12 not in tones_chord:
5274
+ bad_chord.add(tuple(e))
5275
+
5276
+ elif (e[pitches_index]+1) % 12 not in tones_chord:
5277
+ bad_chord.add(tuple(e))
5278
+
5279
+ elif (e[pitches_index]-1) % 12 not in tones_chord:
5280
+ bad_chord.add(tuple(e))
5281
+
5282
+ for bc in bad_chord:
5283
 
5284
+ bc = list(bc)
5285
 
5286
+ tone = find_closest_tone(tones_chord, bc[pitches_index] % 12)
5287
 
5288
+ new_pitch = ((bc[pitches_index] // 12) * 12) + tone
5289
 
5290
+ if [new_pitch, bc[patches_index]] not in pipa:
5291
+ bc[pitches_index] = new_pitch
5292
+ new_chord.add(tuple(bc))
5293
+ pipa.append([[new_pitch], bc[patches_index]])
5294
 
5295
  if not skip_drums:
5296
  for e in c:
 
7460
  def check_and_fix_pitches_chord(pitches_chord,
7461
  remove_duplicate_pitches=True,
7462
  use_filtered_chords=False,
7463
+ use_full_chords=True,
7464
+ fix_bad_pitches=False,
7465
  ):
7466
 
7467
  if remove_duplicate_pitches:
 
7528
  new_chord.add(tuple([e]))
7529
  pipa.append(e)
7530
 
7531
+ if fix_bad_pitches:
7532
 
7533
+ bad_chord = set()
7534
+
7535
+ for e in chord:
 
 
 
 
7536
 
7537
+ if e % 12 not in tones_chord:
7538
+ bad_chord.add(tuple([e]))
7539
+
7540
+ elif (e+1) % 12 not in tones_chord:
7541
+ bad_chord.add(tuple([e]))
7542
+
7543
+ elif (e-1) % 12 not in tones_chord:
7544
+ bad_chord.add(tuple([e]))
7545
+
7546
+ for bc in bad_chord:
7547
 
7548
+ bc = list(bc)
7549
 
7550
+ tone = find_closest_tone(tones_chord, bc[0] % 12)
7551
 
7552
+ new_pitch = ((bc[0] // 12) * 12) + tone
7553
 
7554
+ if new_pitch not in pipa:
7555
+ new_chord.add(tuple([new_pitch]))
7556
+ pipa.append(new_pitch)
7557
 
7558
  new_pitches_chord = [e[0] for e in new_chord]
7559