我刚刚将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/