asigalov61 commited on
Commit
497670e
1 Parent(s): cc38963

Update app.py

Browse files
Files changed (1) hide show
  1. app.py +8 -42
app.py CHANGED
@@ -24,46 +24,6 @@ in_space = os.getenv("SYSTEM") == "spaces"
24
 
25
  #==========================================================================================================
26
 
27
- def run(midi, progress=gr.Progress()):
28
-
29
- mid_seq = MIDI.midi2score(midi)
30
-
31
- for m in progress.tqdm(meta_data):
32
- mid_seq = m[1][17:-1]
33
- mid_seq_ticks = m[1][16][1]
34
- mdata = m[1][:16]
35
- break
36
-
37
- x = []
38
- y = []
39
- c = []
40
-
41
- colors = ['red', 'yellow', 'green', 'cyan',
42
- 'blue', 'pink', 'orange', 'purple',
43
- 'gray', 'white', 'gold', 'silver',
44
- 'lightgreen', 'indigo', 'maroon', 'turquoise']
45
-
46
- for s in [m for m in mid_seq if m[0] == 'note']:
47
- x.append(s[1])
48
- y.append(s[4])
49
- c.append(colors[s[3]])
50
-
51
- plt.close()
52
- plt.figure(figsize=(14,5))
53
- ax=plt.axes(title='MIDI Search Plot')
54
- ax.set_facecolor('black')
55
-
56
- plt.scatter(x,y, c=c)
57
- plt.xlabel("Time")
58
- plt.ylabel("Pitch")
59
-
60
- with open(f"output.mid", 'wb') as f:
61
- f.write(MIDI.score2midi([mid_seq_ticks, mid_seq]))
62
- audio = synthesis(MIDI.score2opus([mid_seq_ticks, mid_seq]), soundfont_path)
63
- yield mdata, "output.mid", (44100, audio), plt
64
-
65
- #==========================================================================================================
66
-
67
  def match_midi(midi, progress=gr.Progress()):
68
 
69
  print('=' * 70)
@@ -378,6 +338,12 @@ def match_midi(midi, progress=gr.Progress()):
378
  mid_seq_ticks = md[1][16][1]
379
  mdata = md[1][:16]
380
 
 
 
 
 
 
 
381
  x = []
382
  y = []
383
  c = []
@@ -404,7 +370,7 @@ def match_midi(midi, progress=gr.Progress()):
404
  with open(f"output.mid", 'wb') as f:
405
  f.write(MIDI.score2midi([mid_seq_ticks, mid_seq]))
406
  audio = synthesis(MIDI.score2opus([mid_seq_ticks, mid_seq]), soundfont_path)
407
- yield mdata, "output.mid", (44100, audio), plt
408
 
409
  #==========================================================================================================
410
 
@@ -438,10 +404,10 @@ if __name__ == "__main__":
438
 
439
  input_midi = gr.File(label="input midi", file_types=[".midi", ".mid"], type="binary")
440
 
 
441
  output_audio = gr.Audio(label="output audio", format="mp3", elem_id="midi_audio")
442
  output_midi = gr.File(label="output midi", file_types=[".mid"])
443
  output_midi_seq = gr.Textbox(label="output midi metadata")
444
- output_plot = gr.Plot(label="output midi plot")
445
 
446
  run_event = input_midi.upload(match_midi, [input_midi],
447
  [output_midi_seq, output_midi, output_audio, output_plot])
 
24
 
25
  #==========================================================================================================
26
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
27
  def match_midi(midi, progress=gr.Progress()):
28
 
29
  print('=' * 70)
 
338
  mid_seq_ticks = md[1][16][1]
339
  mdata = md[1][:16]
340
 
341
+ txt_mdata = ''
342
+
343
+ for m in mdata:
344
+ txt_mdata += str(m)
345
+ txt_mdata += chr(10)
346
+
347
  x = []
348
  y = []
349
  c = []
 
370
  with open(f"output.mid", 'wb') as f:
371
  f.write(MIDI.score2midi([mid_seq_ticks, mid_seq]))
372
  audio = synthesis(MIDI.score2opus([mid_seq_ticks, mid_seq]), soundfont_path)
373
+ yield txt_mdata, "output.mid", (44100, audio), plt
374
 
375
  #==========================================================================================================
376
 
 
404
 
405
  input_midi = gr.File(label="input midi", file_types=[".midi", ".mid"], type="binary")
406
 
407
+ output_plot = gr.Plot(label="output midi plot")
408
  output_audio = gr.Audio(label="output audio", format="mp3", elem_id="midi_audio")
409
  output_midi = gr.File(label="output midi", file_types=[".mid"])
410
  output_midi_seq = gr.Textbox(label="output midi metadata")
 
411
 
412
  run_event = input_midi.upload(match_midi, [input_midi],
413
  [output_midi_seq, output_midi, output_audio, output_plot])