1

我用coremidi没问题,但我也想支持外接USB功能。

我尝试了一个名为 Midi Monitor 的应用程序,它在连接时确实可以找到我的 USB 接口。问题是如何通过我自己的应用程序启用这个界面。正如 MIDIGetNumberOfExternalDevices 文档中所说,“它们的存在是完全可选的,只有当 UI(例如音频 MIDI 设置)添加它们时。”

我应该如何添加它们?

此致。

4

1 回答 1

3

“外部设备”不是您想要的。这些是用户可以在 OS X 的音频 MIDI 设置中创建的东西,用于表示通过 MIDI 电缆连接到计算机的合成器或键盘或其他设备。系统不会自动创建它们。(它不能,因为 MIDI 非常原始并且没有设备发现协议。)

外部设备只是为了用户命名和安排事物的利益。它们不能用于 MIDI 输入或输出。它们在 iOS 中尤其没用,因为没有音频 MIDI 设置应用程序。

相反,使用MIDIGetNumberOfSourcesMIDIGetSource查找 MIDI 数据源。

要实际获取输入,请使用MIDIInputPortCreate创建一个输入端口,然后MIDIPortConnectSource将一个或多个源连接到该端口。MIDIReadProc然后当 MIDI 进入时,您的端口将被调用。

类似地,对于输出,您可以使用MIDIGetNumberOfDestinationsMIDIGetDestination查找目标,使用 创建输出端口MIDIOutputPortCreate,并MIDISend通过端口将数据发送到目标。

如需参考,请参阅MIDIServices 文档

于 2013-06-19T05:40:40.300 回答