Table of Contents

AKRESULT __cdecl AK::SoundEngine::LoadBank ( AkBankID  in_bankID,
AkMemPoolId  in_memPoolId  

Loads a bank synchronously (by ID).

Note: Requires that the "Use SoundBank names" option be unchecked in the Wwise Project Settings.

The bank ID is passed to the Stream Manager. Refer to General Information for a discussion on using strings and IDs. You can specify a custom pool for storage of media, the engine will create a new pool if AK_DEFAULT_POOL_ID is passed. A bank load request will be posted, and consumed by the Bank Manager thread. The function returns when the request has been completely processed.

  • AK_Success: Load or unload successful.
  • AK_InsufficientMemory: Insufficient memory to store bank data.
  • AK_BankReadError: I/O error.
  • AK_WrongBankVersion: Invalid bank version: make sure the version of Wwise that you used to generate the SoundBanks matches that of the SDK you are currently using.
  • AK_InvalidFile: File specified could not be opened.
  • AK_InvalidParameter: Invalid parameter, invalid memory alignment.
  • AK_Fail: Load or unload failed for any other reason. (Most likely small allocation failure)
  • The initialization bank must be loaded first.
  • All SoundBanks subsequently loaded must come from the same Wwise project as the initialization bank. If you need to load SoundBanks from a different project, you must first unload ALL banks, including the initialization bank, then load the initialization bank from the other project, and finally load banks from that project.
  • Codecs and plug-ins must be registered before loading banks that use them.
  • Loading a bank referencing an unregistered plug-in or codec will result in a load bank success, but the plug-ins will not be used. More specifically, playing a sound that uses an unregistered effect plug-in will result in audio playback without applying the said effect. If an unregistered source plug-in is used by an event's audio objects, posting the event will fail.
  • Requesting to load a bank in a different memory pool than where the bank was previously loaded must be done only after receiving confirmation by the callback that the bank was completely unloaded or by using synchronous versions of the UnloadBank function.
See also:
in_bankID  Bank ID of the bank to load
in_memPoolId  Memory pool ID (the pool is created if AK_DEFAULT_POOL_ID is passed)