iphone - 使用 Xcode/Cocoa 在 iPhone 中播放 midi 文件或 midi 音色

标签 iphone xcode cocoa-touch midi coremidi

我需要在 iPhone 中播放 midi 文件或 midi 音色。

我已经测试过MidiMonitor 。我认为我需要在 iPhone 上创建一个目标点来接收 MIDI,但我不知道该怎么做。

你能帮我吗?示例源代码很有用。

最佳答案

就像 @skinnyTOD 指出的那样,从 iOS 5.0 开始就可以使用 MediaPlayer。 首先将 AVFoundationAudioToolbox 框架链接到您的项目,然后使用以下代码:

#import <AVFoundation/AVFoundation.h>

NSURL *midiUrl = [[NSBundle mainBundle] URLForResource:@"even voor mij" withExtension:@"mid"];
MusicPlayer player = NULL;
NewMusicPlayer(&player);
MusicSequence sequence = NULL;
NewMusicSequence(&sequence);
MusicSequenceFileLoad(sequence, (__bridge CFURLRef)midiUrl, NULL, NULL);
MusicPlayerSetSequence(player, sequence);
MusicPlayerStart(player);

这将使用 bundle 中的 MIDI 文件设置播放器,然后开始播放。 请注意,清理播放器时您需要调用 DisposeMusicSequenceDisposeMusicPlayer

关于iphone - 使用 Xcode/Cocoa 在 iPhone 中播放 midi 文件或 midi 音色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6484597/

相关文章:

iphone - ARC 禁止自动释放?

objective-c - Xcode 6 OS X Storyboard多个用户默认 Controller 错误与多个场景?

iphone - 如何在 Core Data 中选择特定的数据?

ios - iOS 应用程序的背景在测试时未加载

html - 在 iOS 上将网页精简为文本( Objective-C )

objective-c - 创建 IBOutlet 还是 UIView?

cocoa-touch - 导航栏中的多个标签

iphone - 将核心图 x 轴移动到最后一点

iphone - 在基于文档的应用程序中保存更改的用户界面注意事项

iphone - 如何使用 plist NSString 项作为 UIImageView 对象名称