Loads a bank asynchronously (from in-memory data, out-of-place, user bank only).
NOTE: Banks loaded from in-memory with out-of-place data must be unloaded using the standard UnloadBank function (with no memory pointer). Make sure you are using the correct UnloadBank(...) overload
Use LoadBankMemoryCopy when you want to manage I/O on your side. Load the bank file in a buffer and pass its address to the sound engine, the media section of the bank will be copied into newly allocated memory. In-memory loading is out-of-place: the buffer can be released after the callback function is called. The advantage of using this over the in-place version is that there is no duplication of bank structures. A bank load request will be posted to the Bank Manager consumer thread. The function returns immediately.
- 返回
AK_Success
if the scheduling was successful,
AK_InvalidBankType
if the bank is not a user-defined bank.
AK_DataAlignmentError
if the data pointer is not aligned properly Use a callback to be notified when completed, and get the status of the request. The bank ID, which is obtained by hashing the bank name (see GetIDFromString()). You may use this ID with UnloadBank().
- 参见
-
- 参数
-
in_pInMemoryBankPtr | Pointer to the in-memory bank to load (pointer is not stored in sound engine, memory can be released after callback) |
in_uInMemoryBankSize | Size of the in-memory bank to load |
in_pfnBankCallback | Callback function |
in_pCookie | Callback cookie |
out_bankID | Returned bank ID |