Table of Contents

virtual void AK::IAkMixerEffectPlugin::OnEffectsProcessed ( AkAudioBuffer io_pMixBuffer  )  [pure virtual]

This function is called once every audio frame, after all insert effects on the bus have been processed, which occur after the post mix pass of OnMixDone(). After the bus buffer io_pMixBuffer has been pushed to the bus downstream (or the output device), it is cleared out for the next frame.

Note.gif
Note: io_pMixBuffer->eState is passed as AK_DataReady for the whole existence of the bus, until the last frame where it will be set to AK_NoMoreData. However, mixer plugins are capable of forcing the bus to remain alive for a longer time by changing io_pMixBuffer->eState back to AK_DataReady. You may do this in OnMixDone(), in OnEffectsProcessed() or in OnFrameEnd(). The difference is that effects inserted on the bus will enter their "tail mode" if you wait until OnEffectsProcessed() or OnFrameEnd() to flip the state to AK_DataReady. This is usually undesirable, so handling this inside OnMixDone() is usually preferred.
See also:
Parameters:
io_pMixBuffer  Output audio buffer data structure.