https://bugs.winehq.org/show_bug.cgi?id=40898
Bug ID: 40898 Summary: Mass Effect (Steam) has no sounds with native OpenAL (except for cutscenes) Product: Wine Version: 1.9.13 Hardware: x86 URL: http://store.steampowered.com/app/17460/ OS: Linux Status: NEW Severity: normal Priority: P2 Component: -unknown Assignee: wine-bugs@winehq.org Reporter: gyebro69@gmail.com CC: aeikum@codeweavers.com Distribution: ---
Created attachment 54990 --> https://bugs.winehq.org/attachment.cgi?id=54990 audio debug log (+tid,+seh,+mmdevapi,+winmm,+driver,+msacm,+midi,+dsound,+dsound3d,+xaudio2,+xapofx,+dmusic,+mci,+pulse,+alsa,+timestamp)
The problem sounds similar to bug #40833: audio works in the cutscenes, intro videos, but not in the menus and in the main game. The differences are: - Mass Effect doesn't make use of Xaudio/Xaudio2 but Openal (the game comes bundled with native openal32.dll and wrap_oal.dll) - the proposed patch from bug #40833 doesn't fix the problem.
I reproduced the problem with ALSA and Pulseaudio as well.
Possible workarounds: - force Wine to use the built-in openal32. Audio works with that (the game recognizes the audio device as 'Generic Software'). - when using the native openal32, edit BIOEngine.ini and change the line in section [ISACTAudio.ISACT.AudioDevice] DeviceName = Generic Software
For some reason, the game always tries to use 'Hardware acceleration' for sound when using native openal32.dll that comes with the game.
FWIW, audio used to work in the game before
commit 7d6c6025923c039ac6a2458ca466290621238c36 Author: Andrew Eikum aeikum@codeweavers.com Date: Fri Oct 2 09:02:56 2015 -0500
openal32: Prefer native version.
Because openal contexts are global per-process, applications that use openal will conflict with Wine DLLs that use openal like xaudio2_7 now does. Windows does not ship an openal32, so all applications that use openal will ship their own copy of it. According to Chris Robinson, Windows native openal32 works fine in Wine, so we should just use that to avoid the problem.
Fedora 24 x86_64 Audio device: NVIDIA Corporation MCP61 High Definition Audio (rev a2) Pulseaudio 8.0 / Alsa 1.1.1 openal-soft-1.17.2
https://bugs.winehq.org/show_bug.cgi?id=40898
fjfrackiewicz@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fjfrackiewicz@gmail.com
--- Comment #1 from fjfrackiewicz@gmail.com --- Possible dupe of https://bugs.winehq.org/show_bug.cgi?id=40833 ?
https://bugs.winehq.org/show_bug.cgi?id=40898
--- Comment #2 from fjfrackiewicz@gmail.com --- (In reply to fjfrackiewicz from comment #1)
Possible dupe of https://bugs.winehq.org/show_bug.cgi?id=40833 ?
Please disregard my previous comment.
https://bugs.winehq.org/show_bug.cgi?id=40898
Adam Bolte abolte@systemsaviour.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |abolte@systemsaviour.com
https://bugs.winehq.org/show_bug.cgi?id=40898
--- Comment #3 from Adam Bolte abolte@systemsaviour.com --- Confirming this issue in 1.9.14.
https://bugs.winehq.org/show_bug.cgi?id=40898
tokktokk fdsfgs@krutt.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |fdsfgs@krutt.org
https://bugs.winehq.org/show_bug.cgi?id=40898
reteo.varala@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |reteo.varala@gmail.com
--- Comment #4 from reteo.varala@gmail.com --- Confirmed with 2.11-staging.
Additionally, there was a workaround for the problem (setting openal32 to "builtin"), but apparently, Origin's licensing checker caught onto that, and produces an error: "Invalid license. Reason code = Missing DLL: [OpenAL32.dll] Error: 0x7E"
https://bugs.winehq.org/show_bug.cgi?id=40898
mirh mirh@protonmail.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mirh@protonmail.ch, | |tckocr@gmail.com
--- Comment #5 from mirh mirh@protonmail.ch --- https://pcgamingwiki.com/wiki/Mass_Effect#No_surround_sound IIRC the game is very picky about audio device. And no sound should just happen when there are no suitable outputs. In Windows indeed, worst case scenario is fallback to Generic Software.. In your case I wouldn't know what's the specific matter - maybe "output device name" doesn't match OAL's native implementation one?
CCing a person very knowledgeable of this kind of problems.
https://bugs.winehq.org/show_bug.cgi?id=40898
Robert Munteanu robert.munteanu@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |robert.munteanu@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=40898
zzzzzyzz@hacari.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zzzzzyzz@hacari.org
https://bugs.winehq.org/show_bug.cgi?id=40898
pattietreutel katyaberezyaka@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |katyaberezyaka@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=40898
Anya animegirl@stronzi.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |animegirl@stronzi.org
--- Comment #6 from Anya animegirl@stronzi.org --- still a problem
https://bugs.winehq.org/show_bug.cgi?id=40898
--- Comment #7 from mirh mirh@protonmail.ch --- So.. I just checked, and I think the problem is with the Generic Hardware device.
When you use built-in, you bypass entirely all the openal router and wrapper logic, and you are just "forcefully" using OpenAL Soft. End. When you use native instead, you get all the aforementioned stuff, and since there's no special device implementation inside of wine you get the usual Generic Hardware > Generic Software priority.
Generic Hardware is reported available, therefore that's what the game uses by default (you can see this in the logs inside your saves path). But "audio init" never happens.
I can just speculate this is because Generic Hardware in wine is pretty special. For starters: it is reported even on windows versions above XP, despite the fact that there should be no directsound3d behind (but this is just a cherry-pick, it shouldn't damage anything, and indeed XP is still broken) But more importantly, I think it's broken. It has no EAX 2 or EFX (as can be seen in ALCapsViewer32.exe), and I'm not sure lack of either of those was ever expected here.
And even when you enable EAX in wine-staging (which makes both being flagged supported), if you use openal-info32.exe you can see no actual filter or effect is available at all. Now, I'm not super clear on what you should expect there, but "at least *something*" seems like a safe bet. http://openal.996291.n3.nabble.com/EFX-Clarifications-td2620.html
https://bugs.winehq.org/show_bug.cgi?id=40898
mirh mirh@protonmail.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |hellas@burntcomma.com
--- Comment #8 from mirh mirh@protonmail.ch --- Extrapolating from the latest proton changelog, this should have been fixed here with 6806954251d0c8c37a5aa9f749b918aa0da98c8d (I had almost guessed correctly about directsound hardware).
But even though this shouldn't be a problem anymore (haven't really tested anything, but I expect ME1 and LE1 to be identical on this aspect), I'm afraid this probably regressed bug 11764.
There's a reason if the buffers had been lowkey enabled (and further bumped in bug 38548) even after getting gutted between 1.3.30 and 1.3.31. I get that you are faithfully trying to replicate the Vista+ audio pipeline, but there's absolutely also a place for the XP way of doing things.
https://bugs.winehq.org/show_bug.cgi?id=40898
soredake broaden_acid002@simplelogin.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC|broaden_acid002@simplelogin | |.com |