Skip to content

[Unity+Wwise] Crash when playing spatialized vorbis-encoded sound #503

@boboshan

Description

@boboshan

System Information

  • Steam Audio version: 4.7.0
  • Unity version: 2022.3.50f1
  • Wwise version: 2024.1.9.8920
  • Operating System and version: Windows 11 Pro 25H2
  • CPU architecture: 13th Gen Intel(R) Core(TM) i7-13700KF (3.40 GHz)

Issue Description

I am experiencing a crash when playing a sound using the Steam Audio Spatializer effect in Wwise.

The crash occurs specifically in CAkEmitter::~CAkEmitter / CAkSpeakerPan::GetDecodingMatrixShape, indicating a potential race condition where the spatializer attempts to access decoding data while the object is being torn down.

Critical Finding: I have isolated the cause to the Wwise Conversion Settings codec:

Vorbis: Causes the crash consistently upon object destruction.
PCM: Does not crash.

It appears that the Vorbis decoder lifecycle conflicts with the Steam Audio plugin during the destruction phase, whereas PCM data handles the cleanup safely.

Steps To Reproduce

  1. In Wwise, apply the Steam Audio Spatializer plugin to a Sound Voice.
  2. Set the Conversion Settings for the audio source to Vorbis.
  3. In Unity, play this sound on a GameObject.

Observe the crash. (Switching the conversion settings to PCM prevents this crash).

Crash Dump

crash.dmp

ERROR: SymGetSymFromAddr64, GetLastError: 'Attempt to access invalid address.' (Address: 00007FFBB30921AC)

0x00007FFBB30921AC (SteamAudioWwise) (function-name not available)

  ERROR: SymGetSymFromAddr64, GetLastError: 'Attempt to access invalid address.' (Address: 00007FFBB3091FFC)

0x00007FFBB3091FFC (SteamAudioWwise) (function-name not available)

0x00007FFBB2042110 (AkUnitySoundEngine) AkTlsSetValue

0x00007FFBB1FB7C95 (AkUnitySoundEngine) AK::Replay::UnregisterNotificationCallback

0x00007FFBB1FB6B61 (AkUnitySoundEngine) AK::Replay::UnregisterNotificationCallback

0x00007FFBB1FDDD84 (AkUnitySoundEngine) CAkSpeakerPan::GetDecodingMatrixShape

0x00007FFBB1FDAA55 (AkUnitySoundEngine) CAkSpeakerPan::GetDecodingMatrixShape

0x00007FFBB1FFBB5D (AkUnitySoundEngine) CAkEmitter::~CAkEmitter

0x00007FFBB1F6B93F (AkUnitySoundEngine) AkMonitorData::RealSizeof

0x00007FFBB1F6CCC1 (AkUnitySoundEngine) AkMonitorData::RealSizeof

0x00007FFBB1F7A6A8 (AkUnitySoundEngine) CAkGameObject::~CAkGameObject

0x00007FFBB1F7B1CC (AkUnitySoundEngine) CAkGameObject::~CAkGameObject

0x00007FFBB1F6E60F (AkUnitySoundEngine) AkMonitorData::RealSizeof

0x00007FFBB1FBD8C7 (AkUnitySoundEngine) AK::Replay::UnregisterNotificationCallback

0x00007FFCC57A257D (KERNEL32) BaseThreadInitThunk

0x00007FFCC66CAA78 (ntdll) RtlUserThreadStart



========== END OF STACKTRACE ===========

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions