Wwise SDK 2023.1.5

◆ PinEventInStreamCache() [1/2]

AKSOUNDENGINE_API AKRESULT AK::SoundEngine::PinEventInStreamCache ( AkUniqueID  in_eventID,
AkPriority  in_uActivePriority,
AkPriority  in_uInactivePriority 

Starts streaming the first part of all streamed files referenced by an Event into a cache buffer. Caching streams are serviced when no other streams require the available bandwidth. The files will remain cached until UnpinEventInStreamCache is called, or a higher priority pinned file needs the space and the limit set by uMaxCachePinnedBytes is exceeded.

The amount of data from the start of the file that will be pinned to cache is determined by the prefetch size. The prefetch size is set via the authoring tool and stored in the sound banks.
It is possible to override the prefetch size stored in the sound bank via the low level IO. For more information see AK::StreamMgr::IAkLowLevelIOHook::BatchOpen() and AkFileSystemFlags.
If this function is called additional times with the same event, then the priority of the caching streams are updated. Note however that priority is passed down to the stream manager on a file-by-file basis, and if another event is pinned to cache that references the same file but with a different priority, then the first priority will be updated with the most recent value.
If the event references files that are chosen based on a State Group (via a switch container), all files in all states will be cached. Those in the current active state will get cached with active priority, while all other files will get cached with inactive priority.
in_uInactivePriority is only relevant for events that reference switch containers that are assigned to State Groups. This parameter is ignored for all other events, including events that only reference switch containers that are assigned to Switch Groups. Files that are chosen based on a Switch Group have a different switch value per game object, and are all effectively considered active by the pin-to-cache system.
  • AK_Success if command was queued
  • AK_IDNotFound if the Event ID is unknown (not loaded or typo in the ID)
See also
in_eventIDUnique ID of the event
in_uActivePriorityPriority of active stream caching I/O
in_uInactivePriorityPriority of inactive stream caching I/O

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