Go to the documentation of this file.
34 #ifndef _AK_SOUNDENGINE_H_
35 #define _AK_SOUNDENGINE_H_
46 #elif defined (AK_MAC_OS_X)
50 #elif defined (AK_IOS)
54 #elif defined(AK_XBOXGC) // Gaming.Xbox platform
58 #elif defined (AK_XBOXONE)
62 #elif defined( AK_LUMIN )
63 #include <AK/SoundEngine/Platforms/Lumin/AkLuminSoundEngine.h>
64 #include <AK/SoundEngine/Platforms/Lumin/AkPlatformContext.h>
66 #elif defined( AK_ANDROID )
70 #elif defined (AK_PS4)
74 #elif defined (AK_PS5)
78 #elif defined( AK_GGP )
82 #elif defined( AK_LINUX_DESKTOP )
86 #elif defined( AK_EMSCRIPTEN )
87 #include <AK/SoundEngine/Platforms/Emscripten/AkEmscriptenSoundEngine.h>
88 #include <AK/SoundEngine/Platforms/Emscripten/AkPlatformContext.h>
90 #elif defined( AK_QNX )
91 #include <AK/SoundEngine/Platforms/QNX/AkQNXSoundEngine.h>
92 #include <AK/SoundEngine/Platforms/QNX/AkPlatformContext.h>
94 #elif defined( AK_NX )
99 #error AkSoundEngine.h: Undefined platform
102 #ifndef AK_ASSERT_HOOK
107 const char * in_pszExpression,
108 const char * in_pszFileName,
111 #define AK_ASSERT_HOOK
123 bool in_bBackgroundMusicMuted,
138 #ifdef AK_SUPPORT_WCHAR
191 const char * in_szDebugName);
264 namespace SoundEngine
470 const AkReal32 * in_pfSpeakerAngles,
511 bool in_bAllowSyncRender =
true
605 void * in_pCookie =
NULL,
664 #ifdef AK_SUPPORT_WCHAR
686 #endif //AK_SUPPORT_WCHAR
734 void * in_pCookie =
NULL,
740 #ifdef AK_SUPPORT_WCHAR
759 const wchar_t* in_pszEventName,
763 void * in_pCookie =
NULL,
768 #endif //AK_SUPPORT_WCHAR
788 const char* in_pszEventName,
792 void * in_pCookie =
NULL,
819 AkTimeMs in_uTransitionDuration = 0,
824 #ifdef AK_SUPPORT_WCHAR
829 const wchar_t* in_pszEventName,
832 AkTimeMs in_uTransitionDuration = 0,
836 #endif //AK_SUPPORT_WCHAR
842 const char* in_pszEventName,
845 AkTimeMs in_uTransitionDuration = 0,
868 bool in_bAbsoluteOffsets =
false,
871 void * in_pCookie =
NULL,
911 #ifdef AK_SUPPORT_WCHAR
929 const wchar_t* in_pszEventName,
933 #endif //AK_SUPPORT_WCHAR
952 const char* in_pszEventName,
966 #ifdef AK_SUPPORT_WCHAR
973 const wchar_t* in_pszEventName
975 #endif //AK_SUPPORT_WCHAR
983 const char* in_pszEventName
997 bool& out_bCachePinnedMemoryFull
1009 const char* in_pszEventName,
1011 bool& out_bCachePinnedMemoryFull
1014 #ifdef AK_SUPPORT_WCHAR
1024 const wchar_t* in_pszEventName,
1026 bool& out_bCachePinnedMemoryFull
1079 bool in_bSeekToNearestMarker =
false,
1083 #ifdef AK_SUPPORT_WCHAR
1132 const wchar_t* in_pszEventName,
1135 bool in_bSeekToNearestMarker =
false,
1138 #endif //AK_SUPPORT_WCHAR
1188 const char* in_pszEventName,
1191 bool in_bSeekToNearestMarker =
false,
1245 bool in_bSeekToNearestMarker =
false,
1249 #ifdef AK_SUPPORT_WCHAR
1296 const wchar_t* in_pszEventName,
1299 bool in_bSeekToNearestMarker =
false,
1302 #endif //AK_SUPPORT_WCHAR
1350 const char* in_pszEventName,
1353 bool in_bSeekToNearestMarker =
false,
1396 bool in_bExtrapolate =
true
1421 bool in_bExtrapolate =
true
1443 bool & out_bIsBuffering
1460 AkTimeMs in_uTransitionDuration = 0,
1470 AkTimeMs in_uTransitionDuration = 0,
1512 const void* in_pData,
1547 const char * in_pszObjName
1641 AkReal32 in_fAttenuationScalingFactor
1676 #ifdef AK_SUPPORT_WCHAR
1718 const wchar_t* in_pszString,
1721 #endif //AK_SUPPORT_WCHAR
1764 const char* in_pszString,
1847 const void * in_pInMemoryBankPtr,
1893 const void * in_pInMemoryBankPtr,
1902 const void * in_pInMemoryBankPtr,
1905 void * & out_pDecodedBankPtr,
1909 #ifdef AK_SUPPORT_WCHAR
1948 const wchar_t* in_pszString,
1953 #endif //AK_SUPPORT_WCHAR
1993 const char* in_pszString,
2076 const void * in_pInMemoryBankPtr,
2119 const void * in_pInMemoryBankPtr,
2126 #ifdef AK_SUPPORT_WCHAR
2142 const wchar_t* in_pszString,
2143 const void * in_pInMemoryBankPtr
2145 #endif //AK_SUPPORT_WCHAR
2162 const char* in_pszString,
2163 const void * in_pInMemoryBankPtr
2177 const void * in_pInMemoryBankPtr
2180 #ifdef AK_SUPPORT_WCHAR
2197 const wchar_t* in_pszString,
2198 const void * in_pInMemoryBankPtr,
2202 #endif //AK_SUPPORT_WCHAR
2220 const char* in_pszString,
2221 const void * in_pInMemoryBankPtr,
2239 const void * in_pInMemoryBankPtr,
2279 #ifdef AK_SUPPORT_WCHAR
2295 const wchar_t* in_pszString,
2298 #endif //AK_SUPPORT_WCHAR
2315 const char* in_pszString,
2339 #ifdef AK_SUPPORT_WCHAR
2355 const wchar_t* in_pszString,
2360 #endif //AK_SUPPORT_WCHAR
2377 const char* in_pszString,
2416 #ifdef AK_SUPPORT_WCHAR
2451 const wchar_t** in_ppszString,
2454 #endif //AK_SUPPORT_WCHAR
2492 const char** in_ppszString,
2533 #ifdef AK_SUPPORT_WCHAR
2559 const wchar_t** in_ppszString,
2564 #endif //AK_SUPPORT_WCHAR
2591 const char** in_ppszString,
2672 #ifdef AK_SUPPORT_WCHAR
2705 const wchar_t* in_pszGroupName,
2706 const wchar_t** in_ppszGameSyncName,
2709 #endif //AK_SUPPORT_WCHAR
2743 const char* in_pszGroupName,
2744 const char** in_ppszGameSyncName,
2785 #ifdef AK_SUPPORT_WCHAR
2810 const wchar_t* in_pszGroupName,
2811 const wchar_t** in_ppszGameSyncName,
2816 #endif //AK_SUPPORT_WCHAR
2842 const char* in_pszGroupName,
2843 const char** in_ppszGameSyncName,
2988 bool in_bSpatialized,
3022 AkTimeMs in_uValueChangeDuration = 0,
3024 bool in_bBypassInternalValueInterpolation =
false
3027 #ifdef AK_SUPPORT_WCHAR
3048 const wchar_t* in_pszRtpcName,
3051 AkTimeMs in_uValueChangeDuration = 0,
3053 bool in_bBypassInternalValueInterpolation =
false
3055 #endif //AK_SUPPORT_WCHAR
3077 const char* in_pszRtpcName,
3080 AkTimeMs in_uValueChangeDuration = 0,
3082 bool in_bBypassInternalValueInterpolation =
false
3106 AkTimeMs in_uValueChangeDuration = 0,
3108 bool in_bBypassInternalValueInterpolation =
false
3111 #ifdef AK_SUPPORT_WCHAR
3130 const wchar_t* in_pszRtpcName,
3133 AkTimeMs in_uValueChangeDuration = 0,
3135 bool in_bBypassInternalValueInterpolation =
false
3137 #endif //AK_SUPPORT_WCHAR
3157 const char* in_pszRtpcName,
3160 AkTimeMs in_uValueChangeDuration = 0,
3162 bool in_bBypassInternalValueInterpolation =
false
3184 AkTimeMs in_uValueChangeDuration = 0,
3186 bool in_bBypassInternalValueInterpolation =
false
3189 #ifdef AK_SUPPORT_WCHAR
3209 const wchar_t* in_pszRtpcName,
3211 AkTimeMs in_uValueChangeDuration = 0,
3213 bool in_bBypassInternalValueInterpolation =
false
3215 #endif //AK_SUPPORT_WCHAR
3236 const char* in_pszRtpcName,
3238 AkTimeMs in_uValueChangeDuration = 0,
3240 bool in_bBypassInternalValueInterpolation =
false
3254 #ifdef AK_SUPPORT_WCHAR
3264 const wchar_t* in_pszSwitchGroup,
3265 const wchar_t* in_pszSwitchState,
3268 #endif //AK_SUPPORT_WCHAR
3279 const char* in_pszSwitchGroup,
3280 const char* in_pszSwitchState,
3294 #ifdef AK_SUPPORT_WCHAR
3304 const wchar_t* in_pszTrigger,
3307 #endif //AK_SUPPORT_WCHAR
3318 const char* in_pszTrigger,
3332 #ifdef AK_SUPPORT_WCHAR
3343 const wchar_t* in_pszStateGroup,
3344 const wchar_t* in_pszState
3346 #endif //AK_SUPPORT_WCHAR
3358 const char* in_pszStateGroup,
3359 const char* in_pszState
3405 void* in_pCookie =
NULL
3425 void* in_pCookie =
NULL
3444 void* in_pCookie =
NULL
3497 #ifdef AK_SUPPORT_WCHAR
3511 const wchar_t* in_pszBusName,
3515 #endif //AK_SUPPORT_WCHAR
3530 const char* in_pszBusName,
3558 #ifdef AK_SUPPORT_WCHAR
3567 const wchar_t* in_pszBusName,
3570 #endif //AK_SUPPORT_WCHAR
3580 const char* in_pszBusName,
3593 #ifdef AK_SUPPORT_WCHAR
3599 const wchar_t* in_pszBusName,
3602 #endif //AK_SUPPORT_WCHAR
3609 const char* in_pszBusName,
3641 AkUInt32 in_uNumOcclusionObstruction
3711 const char* in_MarkerText
3727 void* in_pCookie =
NULL
3738 void* in_pCookie =
NULL
3774 bool in_bEnableOfflineRendering
3866 const char* in_szShareSet,
3871 #ifdef AK_SUPPORT_WCHAR
3873 const wchar_t* in_szShareSet,
3897 const char* in_BusName,
3898 const char* in_DeviceName
3901 #ifdef AK_SUPPORT_WCHAR
3909 const wchar_t* in_BusName,
3910 const wchar_t* in_DeviceName
3977 bool in_bRenderAnyway =
false
3999 #endif // _AK_SOUNDENGINE_H_
AkOutputSettings settingsMainOutput
Main output device settings.
AKSOUNDENGINE_API AKRESULT RegisterPluginDLL(const AkOSChar *in_DllName, const AkOSChar *in_DllPath=NULL)
AkUInt32 uMonitorQueuePoolSize
Size of the monitoring queue, in bytes. This parameter is not used in Release build.
AkUInt32 AkStateGroupID
State group ID.
AKSOUNDENGINE_API AKRESULT RemoveDefaultListener(AkGameObjectID in_listenerGameObj)
AKSOUNDENGINE_API AKRESULT PrepareEvent(PreparationType in_PreparationType, const char **in_ppszString, AkUInt32 in_uNumEvent)
AKSOUNDENGINE_API AkUInt32 GetSampleRate()
AKSOUNDENGINE_API AKRESULT SetRTPCValue(AkRtpcID in_rtpcID, AkRtpcValue in_value, AkGameObjectID in_gameObjectID=AK_INVALID_GAME_OBJECT, AkTimeMs in_uValueChangeDuration=0, AkCurveInterpolation in_eFadeCurve=AkCurveInterpolation_Linear, bool in_bBypassInternalValueInterpolation=false)
AKSOUNDENGINE_API AKRESULT SetOutputDeviceEffect(AkOutputDeviceID in_outputDeviceID, AkUInt32 in_uFXIndex, AkUniqueID in_FXShareSetID)
AKSOUNDENGINE_API AKRESULT SetSpeakerAngles(const AkReal32 *in_pfSpeakerAngles, AkUInt32 in_uNumAngles, AkReal32 in_fHeightAngle, AkOutputDeviceID in_idOutput=0)
AkInt32 AkTimeMs
Time in ms.
AkBackgroundMusicChangeCallbackFunc BGMCallback
Application-defined audio source change event callback function.
Auxiliary bus sends information per game object per given auxiliary bus.
AKSOUNDENGINE_API void ExecuteActionOnPlayingID(AkActionOnEventType in_ActionType, AkPlayingID in_playingID, AkTimeMs in_uTransitionDuration=0, AkCurveInterpolation in_eFadeCurve=AkCurveInterpolation_Linear)
Obstruction/occlusion pair for a position.
AKSOUNDENGINE_API AKRESULT LoadBankMemoryView(const void *in_pInMemoryBankPtr, AkUInt32 in_uInMemoryBankSize, AkBankID &out_bankID)
AkUInt8 * pMediaMemory
Pointer to the data to be set for the source.
AkPanningRule ePanningRule
AKSOUNDENGINE_API AKRESULT PrepareGameSyncs(PreparationType in_PreparationType, AkGroupType in_eGameSyncType, const char *in_pszGroupName, const char **in_ppszGameSyncName, AkUInt32 in_uNumGameSyncs)
AKSOUNDENGINE_API AKRESULT GetSourcePlayPositions(AkPlayingID in_PlayingID, AkSourcePosition *out_puPositions, AkUInt32 *io_pcPositions, bool in_bExtrapolate=true)
AKSOUNDENGINE_API AKRESULT Init(AkInitSettings *in_pSettings, AkPlatformInitSettings *in_pPlatformSettings)
AKSOUNDENGINE_API AKRESULT SetSwitch(AkSwitchGroupID in_switchGroup, AkSwitchStateID in_switchState, AkGameObjectID in_gameObjectID)
void(* AkResourceMonitorCallbackFunc)(const AkResourceMonitorDataSummary *in_pdataSummary)
AKSOUNDENGINE_API AKRESULT StopMIDIOnEvent(AkUniqueID in_eventID=AK_INVALID_UNIQUE_ID, AkGameObjectID in_gameObjectID=AK_INVALID_GAME_OBJECT, AkPlayingID in_playingID=AK_INVALID_PLAYING_ID)
AKSOUNDENGINE_API AKRESULT GetSourceStreamBuffering(AkPlayingID in_PlayingID, AkTimeMs &out_buffering, bool &out_bIsBuffering)
@ AkBankContent_StructureOnly
Use AkBankContent_StructureOnly to load only the structural content, including Events,...
IAkSoftwareCodec *(* AkCreateFileSourceCallback)(void *in_pCtx)
Registered file source creation function prototype.
AKSOUNDENGINE_API AKRESULT StartOutputCapture(const AkOSChar *in_CaptureFileName)
AkUInt32 AkRtpcID
Real time parameter control ID.
AKSOUNDENGINE_API AKRESULT SetMaxNumVoicesLimit(AkUInt16 in_maxNumberVoices)
AKSOUNDENGINE_API AKRESULT RegisterOutputDeviceMeteringCallback(AkOutputDeviceID in_idOutput, AkOutputDeviceMeteringCallbackFunc in_pfnCallback, AkMeteringFlags in_eMeteringFlags, void *in_pCookie=NULL)
AkUInt32 uNumSamplesPerFrame
Number of samples per audio frame (256, 512, 1024, or 2048).
AKSOUNDENGINE_API AKRESULT SetDefaultListeners(const AkGameObjectID *in_pListenerObjs, AkUInt32 in_uNumListeners)
AKSOUNDENGINE_API AKRESULT RegisterBusVolumeCallback(AkUniqueID in_busID, AkBusCallbackFunc in_pfnCallback, void *in_pCookie=NULL)
AKSOUNDENGINE_API AKRESULT UnregisterAllGameObj()
AKSOUNDENGINE_API AKRESULT ResetRTPCValue(AkRtpcID in_rtpcID, AkGameObjectID in_gameObjectID=AK_INVALID_GAME_OBJECT, AkTimeMs in_uValueChangeDuration=0, AkCurveInterpolation in_eFadeCurve=AkCurveInterpolation_Linear, bool in_bBypassInternalValueInterpolation=false)
AkUInt64 AkGameObjectID
Game object ID.
AkUInt32 AkBankID
Run time bank ID.
#define AK_EXTERNAPIFUNC(_type, _name)
AkReal32 fDebugOutOfRangeLimit
Debug setting: Only used when bDebugOutOfRangeCheckEnabled is true. This defines the maximum values s...
AKSOUNDENGINE_API AKRESULT RegisterGlobalCallback(AkGlobalCallbackFunc in_pCallback, AkUInt32 in_eLocation=AkGlobalCallbackLocation_BeginRender, void *in_pCookie=NULL, AkPluginType in_eType=AkPluginTypeNone, AkUInt32 in_ulCompanyID=0, AkUInt32 in_ulPluginID=0)
@ MultiPositionType_MultiDirections
Simulate one sound coming from multiple directions. Useful for repositionning sounds based on wall op...
AKSOUNDENGINE_API void CancelEventCallbackCookie(void *in_pCookie)
AKRESULT
Standard function call result.
AkUInt32 updateBufferTick
Value of GetBufferTick() at the time the position was updated.
AKRESULT(* AkGetDeviceListCallback)(AkUInt32 &io_maxNumDevices, AkDeviceDescription *out_deviceDescriptions)
Registered plugin device enumeration function prototype, used for providing lists of devices by plug-...
AKSOUNDENGINE_API AKRESULT RegisterGameObj(AkGameObjectID in_gameObjectID)
@ AkPanningRule_Speakers
Left and right positioned 60 degrees apart (by default - see AK::SoundEngine::GetSpeakerAngles()).
void(* AkGlobalCallbackFunc)(AK::IAkGlobalPluginContext *in_pContext, AkGlobalCallbackLocation in_eLocation, void *in_pCookie)
@ Preparation_LoadAndDecode
Vorbis media is decoded when loading, and an uncompressed PCM version is used for playback.
AkTaskSchedulerDesc taskSchedulerDesc
The defined client task scheduler that AkSoundEngine will use to schedule internal tasks.
AKSOUNDENGINE_API AKRESULT GetContainerHistory(AK::IWriteBytes *in_pBytes)
AkInt32 AkMemPoolId
Memory pool ID.
AKSOUNDENGINE_API AKRESULT SetState(AkStateGroupID in_stateGroup, AkStateID in_state)
Platform-independent initialization settings of output devices.
AKSOUNDENGINE_API bool IsInitialized()
@ Preparation_Unload
PrepareEvent() will unload required information to play the specified event.
@ AkBankContent_All
Use AkBankContent_All to load both the media and structural content.
void(* AkBusMeteringCallbackFunc)(AkBusMeteringCallbackInfo *in_pCallbackInfo)
AKSOUNDENGINE_API AKRESULT SetOfflineRenderingFrameTime(AkReal32 in_fFrameTimeInSeconds)
AKSOUNDENGINE_API AKRESULT ClearBanks()
AKSOUNDENGINE_API AKRESULT UnregisterAudioDeviceStatusCallback()
Unregisters the callback for the Audio Device status changes, registered by RegisterAudioDeviceStatus...
AkUInt32 uMaxNumPaths
Maximum number of paths for positioning.
AKSOUNDENGINE_API AKRESULT SetMultipleObstructionAndOcclusion(AkGameObjectID in_EmitterID, AkGameObjectID in_uListenerID, AkObstructionOcclusionValues *in_fObstructionOcclusionValues, AkUInt32 in_uNumOcclusionObstruction)
AkUInt32 samplePosition
Position of the source (in samples) associated with that playing item.
AKSOUNDENGINE_API AKRESULT SetOutputVolume(AkOutputDeviceID in_idOutput, AkReal32 in_fVolume)
AKSOUNDENGINE_API AKRESULT GetPanningRule(AkPanningRule &out_ePanningRule, AkOutputDeviceID in_idOutput=0)
void(* AkOutputDeviceMeteringCallbackFunc)(AkOutputDeviceMeteringCallbackInfo *in_pCallbackInfo)
AkFloorPlane eFloorPlane
Floor plane axis for 3D game object viewing.
AKSOUNDENGINE_API AKRESULT SetBankLoadIOSettings(AkReal32 in_fThroughput, AkPriority in_priority)
AKSOUNDENGINE_API AKRESULT AddOutputCaptureMarker(const char *in_MarkerText)
AKSOUNDENGINE_API AKRESULT RegisterAudioDeviceStatusCallback(AK::AkDeviceStatusCallbackFunc in_pCallback)
AKSOUNDENGINE_API AKRESULT PostTrigger(AkTriggerID in_triggerID, AkGameObjectID in_gameObjectID)
AKSOUNDENGINE_API AKRESULT PinEventInStreamCache(AkUniqueID in_eventID, AkPriority in_uActivePriority, AkPriority in_uInactivePriority)
AKSOUNDENGINE_API void CancelEventCallbackGameObject(AkGameObjectID in_gameObjectID)
AKSOUNDENGINE_API AKRESULT ReplaceOutput(const AkOutputSettings &in_Settings, AkOutputDeviceID in_outputDeviceId, AkOutputDeviceID *out_pOutputDeviceId=NULL)
AKSOUNDENGINE_API void GetDefaultInitSettings(AkInitSettings &out_settings)
AKSOUNDENGINE_API AKRESULT RegisterPlugin(AkPluginType in_eType, AkUInt32 in_ulCompanyID, AkUInt32 in_ulPluginID, AkCreatePluginCallback in_pCreateFunc, AkCreateParamCallback in_pCreateParamFunc, AkGetDeviceListCallback in_pGetDeviceList=NULL)
AKSOUNDENGINE_API AKRESULT SetActorMixerEffect(AkUniqueID in_audioNodeID, AkUInt32 in_uFXIndex, AkUniqueID in_shareSetID)
AKSOUNDENGINE_API AKRESULT RegisterCodec(AkUInt32 in_ulCompanyID, AkUInt32 in_ulCodecID, AkCreateFileSourceCallback in_pFileCreateFunc, AkCreateBankSourceCallback in_pBankCreateFunc)
bool bUseLEngineThread
Use a separate thread for processing audio. If set to false, audio processing will occur in RenderAud...
AKSOUNDENGINE_API AKRESULT StopProfilerCapture()
AKSOUNDENGINE_API AKRESULT SetObjectObstructionAndOcclusion(AkGameObjectID in_EmitterID, AkGameObjectID in_ListenerID, AkReal32 in_fObstructionLevel, AkReal32 in_fOcclusionLevel)
AKSOUNDENGINE_API AkOutputDeviceID GetOutputID(AkUniqueID in_idShareset, AkUInt32 in_idDevice)
AkOutputSettings(const char *in_szDeviceShareSet, AkUniqueID in_idDevice=AK_INVALID_UNIQUE_ID, AkChannelConfig in_channelConfig=AkChannelConfig(), AkPanningRule in_ePanning=AkPanningRule_Speakers)
AKSOUNDENGINE_API AKRESULT LoadBank(const char *in_pszString, AkBankID &out_bankID)
AkReal32 * VectorPtr
Volume vector. Access each element with the standard bracket [] operator.
AKSOUNDENGINE_API AKRESULT DecodeBank(const void *in_pInMemoryBankPtr, AkUInt32 in_uInMemoryBankSize, AkMemPoolId in_uPoolForDecodedBank, void *&out_pDecodedBankPtr, AkUInt32 &out_uDecodedBankSize)
AkUInt32 AkUniqueID
Unique 32-bit ID.
AKSOUNDENGINE_API AKRESULT StartProfilerCapture(const AkOSChar *in_CaptureFileName)
Configured audio settings.
AkUInt32 uContinuousPlaybackLookAhead
Default is 1 audio quantum, also known as an audio frame. Its size is equal to AkInitSettings::uNumSa...
AKSOUNDENGINE_API AKRESULT RemoveOutput(AkOutputDeviceID in_idOutput)
bool bEnableGameSyncPreparation
Sets to true to enable AK::SoundEngine::PrepareGameSync usage.
ParallelForFunc fcnParallelFor
ParallelForFunc callback.
AKSOUNDENGINE_API AkUInt32 GetBufferTick()
AKSOUNDENGINE_API AKRESULT RegisterResourceMonitorCallback(AkResourceMonitorCallbackFunc in_pCallback)
AkOSChar * szPluginDLLPath
When using DLLs for plugins, specify their path. Leave NULL if DLLs are in the same folder as the gam...
AkUInt32 uIdxThread
The current thread index [0, AkTaskSchedulerDesc::uNumSchedulerWorkerThreads[.
AKSOUNDENGINE_API AKRESULT GetOutputDeviceConfiguration(AkOutputDeviceID in_idOutput, AkChannelConfig &io_channelConfig, Ak3DAudioSinkCapabilities &io_capabilities)
AKSOUNDENGINE_API AKRESULT GetDeviceSpatialAudioSupport(AkUInt32 in_idDevice)
AKSOUNDENGINE_API AKRESULT AddListener(AkGameObjectID in_emitterGameObj, AkGameObjectID in_listenerGameObj)
AkAssertHook pfnAssertHook
External assertion handling function (optional)
Necessary settings for setting externally-loaded sources.
AKSOUNDENGINE_API AKRESULT SeekOnEvent(AkUniqueID in_eventID, AkGameObjectID in_gameObjectID, AkTimeMs in_iPosition, bool in_bSeekToNearestMarker=false, AkPlayingID in_PlayingID=AK_INVALID_PLAYING_ID)
AkUInt32 uMaxHardwareTimeoutMs
Amount of time to wait for HW devices to trigger an audio interrupt. If there is no interrupt after t...
AKSOUNDENGINE_API AKRESULT SetScalingFactor(AkGameObjectID in_GameObjectID, AkReal32 in_fAttenuationScalingFactor)
AKSOUNDENGINE_API AKRESULT RegisterCaptureCallback(AkCaptureCallbackFunc in_pfnCallback, AkOutputDeviceID in_idOutput=AK_INVALID_OUTPUT_DEVICE_ID, void *in_pCookie=NULL)
@ Preparation_Load
PrepareEvent() will load required information to play the specified event.
AKSOUNDENGINE_API AKRESULT UnregisterGameObj(AkGameObjectID in_gameObjectID)
AkMeteringFlags
Metering flags. Used for specifying bus metering, through AK::SoundEngine::RegisterBusVolumeCallback(...
AKSOUNDENGINE_API AKRESULT RenderAudio(bool in_bAllowSyncRender=true)
void(* AkCaptureCallbackFunc)(AkAudioBuffer &in_CaptureBuffer, AkOutputDeviceID in_idOutput, void *in_pCookie)
Positioning information for a sound, with specified subset of its channels.
AKSOUNDENGINE_API AKRESULT SetListenerSpatialization(AkGameObjectID in_uListenerID, bool in_bSpatialized, AkChannelConfig in_channelConfig, AK::SpeakerVolumes::VectorPtr in_pVolumeOffsets=NULL)
AKSOUNDENGINE_API AKRESULT SetGameObjectAuxSendValues(AkGameObjectID in_gameObjectID, AkAuxSendValue *in_aAuxSendValues, AkUInt32 in_uNumSendValues)
AkInt8 AkPriority
Priority.
AkGroupType
Game sync group type.
AKSOUNDENGINE_API AkPlayingID PostMIDIOnEvent(AkUniqueID in_eventID, AkGameObjectID in_gameObjectID, AkMIDIPost *in_pPosts, AkUInt16 in_uNumPosts, bool in_bAbsoluteOffsets=false, AkUInt32 in_uFlags=0, AkCallbackFunc in_pfnCallback=NULL, void *in_pCookie=NULL, AkPlayingID in_playingID=AK_INVALID_PLAYING_ID)
void(* AkCallbackFunc)(AkCallbackType in_eType, AkCallbackInfo *in_pCallbackInfo)
AKRESULT(* AkBackgroundMusicChangeCallbackFunc)(bool in_bBackgroundMusicMuted, void *in_pCookie)
AKSOUNDENGINE_API AKRESULT UnregisterCaptureCallback(AkCaptureCallbackFunc in_pfnCallback, AkOutputDeviceID in_idOutput=AK_INVALID_OUTPUT_DEVICE_ID, void *in_pCookie=NULL)
AKSOUNDENGINE_API AkChannelConfig GetSpeakerConfiguration(AkOutputDeviceID in_idOutput=0)
AKSOUNDENGINE_API AKRESULT GetAudioSettings(AkAudioSettings &out_audioSettings)
AkUInt32 uMediaSize
Size, in bytes, of the data to be set for the source.
AkReal32 fGameUnitsToMeters
AKSOUNDENGINE_API AKRESULT RegisterBusMeteringCallback(AkUniqueID in_busID, AkBusMeteringCallbackFunc in_pfnCallback, AkMeteringFlags in_eMeteringFlags, void *in_pCookie=NULL)
static const AkUInt32 AK_INVALID_OUTPUT_DEVICE_ID
Invalid Device ID.
AkCurveInterpolation
Curve interpolation types.
AKSOUNDENGINE_API void SetRandomSeed(AkUInt32 in_uSeed)
#define AK_CALLBACK(_type, _name)
void(* AkBusCallbackFunc)(AkSpeakerVolumeMatrixCallbackInfo *in_pCallbackInfo)
AKSOUNDENGINE_API void GetDefaultPlatformInitSettings(AkPlatformInitSettings &out_platformSettings)
AKSOUNDENGINE_API AKRESULT TryUnsetMedia(AkSourceSettings *in_pSourceSettings, AkUInt32 in_uNumSourceSettings, AKRESULT *out_pUnsetResults)
AKSOUNDENGINE_API AKRESULT Suspend(bool in_bRenderAnyway=false)
AKSOUNDENGINE_API AKRESULT GetSourcePlayPosition(AkPlayingID in_PlayingID, AkTimeMs *out_puPosition, bool in_bExtrapolate=true)
AKSOUNDENGINE_API AKRESULT SetListeners(AkGameObjectID in_emitterGameObj, const AkGameObjectID *in_pListenerGameObjs, AkUInt32 in_uNumListeners)
static const AkUniqueID AK_INVALID_UNIQUE_ID
Invalid unique 32-bit ID.
AKSOUNDENGINE_API AKRESULT SendPluginCustomGameData(AkUniqueID in_busID, AkGameObjectID in_busObjectID, AkPluginType in_eType, AkUInt32 in_uCompanyID, AkUInt32 in_uPluginID, const void *in_pData, AkUInt32 in_uSizeInBytes)
AkPanningRule
Headphone / speakers panning rules.
AkUInt32 AkStateID
State ID.
AKSOUNDENGINE_API AKRESULT SetBusEffect(AkUniqueID in_audioNodeID, AkUInt32 in_uFXIndex, AkUniqueID in_shareSetID)
void(* AkBankCallbackFunc)(AkUInt32 in_bankID, const void *in_pInMemoryBankPtr, AKRESULT in_eLoadResult, void *in_pCookie)
AKSOUNDENGINE_API void MuteBackgroundMusic(bool in_bMute)
@ AkCurveInterpolation_Linear
Linear (Default)
AKSOUNDENGINE_API AKRESULT SetContainerHistory(AK::IReadBytes *in_pBytes)
void(* AkAssertHook)(const char *in_pszExpression, const char *in_pszFileName, int in_lineNumber)
AKSOUNDENGINE_API AKRESULT SetMixer(AkUniqueID in_audioNodeID, AkUniqueID in_shareSetID)
static const AkPlayingID AK_INVALID_PLAYING_ID
Invalid playing ID.
AKSOUNDENGINE_API AkUInt32 GetIDFromString(const char *in_pszString)
AKSOUNDENGINE_API AKRESULT SetOfflineRendering(bool in_bEnableOfflineRendering)
AKSOUNDENGINE_API AKRESULT LoadBankMemoryCopy(const void *in_pInMemoryBankPtr, AkUInt32 in_uInMemoryBankSize, AkBankID &out_bankID)
AKSOUNDENGINE_API AKRESULT SetPanningRule(AkPanningRule in_ePanningRule, AkOutputDeviceID in_idOutput=0)
AKSOUNDENGINE_API AKRESULT AddDefaultListener(AkGameObjectID in_listenerGameObj)
AkUInt32 AkSwitchStateID
Switch ID.
@ AkActionOnEventType_Resume
Resume.
AKSOUNDENGINE_API AKRESULT SetGameObjectOutputBusVolume(AkGameObjectID in_emitterObjID, AkGameObjectID in_listenerObjID, AkReal32 in_fControlValue)
AKSOUNDENGINE_API AKRESULT AddOutput(const AkOutputSettings &in_Settings, AkOutputDeviceID *out_pDeviceID=NULL, const AkGameObjectID *in_pListenerIDs=NULL, AkUInt32 in_uNumListeners=0)
AkUInt32 uNumSchedulerWorkerThreads
The number of worker threads in the schduler.
AKSOUNDENGINE_API AKRESULT StopOutputCapture()
AK::IAkPluginParam *(* AkCreateParamCallback)(AK::IAkPluginMemAlloc *in_pAllocator)
Registered plugin parameter node creation function prototype.
AKSOUNDENGINE_API AKRESULT ResetListenersToDefault(AkGameObjectID in_emitterGameObj)
@ AkActionOnEventType_Break
Break.
AKSOUNDENGINE_API AKRESULT SetBusDevice(AkUniqueID in_idBus, AkUniqueID in_idNewDevice)
AKSOUNDENGINE_API AKRESULT ExecuteActionOnEvent(AkUniqueID in_eventID, AkActionOnEventType in_ActionType, AkGameObjectID in_gameObjectID=AK_INVALID_GAME_OBJECT, AkTimeMs in_uTransitionDuration=0, AkCurveInterpolation in_eFadeCurve=AkCurveInterpolation_Linear, AkPlayingID in_PlayingID=AK_INVALID_PLAYING_ID)
void(* AkParallelForFunc)(void *in_pData, AkUInt32 in_uIdxBegin, AkUInt32 in_uIdxEnd, AkTaskContext in_ctx, void *in_pUserData)
Task function: process the [in_uIdxBegin,in_uIdxEnd[ range of items in the in_pData array.
AKSOUNDENGINE_API AKRESULT SetMedia(AkSourceSettings *in_pSourceSettings, AkUInt32 in_uNumSourceSettings)
AKSOUNDENGINE_API void CancelBankCallbackCookie(void *in_pCookie)
static const AkGameObjectID AK_INVALID_GAME_OBJECT
Invalid game object (may also mean all game objects)
AkUniqueID audioDeviceShareset
AKSOUNDENGINE_API AKRESULT WakeupFromSuspend()
AkTimeMs msTime
Position of the source (in ms) associated with that playing item.
@ AkActionOnEventType_Stop
Stop.
void * BGMCallbackCookie
Application-defined user data for the audio source change event callback function.
AkUniqueID sourceID
Source ID (available in the SoundBank content files)
Description of the client task scheduler.
AkChannelConfig channelConfig
bool bUseSoundBankMgrThread
Use a separate thread for loading sound banks. Allows asynchronous operations.
void(* AkDeviceStatusCallbackFunc)(AK::IAkGlobalPluginContext *in_pContext, AkUniqueID in_idAudioDeviceShareset, AkUInt32 in_idDeviceID, AkAudioDeviceEvent in_idEvent, AKRESULT in_AkResult)
AkUniqueID mediaID
Media ID of playing item. (corresponds to 'ID' attribute of 'File' element in SoundBank metadata file...
AkUInt64 AkOutputDeviceID
Audio Output device ID.
bool bDebugOutOfRangeCheckEnabled
Debug setting: Enable checks for out-of-range (and NAN) floats in the processing code....
AkUniqueID audioNodeID
Audio Node ID of playing item.
AKSOUNDENGINE_API AKRESULT UnpinEventInStreamCache(AkUniqueID in_eventID)
AKSOUNDENGINE_API AKRESULT SetRTPCValueByPlayingID(AkRtpcID in_rtpcID, AkRtpcValue in_value, AkPlayingID in_playingID, AkTimeMs in_uValueChangeDuration=0, AkCurveInterpolation in_eFadeCurve=AkCurveInterpolation_Linear, bool in_bBypassInternalValueInterpolation=false)
AkReal32 AkRtpcValue
Real time parameter control value.
AKSOUNDENGINE_API AKRESULT UnregisterResourceMonitorCallback(AkResourceMonitorCallbackFunc in_pCallback)
void(* ParallelForFunc)(void *in_pData, AkUInt32 in_uIdxBegin, AkUInt32 in_uIdxEnd, AkUInt32 in_uTileSize, AkParallelForFunc in_func, void *in_pUserData, const char *in_szDebugName)
Debug name for the workload.
AKSOUNDENGINE_API AKRESULT UnregisterGlobalCallback(AkGlobalCallbackFunc in_pCallback, AkUInt32 in_eLocation=AkGlobalCallbackLocation_BeginRender)
AkUInt32 AkSwitchGroupID
Switch group ID.
AKSOUNDENGINE_API AKRESULT SetMultiplePositions(AkGameObjectID in_GameObjectID, const AkSoundPosition *in_pPositions, AkUInt16 in_NumPositions, MultiPositionType in_eMultiPositionType=MultiPositionType_MultiDirections)
AKSOUNDENGINE_API AKRESULT ClearPreparedEvents()
Return values for GetSourcePlayPositions.
AKSOUNDENGINE_API AKRESULT SetVolumeThreshold(AkReal32 in_fVolumeThresholdDB)
AKSOUNDENGINE_API AkPlayingID PostEvent(AkUniqueID in_eventID, AkGameObjectID in_gameObjectID, AkUInt32 in_uFlags=0, AkCallbackFunc in_pfnCallback=NULL, void *in_pCookie=NULL, AkUInt32 in_cExternals=0, AkExternalSourceInfo *in_pExternalSources=NULL, AkPlayingID in_PlayingID=AK_INVALID_PLAYING_ID)
AKSOUNDENGINE_API void Term()
AkUInt32 uCommandQueueSize
Size of the command queue, in bytes.
AKSOUNDENGINE_API AKRESULT GetDeviceList(AkUInt32 in_ulCompanyID, AkUInt32 in_ulPluginID, AkUInt32 &io_maxNumDevices, AkDeviceDescription *out_deviceDescriptions)
AKSOUNDENGINE_API void StopAll(AkGameObjectID in_gameObjectID=AK_INVALID_GAME_OBJECT)
@ AkPluginTypeNone
Unknown/invalid plug-in type.
AK::IAkPlugin *(* AkCreatePluginCallback)(AK::IAkPluginMemAlloc *in_pAllocator)
Registered plugin creation function prototype.
IAkSoftwareCodec *(* AkCreateBankSourceCallback)(void *in_pCtx)
Registered bank source node creation function prototype.
AKSOUNDENGINE_API AkUInt64 GetSampleTick()
AKSOUNDENGINE_API AK::IAkGlobalPluginContext * GetGlobalPluginContext()
AKSOUNDENGINE_API AKRESULT SetPosition(AkGameObjectID in_GameObjectID, const AkSoundPosition &in_Position)
AKSOUNDENGINE_API AKRESULT UnsetMedia(AkSourceSettings *in_pSourceSettings, AkUInt32 in_uNumSourceSettings)
@ AkActionOnEventType_ReleaseEnvelope
Release envelope.
AkFloorPlane
Possible values for the floor plane axis used in the Game Object 3D Viewer in Wwise.
AKSOUNDENGINE_API AKRESULT SetBusConfig(AkUniqueID in_audioNodeID, AkChannelConfig in_channelConfig)
AkUInt32 AkPlayingID
Playing ID.
AKSOUNDENGINE_API bool GetBackgroundMusicMute()
@ AkActionOnEventType_Pause
Pause.
The execution context for a task.
AKSOUNDENGINE_API AKRESULT PrepareBank(AK::SoundEngine::PreparationType in_PreparationType, const char *in_pszString, AK::SoundEngine::AkBankContent in_uFlags=AkBankContent_All)
AKSOUNDENGINE_API void StopPlayingID(AkPlayingID in_playingID, AkTimeMs in_uTransitionDuration=0, AkCurveInterpolation in_eFadeCurve=AkCurveInterpolation_Linear)
@ AkGlobalCallbackLocation_BeginRender
Start of frame rendering, after having processed game messages.
AKSOUNDENGINE_API AKRESULT UnloadBank(const char *in_pszString, const void *in_pInMemoryBankPtr)
AkUInt32 uBankReadBufferSize
The number of bytes read by the BankReader when new data needs to be loaded from disk during serializ...
AKSOUNDENGINE_API AKRESULT RemoveListener(AkGameObjectID in_emitterGameObj, AkGameObjectID in_listenerGameObj)
AKSOUNDENGINE_API AKRESULT GetBufferStatusForPinnedEvent(AkUniqueID in_eventID, AkReal32 &out_fPercentBuffered, bool &out_bCachePinnedMemoryFull)
AkUInt32 AkTriggerID
Trigger ID.
AKSOUNDENGINE_API AKRESULT GetSpeakerAngles(AkReal32 *io_pfSpeakerAngles, AkUInt32 &io_uNumAngles, AkReal32 &out_fHeightAngle, AkOutputDeviceID in_idOutput=0)
AKSOUNDENGINE_API void CancelEventCallback(AkPlayingID in_playingID)
Besoin d'aide ?
Des questions ? Des problèmes ? Besoin de plus d'informations ? Contactez-nous, nous pouvons vous aider !
Visitez notre page d'Aide
Décrivez-nous de votre projet. Nous sommes là pour vous aider.
Enregistrez votre projet et nous vous aiderons à démarrer sans aucune obligation !
Partir du bon pied avec Wwise