Project

General

Profile

Emulator Issues #11297

Dolphin hangs if WASAPI loses Exclusive Mode

Added by JMC4789 almost 3 years ago. Updated 11 months ago.

Status:
New
Priority:
Normal
Assignee:
-
% Done:

0%

Operating system:
N/A
Issue type:
Bug
Milestone:
Regression:
No
Relates to usability:
No
Relates to performance:
No
Easy:
No
Relates to maintainability:
No
Regression start:
Fixed in:

Description

If Dolphin is unable to attain Exclusive Mode on an audio device or loses it while a game is running, the emulator deadlocks.

19:13:511 c:\buildbot\release-win-x64\build\source\core\audiocommon\mixer.cpp:21 I[AI]: Mixer is initialized
19:13:514 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:264 I[Audio]: Using audio endpoint 'DENON-AVR (NVIDIA High Definition Audio)'
19:13:567 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:283 I[Audio]: Audio period set to 130000
19:13:596 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:387 I[Audio]: WASAPI: Successfully initialized!
19:13:777 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:264 I[Audio]: Using audio endpoint 'DENON-AVR (NVIDIA High Definition Audio)'
19:13:778 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:283 I[Audio]: Audio period set to 130000
19:13:822 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:387 I[Audio]: WASAPI: Successfully initialized!
19:14:042 c:\buildbot\release-win-x64\build\source\core\core\hw\dsp.cpp:363 I[AI]: Audio DMA configured: 12 blocks from 0x802fc980
20:09:564 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:264 I[Audio]: Using audio endpoint 'DENON-AVR (NVIDIA High Definition Audio)'
20:09:564 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:283 I[Audio]: Audio period set to 130000
20:09:607 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:387 I[Audio]: WASAPI: Successfully initialized!
20:10:709 c:\buildbot\release-win-x64\build\source\core\audiocommon\audiocommon.cpp:73 I[Audio]: Shutting down sound stream
20:10:709 c:\buildbot\release-win-x64\build\source\core\audiocommon\audiocommon.cpp:81 I[Audio]: Done shutting down sound stream
21:00:508 c:\buildbot\release-win-x64\build\source\core\audiocommon\mixer.cpp:21 I[AI]: Mixer is initialized
21:00:510 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:264 I[Audio]: Using audio endpoint 'DENON-AVR (NVIDIA High Definition Audio)'
21:00:511 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:283 I[Audio]: Audio period set to 130000
21:00:513 c:\buildbot\release-win-x64\build\source\core\audiocommon\wasapistream.cpp:77 E[Audio]: WASAPI: Failed to initialize IAudioClient: Unknown error 0x8889000E
21:00:513 c:\buildbot\release-win-x64\build\source\core\audiocommon\audiocommon.cpp:170 E[Audio]: Error starting stream.


Related issues

Has duplicate Emulator - Emulator Issues #12150: Wasapi needs to either fallback to another audio backend or at least a functional error when the audio device isn't compatibleDuplicate

History

#1 Updated by filoppi 11 months ago

Duplicate of: https://bugs.dolphin-emu.org/issues/12150
To be closed.

#2 Updated by JosJuice 11 months ago

I'll close the other one, actually. We usually close the newer of the two, unless it contains a better description of the issue.

#3 Updated by JosJuice 11 months ago

  • Has duplicate Emulator Issues #12150: Wasapi needs to either fallback to another audio backend or at least a functional error when the audio device isn't compatible added

#4 Updated by filoppi 11 months ago

The newer one is better, and it's got my explanations.

#5 Updated by filoppi 11 months ago

I have fixed the hangs if WASAPI failed to start under any circumstance now. I will just be silent it if fails.
Falling back the default audio backend does not seem to make sense, especially because even if WASAPI fails the first time, the user will receive an on screen warning, and changing the default device in Windows before pausing/unpausing the emulation can make WASAPI work again without even restarting the game.

Also available in: Atom PDF