如果我从终端
运行fluidsynth
fluidsynth soundfont.sf2 midifile.midi
然后我可以实时编写control change commands来改变播放。例如,
cc 1 7 0
向通道1发送CC#7消息(通道音量),值为0,表示通道1上的音量设置为0.
现在,我想在调用fluidsynth
时指定一堆这些cc命令,这意味着在回放开始之前通道卷已设置为(反过来意味着我可以输出我的想要混合到一个音频文件,这是我的最终目标。)
在阅读fluidsynth
manual时,我找到以下选项:
-f, --load-config
Load command configuration file (shell commands)
我猜这就是我想要使用的内容,因为fluidsynth
手册中的控件更改事件列在MIDI MESSAGES下面,而MIDI MESSAGES又列在SHELL COMMANDS下。然而,手册并没有给我太多的信息(引用的段落是关于这个选项的唯一说法;没有例子,没有任何东西)。我试过阅读configuration files in UNIX而无法解决任何问题。
我尝试制作一个名为config
的文件,用一堆cc命令填充它,如下所示:
cc 0 7 0
cc 1 7 0
cc 2 7 0
然后尝试使用
加载它fluidsynth -f config soundfont.sf2 midifile.midi
但这种做法没有做任何事情(fluidynth也没有报告任何错误)。