linux上的播放器好像都不能直接播放midi格式的音乐,需要一些简单的配置。 这里使用的是archlinux系统,别的应该差不多。
参考ArchWiki。
安装播放器
这里使用timidity++,能直接在命令行里使用的播放器,简单好用就行。
1 | sudo pacman -S timidity++ |
配置声音组
把自己加到一个声音组里。(直译,不懂具体什么意思……)
1 | gpasswd -a <user> audio |
安装声音字体
midi本身只记录声音的基本信息,就像乐谱。SoundFonts好像和音源类似,提供具体的声音。
1 | sudo pacman -S freepats-general-midi |
当然不止这一种,别的详见ArchWiki。
还需要修改配置文件。在/etc/timidity++/timidity.cfg
的末尾添加soundfont /usr/share/soundfonts/freepats-general-midi.sf2
。
启用服务
文档说执行
1 | timidity -iA |
然而我这样并不成功。不过可以自己添加一个服务。
新建/etc/systemd/user/timidity.service
并写入:
1 | [Unit] |
然后启动服务。
1 | systemctl --user enable timidity.service |
使用
好了,现在应该就可以了。如果不行的话试着重启一下终端。
1 | timidity example.midi |