在虚拟端口上通过MIDI实现iOS上的音序器。
这很适合旋律
midi.createVirtualPorts(98536, name: "MyMagicMIDI")
midi.addListener(self)
func receivedMIDINoteOn(noteNumber: MIDINoteNumber, velocity: MIDIVelocity, channel: MIDIChannel) {
midi.sendNoteOnMessage(noteNumber: noteNumber, velocity: velocity)
}
func receivedMIDINoteOff(noteNumber: MIDINoteNumber, velocity: MIDIVelocity, channel: MIDIChannel) {
midi.sendNoteOffMessage(noteNumber: noteNumber, velocity: velocity)
}
但是使用Chorder应用程序或另一个音序器播放完美的同步和弦,我在2017年iPad上听到音频嘎吱作响的CPU峰值。单音符(甚至是超快琶音)的cpu使用率为1%或更少,但我注意到XCode中的数字分别为44%和77%以及破碎的音频和错过的midi事件(音符关闭和后续音符)同时发音符。删除sendNoteOnMessage并仅打印noteNumbers即可轻松进行操作(正如我们可能想象的那样,那里有很多很棒的“可排序”和弦生成器AudioKit应用程序)。使用AudioKit 4.5.5和4.6.1进行了测试。