Default output: ALSA analog stereo (alsa_output.pci-0000_07_00.6.analog-stereo)
Symptoms
Years 1–4 works correctly, but Years 5–7 consistently crashes during startup, immediately after the Voldemort loading animation and before reaching the main menu.
The crash is directly dependent on the audio sample rate.
PipeWire sample rate | Result
-- | --
44,100 Hz | Works
48,000 Hz | Works
96,000 Hz | Crashes
192,000 Hz | Crashes
The issue was also observed on another Linux computer using a different Steam account, without existing game saves.
Connecting Bluetooth headphones (48 kHz) allows the game to start normally. The same result can be reproduced without changing audio devices, simply by forcing the PipeWire sample rate.
At 96/192 kHz, the reverb effect presumably rejects the format during LockForProcess(), causing SetEffectChain() to fail.
The game subsequently calls DisableEffect(0) on the same voice even though the effect chain was not installed.
FAudio then dereferences the NULL effect descriptor array.
The precise return value of SetEffectChain() has not yet been captured, so this explanation remains a strongly supported hypothesis rather than a fully verified call sequence.
Expected behavior
An unsupported effect format should not cause an access violation in FAudioVoice_DisableEffect().
Ideally, the game should initialize correctly regardless of the system output sample rate, using a supported processing rate for effects such as reverb.
At minimum, FAudio should handle calls to DisableEffect() without an installed effect chain safely.
Workaround
Force PipeWire to 48 kHz before launching the game:
pw-metadata -n settings 0 clock.force-rate 48000
Restore automatic rate selection afterward:
pw-metadata -n settings 0 clock.force-rate 0
No game files, save data, or Proton installation changes are necessary.
LEGO Harry Potter Collection (2950340) – Years 5–7 crashes in FAudioVoice_DisableEffect at sample rates above 48 kHz
System information
Game: LEGO Harry Potter Collection (Steam AppID 2950340)
Affected executable:
harry2.exe(Years 5–7)Proton:
proton-11.0-2e-x86_64(build 1791559474)OS: Debian 13
Kernel:
7.2.6+deb13-amd64Audio: PipeWire 1.6.9, PulseAudio compatibility layer
Default output: ALSA analog stereo (
alsa_output.pci-0000_07_00.6.analog-stereo)Symptoms
Years 1–4 works correctly, but Years 5–7 consistently crashes during startup, immediately after the Voldemort loading animation and before reaching the main menu.
The crash is directly dependent on the audio sample rate.
PipeWire sample rate | Result -- | -- 44,100 Hz | Works 48,000 Hz | Works 96,000 Hz | Crashes 192,000 Hz | CrashesThe issue was also observed on another Linux computer using a different Steam account, without existing game saves.
Connecting Bluetooth headphones (48 kHz) allows the game to start normally. The same result can be reproduced without changing audio devices, simply by forcing the PipeWire sample rate.
Steps to reproduce
Select an audio output supporting 96/192 kHz.
Set the PipeWire sample rate:
Verify the rate using
pactl list short sinks.Launch Years 5–7 using:
The game crashes before displaying its main menu.
Change only the sample rate:
Relaunch the game. It now works normally.
The same failure occurs at 96 kHz. Both 44.1 and 48 kHz work.
Crash analysis
The exception occurs inside Proton's built-in
XAudio2_8.dll, specifically in the FAudio implementation.Disassembling the exact DLL from Proton 11.0-2 identifies the function:
At the time of the exception:
This corresponds to:
The effect descriptor array is NULL when
FAudioVoice_DisableEffect()attempts to modify effect index 0.XAudio2 trace
The trace shows the following sequence at 192 kHz:
Both
SetEffectChain()andDisableEffect()operate on the same submix voice.Suspected root cause
The game creates a reverb effect and attaches it to a submix running at the device's sample rate.
The XAudio2 Reverb effect supports only 20–48 kHz, according to Microsoft's documentation:
https://learn.microsoft.com/en-us/windows/win32/api/xaudio2fx/nf-xaudio2fx-xaudio2createreverb
At 96/192 kHz, the reverb effect presumably rejects the format during
LockForProcess(), causingSetEffectChain()to fail.The game subsequently calls
DisableEffect(0)on the same voice even though the effect chain was not installed.FAudio then dereferences the NULL effect descriptor array.
The precise return value of
SetEffectChain()has not yet been captured, so this explanation remains a strongly supported hypothesis rather than a fully verified call sequence.Expected behavior
An unsupported effect format should not cause an access violation in
FAudioVoice_DisableEffect().Ideally, the game should initialize correctly regardless of the system output sample rate, using a supported processing rate for effects such as reverb.
At minimum, FAudio should handle calls to
DisableEffect()without an installed effect chain safely.Workaround
Force PipeWire to 48 kHz before launching the game:
Restore automatic rate selection afterward:
No game files, save data, or Proton installation changes are necessary.