Version

menu_open
Wwise SDK 2021.1.14
AkSpeakerVolumeMatrixCallbackInfo Struct Reference

#include <AkCallback.h>

Inheritance diagram for AkSpeakerVolumeMatrixCallbackInfo:
AkEventCallbackInfo AkCallbackInfo

Public Attributes

AK::SpeakerVolumes::MatrixPtr  pVolumes
  Pointer to volume matrix describing the contribution of each source channel to destination channels. Use methods of AK::SpeakerVolumes::Matrix to interpret them. More...
 
AkChannelConfig  inputConfig
  Channel configuration of the voice/bus. More...
 
AkChannelConfig  outputConfig
  Channel configuration of the output bus. More...
 
AkReal32 pfBaseVolume
  Base volume, common to all channels. More...
 
AkReal32 pfEmitterListenerVolume
  Emitter-listener pair-specific gain. When there are multiple emitter-listener pairs, this volume is set to that of the loudest pair, and the relative gain of other pairs is applied directly on the channel volume matrix pVolumes. More...
 
AK::IAkMixerInputContext pContext
  Context of the current voice/bus about to be mixed into the output bus with specified base volume and volume matrix. More...
 
AK::IAkMixerPluginContext pMixerContext
  Output mixing bus context. Use it to access a few useful panning and mixing services, as well as the ID of the output bus. NULL if pContext is the master audio bus. More...
 
- Public Attributes inherited from AkEventCallbackInfo
AkPlayingID  playingID
  Playing ID of Event, returned by PostEvent() More...
 
AkUniqueID  eventID
  Unique ID of Event, passed to PostEvent() More...
 
- Public Attributes inherited from AkCallbackInfo
void *  pCookie
  User data, passed to PostEvent() More...
 
AkGameObjectID  gameObjID
  Game object ID. More...
 

Detailed Description

Callback information structure corresponding to AK_SpeakerVolumeMatrix, and passed to callbacks registered in RegisterBusVolumeCallback() or PostEvent() with AK_SpeakerVolumeMatrix. These callbacks are called at every audio frame for every connection from an input (voice or bus) to an output bus (standard or auxiliary), at the point when an input signal is about to be mixed into a mixing bus, but just before having been scaled in accordance to volumes authored in Wwise. The volumes are passed via this structure as pointers because they can be modified in the callbacks. They are factored into two linear values ([0..1]): a common base value (pfBaseVolume), that is channel-agnostic and represents the collapsed gain of all volume changes in Wwise (sliders, actions, RTPC, attenuations, ...), and a matrix of gains per input/output channel, which depends on spatialization. Use the methods of AK::SpeakerVolumes::Matrix, defined in AkCommonDefs.h, to perform operations on them. Access each input channel of the volumes matrix with AK::SpeakerVolumes::Matrix::GetChannel(), passing it the input and output channel configuration. Then, you may access each element of the output vector using the standard bracket [] operator. See AK::SpeakerVolumes for more details. It is crucial that the processing done in the callback be lightweight and non-blocking.

See also

Definition at line 163 of file AkCallback.h.


Was this page helpful?

Need Support?

Questions? Problems? Need more info? Contact us, and we can help!

Visit our Support page

Tell us about your project. We're here to help.

Register your project and we'll help you get started with no strings attached!

Get started with Wwise