我的AudioUnits工作得很好,但是当延迟发生变化时,它们需要通知主机。下面是我的代码:
AudioUnitEvent e;
MMEMSET(&e, 0, sizeof(AudioUnitEvent));
e.mArgument.mProperty.mAudioUnit = Instance;//GetComponentInstance ();
e.mArgument.mProperty.mPropertyID = kAudioUnitProperty_Latency;
e.mArgument.mProperty.mScope = kAudioUnitScope_Global;
e.mArgument.mProperty.mElement = 0;
e.mEventType = kAudioUnitEvent_PropertyChange;
AUEventListenerNotify (paramListenerRef, NULL, &e);不幸的是,这在大多数主机上似乎不起作用,尤其是逻辑。你知道会出什么问题吗?
发布于 2013-12-05 04:16:55
终于找到了。因此,您需要管理属性侦听器列表,并在发生这种情况时询问所有属性侦听器。丑陋,但我花了一些时间研究可怕的CoreAudio软件开发工具包,这就是他们是如何做到的……
https://stackoverflow.com/questions/20381849
复制相似问题