AKCallbackInstrument midiIn和回调状态不起作用

时间:2019-02-23 16:45:21

标签: ios swift xcode audiokit

我已经将AudioKit升级到4.6.1,现在无法编译我的应用程序。出现了2个问题,与AKCallbackInstrument类有关。

第一:

callbackTrack?.setMIDIOutput(callbackInstrument.midiIn)Value of type 'AKCallbackInstrument' has no member 'midiIn'一起出现,由于AKCallbackInstrument继承自AKMIDIInstrument

秒:

callbackInstrument.callback = { status, noteNumber, velocity in
    if(status == .noteOn){
        // ...
    }
}

此注释:Ambiguous reference to member '==',我已经在SO上看到了这个问题,但没有帮助。

谢谢:)

2 个答案:

答案 0 :(得分:1)

这似乎是由于从MIDIStatus为类型更改为MIDIStatus为包含类型的对象。

public struct AKMIDIStatus {
    ...
    public var type: AKMIDIStatusType? {
        return AKMIDIStatusType(rawValue: Int(byte.highBit))
    }

因此,请尝试仅将代码更改为s

if status.type == .noteOn {
    //
}

答案 1 :(得分:0)

由于我个人没有几个问题,因此我将在此处发布对我有用的答案。

AKCallbackInstrument

更改AKMIDICallbackInstrument,API应该可以正常工作。

*请确保您使用的版本比4.6.1更新,因为此版本中的修复程序和MIDI组件的更改。