import gradio as gr # from musicautobot.numpy_encode import file2stream from musicautobot.utils.setup_musescore import play_wav from music21.midi.translate import midiFileToStream from pathlib import Path from midi2audio import FluidSynth import subprocess import os print(os.getcwd()) print(os.listdir()) subprocess.run(['ls']) # subprocess.run(['PATH=$PATH:~/opt/bin']) # subprocess.run(['PATH=$PATH:~/opt/bin/fluidsynth']) # subprocess.run(['fluidsynth']) def process_midi(midi_file): name = Path(midi_file.name) # stream = midiFileToStream(midi_file) # output_wav = play_wav(stream) # FluidSynth("../usr/share/sounds/sf2/FluidR3_GM.sf2").midi_to_audio(name, 'test.wav') FluidSynth("FluidR3_GM.sf2").midi_to_audio(name, 'test.wav') return output_wav iface = gr.Interface( fn=process_midi, inputs="file", outputs="audio" ) iface.launch()