Wwise SDK 2022.1.7
The following sections list and describe the changes to Wwise between version 2021.1.10 and version 2022.1.
Platform-specific information can be found here:
For earlier versions, please refer to Previous Release Notes.
AK::SpatialAudio::SetDistanceProbeAPI. For additional flexibility in third-person perspective games, it is now possible to have sounds attenuate based on the distance to a separate Game Object, while maintaining panning and spatialization relative to the Listener Game Object.
AK::Monitor::AddTranslatorfunction, and AkXMLErrorMessageTranslator and AkWAAPIErrorMessageTranslator classes for more information. Large projects could experience a lag when errors occur, in which case either XML and/or WAAPI translators can be disabled. Both translators have timeout parameters to limit the amount of time spent searching for the identifiers.
Auto-defined SoundBanks are enabled via the SoundBank Settings. Refer to SoundBank Settings for more details.
AK::SpatialAudio::SetImageSourcewith the Early Reflections Auxiliary Bus assigned in the Wwise Authoring Tool, by passing AK_INVALID_AUX_ID. The
AK::SpatialAudio::SetImageSourceAPI no longer accepts a room argument. Filtering image sources so that only those with a room that matches the emitter and listener's room limits the usability of the feature. The user should add and remove image sources from game-side logic to provide the desired behavior.
AkSpatialAudioInitSettings::uDiffractionOnReflectionsOrder, which replaces bEnableDiffractionOnReflections. Previously, if set to true, only one diffraction on reflection paths was computed. Now, the number of diffraction points is customizable.
AkInitSettings::fnProfilerPostMarkerindicating when "Voice Starvation" events on the device have been detected by the sound engine.
AK::IAkMeteringinterface to a plain struct
CAkFileHelpers::CloseFilenow accepts AkFileDesc as an input parameter on all platforms, not an AkFileHandle.
AK::ISourceControl::PluginInfoto support more operations without a user interface. The new commands are used when updating output files (generated SoundBank and copied media files) under source control.
IAkMixerInputContext::GetInputParam()to allow the use of metadata plug-ins on Wwise objects routed to a mixer plug-in.
AkMemSettings::bUseDeviceMemAlwaysinitialization parameter to reduce memory usage on certain platforms by instantiating only a single heap for both device and non-device memory, instead of separate heaps for the two.
AK::Wwise::SourceControlContainers::IAkListnow manages a single AkPos instance at a time. This means that methods returning an AkPos instance now invalidate any previously obtained AkPos, and such methods must no longer be called while iterating the list. Refer to the in-code SDK documentation for more details.
AkCommSettings::uNotificationinitialization parameter: there is now only one dynamic port for communication with Wwise Authoring.
ak.wwise.unknown_class_id. More details are now provided in errors ak.wwise.invalid_language, ak.wwise.unknown_language, ak.wwise.unknown_platform, and ak.wwise.invalid_type.
AK::SpatialAudio::Stringfrom the Spatial Audio API and replaced it with standard c-strings to prevent memory allocation inside the Sound Engine from external code. Furthermore, the strings have been removed from the AkRoomParams and AkPortalParams structs in favor of passing them directly into their respective functions. This eliminates the need for constructor, copy, and destructor methods in the parameter structs and simplifies client code.
AkInitSettings::uNumSamplesPerFrameto 512 on all platforms. This increases out-of-the-box CPU usage in Wwise slightly but significantly reduces the total audio latency in the sound engine. It is still recommended to tune "Samples Per Frame" and "Number of Refills In Voice" to balance your game's total audio latency against the available computing resources.
AK::SpatialAudio::SetEarlyReflectionsVolumenow applies to image sources set using
AK::SpatialAudio::SetImageSourceas well as reflections calculated from geometry.
AkPipelineBufferBase::GetCachedBufferby keeping buffers allocated for more than one frame at a time.
AkSpatialAudioInitSettings::uMaxReflectionOrderis set to 0.
AK::Monitorthread when the Wwise Profiler is connected and some Profiler Settings, such as Voice Inspector Data, are active. This should greatly improve the accuracy of the CPU measurements reported in Wwise.
AK::Wwise::Plugin::CustomData::InitFromWorkunit()function not called when Work Unit's PluginData section is empty.
AK::SoundEngine::SetOutputDeviceEffectproduces a "Device not found error" when specifying the Audio Device ShareSet but using the default hardware ID (0), even when there is an appropriate device.
CAkListener::MultiDirectionGainCorrectionForObjectsduring low-memory scenarios.
AK::SoundEngine::ReplaceOutputwith an Audio Device ShareSet of 0 can cause audio loss if the old output Audio Device is connected to multiple audio busses.
AkInitSettings::bDebugOutOfRangeCheckEnabledis enabled creates false errors indicating invalid audio data.