Wwise SDK 2023.1.4
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...
 Base volume, common to all channels. More...
 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...
 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