我刚刚将Apple的Filter AU示例转换为使用AUMIDIEffectBase类,以便将其转换为Midi控制效果。

https://developer.apple.com/library/mac/samplecode/FilterDemo/Introduction/Intro.html

过滤器建立,但是我在auval工具中出现错误:

测试MIDI
错误:-4调用MusicDeviceSendMIDI

有人成功实现了AUMIDIEffectBase吗?
任何示例代码?

最佳答案

今天我遇到了同样的问题,发现问题出在苹果公司的CoreAudioUtilityClasses AUMIDIEffectBase类的当前版本中。由于具有多重继承,因此需要将以下内容添加到AUMIDIEffectBase.h中,以便AUPluginDispatch调用正确的重写方法。

virtual OSStatus    MIDIEvent(      UInt32                      inStatus,
                                    UInt32                      inData1,
                                    UInt32                      inData2,
                                    UInt32                      inOffsetSampleFrame)
{
    return AUMIDIBase::MIDIEvent (inStatus, inData1, inData2, inOffsetSampleFrame);
}

/*! @method SysEx */
virtual OSStatus    SysEx(          const UInt8 *               inData,
                                    UInt32                      inLength)
{
    return AUMIDIBase::SysEx (inData, inLength);
}

我刚刚从Apple网站上获取了最新信息:https://developer.apple.com/library/mac/samplecode/CoreAudioUtilityClasses/CoreAudioUtilityClasses.zip,看来他们已经解决了该问题。看来我们俩的下载时机都很糟糕!

关于audio - AUMIDIEffectBase,错误验证插件,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/19429606/

10-11 23:03