首先转wav可以用python的midi2audio库
这个直接pip就可以
pip install midi2audio
还要安装sound_font.sf2 ,这是用来查表的找到对应音符还原成音频。
下载教程这兄弟写了: https://blog.csdn.net/weixin_40356612/article/details/106123137.
然后开始:下载好的default_sound_font.sf2路径和你想要的采样率传进去初始化,midi_to_audio里面传两个路径。
from midi2audio import FluidSynth
fs=FluidSynth('/home/yyfeng/work/train_data/default_sound_font.sf2','16000')
fs.midi_to_audio('midi_path', 'save_wav_path' )
问题:No such file or directory: ‘fluidsynth’: ‘fluidsynth’
是因为Linux系统中没有安装fluidsynth,如果只用pip来下载,还会报这个错。因为系统中的bin目录下没有这个程序的可执行文件,要手动安装。
Debian系的Linux发行版可以用以下指令来安装FluidSynth:
$ sudo apt install fluidsynth