Other Documentation

Wwise SDK 2022.1.9
AK Namespace Reference

Audiokinetic namespace. More...


  Audiokinetic spatial audio namespace.
  Multi-channel volume definitions and services.
  Audiokinetic Stream Manager's implementation-specific interfaces of the Low-Level IO submodule.
  Win32 namespace.
namespace   Wwise


class   AkFXParameterChangeHandler
struct   AkMetering
  Struct containing metering information about a buffer. Depending on when this struct is generated, you may get metering data computed in the previous frame only. More...
class   CAkValueRamp
class   FNVHash
struct   Hash30
struct   Hash32
struct   Hash64
class   IAk3DAudioSinkPlugin
  Software plug-in interface for sink (audio end point) which supports 3D audio features. More...
class   IAkAndroidContext
  Context specific to the Android port of Wwise SDK. More...
class   IAkAudioDeviceEffectPlugin
class   IAkAudioDeviceEffectPluginContext
class   IAkAutoStream
class   IAkDeviceProfile
class   IAkEffectPlugin
  Software effect plug-in interface (see Creating Sound Engine Effect Plug-ins). More...
class   IAkEffectPluginContext
class   IAkGameObjectPluginInfo
  Game object information available to plugins. More...
class   IAkGGPContext
  Context specific to the Linux port of Wwise SDK. More...
class   IAkGlobalPluginContext
class   IAkInPlaceEffectPlugin
  Software effect plug-in interface for in-place processing (see Creating Sound Engine Effect Plug-ins). More...
class   IAkInPlaceObjectPlugin
class   IAkiOSContext
  Context specific to the iOS port of Wwise SDK. More...
class   IAkLinuxContext
  Context specific to the Linux port of Wwise SDK. More...
class   IAkMacContext
  Context specific to the macOS port of Wwise SDK. More...
class   IAkMixerEffectPlugin
  Software effect plug-in interface for panner/mixer effects (see Creating Sound Engine Effect Plug-ins). More...
class   IAkMixerInputContext
class   IAkMixerPluginContext
  Interface to retrieve contextual information for a mixer. More...
class   IAkOutOfPlaceEffectPlugin
  Software effect plug-in interface for out-of-place processing (see Creating Sound Engine Effect Plug-ins). More...
class   IAkOutOfPlaceObjectPlugin
class   IAkPlatformContext
class   IAkPlugin
class   IAkPluginContextBase
  Interface to retrieve contextual information available to all types of plugins. More...
class   IAkPluginMemAlloc
class   IAkPluginParam
class   IAkPluginService
  Common interface for plug-in services accessed through the global plug-in context. More...
class   IAkPluginServiceAudioObjectAttenuation
  Interface for the services related to extracting attenuation curves from audio objects and using them. More...
class   IAkPluginServiceAudioObjectPriority
class   IAkPluginServiceMixer
  Interface for the "Mixer" plug-in service, to handle mixing together of signals, or applying simple transforms. More...
class   IAkPluginServiceRNG
class   IAkProcessorFeatures
class   IAkPS4Context
  Context specific to the PS4 port of Wwise SDK. More...
class   IAkPS5Context
  Context specific to the PS5 port of Wwise SDK. More...
class   IAkRTPCSubscriber
class   IAkSinkPlugin
  Software interface for sink (audio endpoint) plugins. More...
class   IAkSinkPluginBase
class   IAkSinkPluginContext
class   IAkSourcePlugin
  Wwise sound engine source plug-in interface (see Creating Sound Engine Source Plug-ins). More...
class   IAkSourcePluginContext
class   IAkStdStream
class   IAkStreamMgr
class   IAkStreamMgrProfile
class   IAkStreamProfile
class   IAkSwitchContext
  Context specific to the NX port of Wwise SDK. More...
class   IAkUWPContext
  Context specific to the UWP port of Wwise SDK. More...
class   IAkVoicePluginInfo
  Voice-specific information available to plug-ins. More...
class   IAkWin32Context
  Context specific to the Win32 port of Wwise SDK. More...
class   IAkXboxGCContext
  Context specific to the XboxOneGC port of Wwise SDK. More...
