11

我有一个适用于 Android 的吉他图表应用程序,我正在移植到 iOS。Android有一个嵌入式midi合成器(sonivox),所以我可以生成midi文件并让Android处理播放。

有没有办法在 iOS 上做到这一点?或者是否有适用于 iOS 的非常轻量级的可嵌入合成器?

4

4 回答 4

21

从 iOS 5 开始,现在有了 AUSampler 音频单元,您可以为其加载声音库(苹果预设和声音字体),然后通过 MIDI 消息控制采样器/合成器。

请参阅此示例应用程序: https ://developer.apple.com/library/ios/#samplecode/LoadPresetDemo/Listings/ReadMe_txt.html

效果很好!

于 2012-01-19T21:55:44.960 回答
4

更新:我的答案已经过时了。 @lukebuehler 的回答非常合适。

如果您不介意非开源解决方案,请尝试FMOD。作为游戏的商业音频引擎,fmod 配备了一个简单的 MIDI 合成器。我试过免费评估版。它可以在我的 iPhone 3G 上正确播放 GM MIDI 文件。

如果您想要的不仅仅是一个 SMF 文件播放器,您还想要一个功能齐全的 GS/GM 软合成器,它可以实时响应单个 MIDI 事件。你可以试试CrimsonTech 的 midisynth。它的许可费是公平的。Crimsontech 在应用商店中提供了多个演示应用。此外,它还免费提供评估SDK。在您真正要发布您的应用程序之前,您无需为许可证支付一分钱。

于 2011-01-01T04:02:58.290 回答
1

我不认为 iOS 4.2 中的 MIDI 支持允许从手机本身播放 MIDI 数据。它仅用于向其他 MIDI 设备发送和接收 MIDI 命令。

从最近的 iOS 4.2 文档来看,您似乎可以使用 MIDI 支持将 MIDI 命令发送到其他设备进行播放。您还可以从其他设备接收命令并对这些命令进行更改,或将其保存在文件中。但是我找不到任何支持直接从手机播放 MIDI 文件。如果我错了,请有人纠正我(我希望我错了!!)。

于 2010-12-20T00:54:14.677 回答
-3

iOS 4.2 支持 MIDI。如果它与 OS X 提供的相同,那么它也将包含一个基本合成器。看看这个。

于 2010-11-21T23:14:36.330 回答