如果你使用的是AKMIDICallbackInstrument类来处理MIDI事件,并且需要处理超过16个通道的MIDI事件,可以通过以下方法进行解决:
class MyMIDICallbackInstrument: AKMIDICallbackInstrument {
override func receivedMIDIEvent(_ event: AKMIDIEvent) {
if event.channel > 16 {
// 处理超过16个通道的MIDI事件
} else {
super.receivedMIDIEvent(event)
}
}
}
let midiCallbackInstrument = MyMIDICallbackInstrument()
通过以上方法,你可以扩展AKMIDICallbackInstrument类,使其能够处理超过16个通道的MIDI事件。你可以在子类中根据自己的需求来处理这些事件。