class   IAkXboxOneContext
  Context specific to the Xbox One port of Wwise SDK. More...
class   IReadBytes
class   IWriteBuffer
class   IWriteBytes
class   ObjectPool
  An object pool of N reusable objects with one allocation. More...
struct   ObjectPoolNoLock
class   PluginRegistration
class   ReadBytesMem
class   ReadBytesSkip
class   WriteBytesBuffer
class   WriteBytesCount
class   WriteBytesMem


typedef int(*  _akmotionPadGetHandle) (int userId, int type, int index)
typedef int(*  _akmotionPadGetContainerIdInformation) (int handle, void *pInfo)
typedef int(*  _akmotionPadGetControllerType) (int handle, void *pControllerType)
typedef int(*  _akmotionPadSetVibrationMode) (int handle, ScePadVibrationMode mode)
typedef int(*  _akmotionPadSetVibration) (int handle, const void *pParam)
typedef void(*  AkDeviceStatusCallbackFunc) (AK::IAkGlobalPluginContext *in_pContext, AkUniqueID in_idAudioDeviceShareset, AkUInt32 in_idDeviceID, AkAudioDeviceEvent in_idEvent, AKRESULT in_AkResult)
typedef FNVHash< Hash32 FNVHash32
typedef FNVHash< Hash30 FNVHash30
typedef FNVHash< Hash64 FNVHash64
template<AkMemID T_MEMID = AkMemID_Object>
using  ObjectPoolDefaultAllocator = AkArrayAllocatorNoAlign< T_MEMID >
using  ObjectPoolDefaultLockType = ObjectPoolNoLock


enum   AkAudioDeviceEvent { AkAudioDeviceEvent_Initialization, AkAudioDeviceEvent_Removal, AkAudioDeviceEvent_SystemRemoval }
enum   AkChannelOrdering { ChannelOrdering_Standard, ChannelOrdering_RunTime }
  Channel ordering type. More...
