2

qt 4.7 下的 RtMIDI;将端口 0 用于 MIDI 输入和 MIDI 输出端口,使用 MIDI 通道 1 进行发送和接收。

这在 OSX 下完美运行。发送和接收,没有任何问题。

它在 Windows 下编译良好(在我的 Mac 上的 VMware Fusion Windows XP VM 中运行),应用程序可以向我的控制界面发送消息,但什么也没有收到……我从来没有收到回调,所以没有 midi 输入。MIDI 输入和输出设备的打开似乎都正常,没有出现错误。

我可以切换回 OSX,运行相同的应用程序(当然是为 OSX 编译的),一切都可以再次运行,而控制界面上没有配置更改。

so : 表面正在连接和打开(在windows下接收MIDI);但我什么也没得到。

我在这里错过了什么吗?

TIA

4

3 回答 3

3

在 Windows XP 下,打开输入的设备需要是设备 1(0...1)

在 Windows 7 启动器下,为输出打开的设备需要是设备 1(0...1)

在 OSX 下,输入和输出都需要为零。

就是这样。稍后的配置对话框,问题解决了(好吧,至少移交给最终用户。)

RtMidi 是一个不错的包,文档很少,但除此之外,超级棒。

于 2012-06-13T21:09:17.700 回答
2

在 windows 设备 0 下始终是 windows 媒体播放器 midi 合成器,midi 设备从设备 1 开始。如果您读取端口名称然后选择索引值偏移量,则可以按名称选择 midi 端口,这允许在更改端口位置时添加/删除其他设备,以便您的程序选择相同的默认 MIDI 设备。

于 2014-02-17T19:40:28.120 回答
1

与 OSX 不同,Windows 不一定将同一设备的输入和输出端口保持在相同的 ID/端口号。酷吧?

配置对话框确实很有帮助,但如果您知道一个端口,那么您可以搜索相反 IO 方向的端口名称以获取对应的端口。

于 2012-08-24T03:27:59.510 回答