RtMIDI在qt 4.7下;使用端口0进行midi输入和midi输出端口,使用MIDI通道1发送和接收。
这在OSX下完美运行。发送和接收,没有任何问题。
它在Windows下运行良好(在我的Mac上运行在VMware Fusion Windows XP VM中),应用程序可以将消息发送到我的控制界面,但什么都没有收到......我从来没有得到回调,所以没有midi输入。 MIDI输入和输出设备的打开似乎都没问题,没有出现错误。
我可以切换回OSX,运行相同的应用程序(当然是为OSX编译的),一切都可以在控制界面上进行配置更改。
所以:表面连接并打开(它在窗口下接收MIDI);但我从中得不到任何东西。
我在这里错过了什么吗?
TIA
答案 0 :(得分:3)
在Windows XP下,为输入打开的设备需要是设备1(0 ... 1)
在Windows 7启动器下,为输出打开的设备需要是设备1(0 ... 1)
在OSX下,输入和输出都必须为零。
就是这样。稍后配置对话框,问题解决了(好吧,至少移交给最终用户。)
RtMidi是一个很好的软件包,文档很少,但除此之外,超级。
答案 1 :(得分:2)
在Windows设备下,0始终是Windows媒体播放器midi合成器,midi设备从设备1开始。 如果读取端口名称,则可以按名称选择midi端口,然后选择索引值偏移量,允许在添加/删除其他设备时更改端口位置,以便程序选择相同的默认midi设备。
答案 2 :(得分:1)
与OSX不同,Windows不一定将同一设备的输入和输出端口保持在相同的ID / portNumber。好吧?
配置对话框确实很有用,但是如果您知道一个端口,那么您可以搜索相反IO方向的端口名称以获得其对应端口。