enum   AkSinkPluginType { AkSinkPluginType_Sink, AkSinkPluginType_3DAudioSink }
enum   AkPluginServiceType {
  PluginServiceType_Mixer = 0, PluginServiceType_RNG = 1, PluginServiceType_AudioObjectAttenuation = 2, PluginServiceType_AudioObjectPriority = 3,
enum   AkSIMDProcessorSupport {
  AK_SIMD_SSE = 1<<0, AK_SIMD_SSE2 = 1<<1, AK_SIMD_SSE3 = 1<<2, AK_SIMD_SSSE3 = 1<<3,
  AK_SIMD_SSE41 = 1<<4, AK_SIMD_AVX = 1<<5, AK_SIMD_F16C = 1<<6, AK_SIMD_AVX2 = 1<<7
  SIMD instruction sets. More...


static bool  IsBankCodecID (AkUInt32 in_codecID)
static AkUInt8  ChannelMaskToNumChannels (AkChannelMask in_uChannelMask)
  Returns the number of channels of a given channel configuration. More...
static AkChannelMask  ChannelMaskFromNumChannels (unsigned int in_uNumChannels)
static AkUInt8  ChannelBitToIndex (AkChannelMask in_uChannelBit, AkChannelMask in_uChannelMask)
AkForceInline bool  HasLFE (AkChannelMask in_uChannelMask)
AkForceInline bool  HasCenter (AkChannelMask in_uChannelMask)
AkForceInline AkUInt32  GetNumberOfAnglesForConfig (AkChannelMask in_uChannelMask)
AkForceInline bool  HasSurroundChannels (AkChannelMask in_uChannelMask)
AkForceInline bool  HasStrictlyOnePairOfSurroundChannels (AkChannelMask in_uChannelMask)
AkForceInline bool  HasSideAndRearChannels (AkChannelMask in_uChannelMask)
AkForceInline bool  HasHeightChannels (AkChannelMask in_uChannelMask)
  Returns true if standard configuration represented by channel mask has at least one "height" channel (above the plane). More...
AkForceInline AkChannelMask  BackToSideChannels (AkChannelMask in_uChannelMask)
static unsigned int  StdChannelIndexToDisplayIndex (AkChannelOrdering in_eOrdering, unsigned int in_uChannelMask, unsigned int in_uChannelIdx)
AkVector  ConvertAkVector64ToAkVector (AkVector64 in)
AkTransform  ConvertAkWorldTransformToAkTransform (AkWorldTransform in)
AkVector64  ConvertAkVectorToAkVector64 (AkVector in)
AkWorldTransform  ConvertAkTransformToAkWorldTransform (AkTransform in)
template<typename T , typename std::enable_if< std::is_fundamental< T >::value||std::is_enum< T >::value, bool >::type = true>
ReadUnaligned (const AkUInt8 *in_pVal)
template<typename T , typename std::enable_if< std::is_fundamental< T >::value||std::is_enum< T >::value, bool >::type = true>
void  WriteUnaligned (AkUInt8 *out_pVal, const T in_val)
template<typename T , typename std::enable_if< std::is_class< T >::value, bool >::type = true>
void  WriteUnaligned (AkUInt8 *out_pVal, const T &in_val)
template<typename T >
ReadBankData (AkUInt8 *&in_rptr)
  Read data from bank and advance pointer. More...
template<typename T >
ReadVariableSizeBankData (AkUInt8 *&in_rptr)
char *  ReadBankStringUtf8 (AkUInt8 *&in_rptr, AkUInt32 &out_uStringSize)
AkForceInline AkUInt32  GetNumNonZeroBits (AkUInt32 in_uWord)
AkForceInline AkUInt32  GetNextPowerOfTwo (AkUInt32 in_uValue)
AkForceInline AkUInt32  ROTL32 (AkUInt32 x, AkUInt32 r)
AkForceInline AkUInt64  ROTL64 (AkUInt64 x, AkUInt64 r)
int  GetPS4OutputHandle (AkOutputDeviceID deviceId=0)
int  GetSceAudio3dPortId ()
SceAudioOut2PortHandle  GetAudioOut2PortHandle (AkOutputDeviceID deviceId=0)
AKSOUNDENGINE_API IUnknown *  GetWwiseXAudio2Interface ()
AKSOUNDENGINE_API IDirectSound8 *  GetDirectSoundInstance ()
AKSOUNDENGINE_API AkUInt32  GetDeviceID (IMMDevice *in_pDevice)
AKSOUNDENGINE_API AkUInt32  GetDeviceIDFromName (wchar_t *in_szToken)
AKSOUNDENGINE_API const wchar_t *  GetWindowsDeviceName (AkInt32 index, AkUInt32 &out_uDeviceID, AkAudioDeviceState uDeviceStateMask=AkDeviceState_All)
AKSOUNDENGINE_API AkUInt32  GetWindowsDeviceCount (AkAudioDeviceState uDeviceStateMask=AkDeviceState_All)
AKSOUNDENGINE_API bool  GetWindowsDevice (AkInt32 in_index, AkUInt32 &out_uDeviceID, IMMDevice **out_ppDevice, AkAudioDeviceState uDeviceStateMask=AkDeviceState_All)
AKSOUNDENGINE_API AkDeviceID  GetDeviceIDFromGamepad (Windows::Gaming::Input::Gamepad^ rGamepad)


AkReal32  g_fFreqRatio

Detailed Description

Audiokinetic namespace.

Dummy assert hook definition.

Utility functions.

Can be used to track individual parameter changes to avoid costly computations when they remain constant This class is designed to use only the lower bit information of the parameter IDs

Ambisonics configurations (corresponding to AkChannelConfig::eConfigType == AK_ChannelConfigType_Ambisonic). Convention: X points towards the front, and XYZ follow a right-hand rule, so Y is the side vector (pointing to the left). Channel presence and ordering are predefined according to the number of channels. The ordering convention is ACN, with the mapping of components to number of channels detailed below (source: Normalization natively used in Wwise is SN3D.

Number of channels Order Description Layout of components
Horizontal Vertical
1     0     0       mono  
4     1     1       first-order full sphere   WYZX
9     2     2       second-order full sphere   WYZXVTRSU
16     3     3       third-order full sphere   WYZXVTRSUQOMKLNP

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