【发布时间】:2015-04-18 14:24:34
【问题描述】:
在 Windows 中,我有 OpenMidi CloseMidi 和 SendMidi 命令。
在OpenMidi 之后,我得到了一个句柄,然后我可以使用SendMidi 发送像90 52 64 这样的midi 消息,我会在默认的原声三角钢琴上听到一个音符。
如何在 Linux 上执行等效操作,在我的程序(例如游戏)选择时执行 midi 命令?这是实时执行的,即在给出命令的确切时间。
【问题讨论】:
-
哪个库实现了
SendMidi命令?你在 Linux 中使用的是什么库? -
SendMidi 命令在大多数版本的 Windows 上都可用。你为什么要问?关于 Linux 中的库:我的问题相当于“Linux 中的哪个库会提供类似的设施”?
-
我的 Windows 没有它。这可能是由您的编程语言提供的,无论它是什么。无论如何,在 Linux 中使用什么取决于您在那里使用的编程语言。
-
编程语言无关。我是所有武器的大师。我不在乎它是程序还是库。我想找到一些关于 midi 的实时功能,仅此而已。如果你真的必须知道,我从我自己的 Forth 9ciforth 运行 SendMidi 命令)。它在东芝的某些 dll 中使用 XP,并且可以从任何接口的语言调用 dll,如您所知
-
大部分声卡没有硬件合成器,默认不安装软件合成器。阅读this。我个人在 Timidity++ 上取得了成功。通过运行
aplaymidi some-midi-file验证您的设置。然后使用答案中提到的库之一,或重新利用aplaymidi源代码。