Windows Vista/7/8有新的Midi API吗?

7

MIDI已经古老了,已经有30年的历史了。没有改变,所以不需要修改API。它在现代Windows版本上运行良好。 - Hans Passant
1
是的,旧的API在Windows 7和8中仍然可以使用,但据我所知,在Windows 8商店应用程序中没有办法使用MIDI设备,因为整个winmm不可用。 - Mark Heath
请注意,对于Win32桌面应用程序,“核心” DirectMusic API由于时间戳MIDI支持Windows 7 x64及更高版本。 - Chuck Walbourn
3个回答

3

对于桌面应用程序(非Metro),您仍然可以安全地使用传统API。

遗憾的是,对于WinRT / Metro,根本没有MIDI支持(请参见此msdn上的讨论)。

希望他们会改变这一点。


哇...这太疯狂了。我想我不会购买Windows Metro设备了。 - Brad
Brad,看看我的新评论。有一些解决方法(我预计音乐家会使用)。如果我没记错的话,在iOS 3之前也不支持MIDI。 - Jason Olson

3

1
Catflier是正确的,WinRT没有直接支持MIDI(在API级别)。但是,如果您想在应用程序中具有类似MIDI的功能,则有解决方法。一种越来越受欢迎的协议是基于网络的OSC(Open Sound Control)。由于它是基于网络的,因此您可以使用它。
例如,可以使用外部硬件,如The Missing Link,将MIDI转换为OSC。您将MIDI设备连接到The Missing Link,然后将其转换为OSC消息发送到计算机。然后,您的应用程序可以接收OSC消息并与MIDI设备通信。我没有任何代码可展示,但我已经看到了这个演示。
您还可以在iOS上使用TouchOSC等流行应用程序来查看OSC的使用。

是的,你说的没错,有一些变通方法,但它们的问题就是...它们只是变通方法。而且像Missing Link这样的硬件可以将OSC转换为MIDI,但通常你需要反过来(例如,只需将USB MIDI设备插入计算机)。尽管我很喜欢OSC(也经常使用它),但MIDI已经被证明非常可靠(我可以用一个MIDI控制器运行整夜的演出,因为我知道它不会让我失望,但我几乎不能对无线路由器说同样的话)。所以我仍然希望Metro能够支持本地的MIDI。 - mrvux
1
我们完全同意:)。作为一名音乐家,我也希望未来发生同样的事情。 - Jason Olson

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接