It is possible implementation of DSOAl in Linux (alsa work as directsound) for HW acceleration of EAX at Creative sound blaster cards ?
It is possible implementation of DSOAL in Linux (alsa wotk as directsound) for HW acceleration of EAX at Creative sound blaster cards ?
Or what is missing from creative company for realising linux version of DSOAL ?
It would be also nice cowork with valve due to proton emulator windows games in linux through steam client: https://www.reddit.com/r/SteamPlay/comments/k0rs46/using_dsoal_with_steam_proton/
Previously in this series: https://github.com/kcat/dsoal/issues/99 and https://github.com/kcat/openal-soft/issues/692
And yes this could very much be integrated into wine itself directly (there has been patches in staging for a decade) but upstream is actually giving very few damns about it and in fact regressed the thing.
DSOAL is independently developed and Creative isn't involved in any way, there's nothing from them holding back a Linux version. It won't provide hardware acceleration on Linux since there aren't any hardware accelerated OpenAL Linux drivers. The latest DSOAL builds also require the ALC_EXT_direct_context extension which only OpenAL Soft supports (as far as I know), so hardware drivers probably wouldn't work even if they existed.
Generally speaking, a Linux version could probably be made by replacing the parts that interact with the Windows API, but there are issues where it wouldn't be a drop-in replacement; it's not an insurmountable problem, but DirectSound relies on GUIDs and HWNDs from the Windows system, and there would also be potential compatibility issues regarding parameters and structures using long types since they aren't always 32 bits like on Windows (should they stay as long types and change size, or should they change types and stay the same size? different apps would likely prefer different answers). Ultimately, I can't imagine it'd be too useful since Linux apps don't use DirectSound, and new apps aren't still using that API. If you're able to change the source for an old DSound app, it would probably be worth switching to OpenAL along with removing/replacing all the Windows calls.
It would be most useful in Wine/Proton with existing Windows apps, where the Windows build already works (barring any bugs).
I assume that's what they meant.
Btw is ALC_EXT_direct_context really a big deal code-wise? Like, would it be too much of a burden/duplication if it was optional?
Of course you wouldn't get its benefits, but after having ALchemy work with openal-soft, it would be funny for ct_oal to run dsoal.
Btw is
ALC_EXT_direct_contextreally a big deal code-wise? Like, would it be too much of a burden/duplication if it was optional?
There could be some non-negligible performance concerns without it, since it would need to check and update the current context when making OpenAL calls, along with compatibility problems for apps that mix DSound and OpenAL since the current context is global (the direct context extension allows specifying the context directly with OpenAL calls, avoiding the need to continually check/change the current context).
There may be a couple other issues with other drivers, namely being able to open specific devices by specifying a stringified GUID (may or may not work in various implementations; the spec allows implementations to accept whatever strings it wants alongside the enumerated names, but there's no guarantee it'll support anything beyond the enumerated names), and AL_EXT_STATIC_BUFFER, which some other implementations do support though I don't know if hardware does. These wouldn't be impossible to work around, but would take some effort and introduce potential compatibility problems (the device names and GUIDs not matching what other system APIs report, or a high read-ahead for streaming buffers).
From wine 9.4 to 10.0 was solved many things for renderering 3D position through dsound.
https://gitlab.winehq.org/wine/wine/-/releases?before=eyJyZWxlYXNlZF9hdCI6IjIwMjQtMTEtMjIgMjI6MTM6MTYuNDQ4NzE5MDAwICswMDAwIiwiaWQiOiI4NzQifQ
Eh? Not really? Last time anything big happened to dsound was in 8.9. Then there was a small improvement in 10.0 and 9.0 but nothing too crazy. Still no revert of the "Vista-ification" commit in 6.22.
After spending like several days by now i guess the entire EAX Support and native hardware audio processing will never make a return at all i guess?
Ive spent multiple days by now working around with OpenAL, DSOAL etc.. trying to make the old games run the EAX reverb Effects but i dont get it done. At the very best i get audiocrackles and/or massive audiolatency and thats it. I have already installed Linux because i wanted to play old video games aka Retrogaming as Windows 11 is no longer capable due to extreme audiolag to even playback any sound properly at all. Even in latest W11 Games theres noticeable audiolag and horrendously useless 3D Audio Effects in like 99% of all games.
https://www.youtube.com/watch?v=J_tLvXdLKHU
Testet it here with Linux/Bazzite. I dont get it to run accordingly at all.
As I'm sure I said in the linked threads, hardware audio processing is a total red herring. It's not technically impossible (although I don't even remember if ctxfi/emu10k1 are basic feature complete and stable to begin with), but it's 2025 and it's unneeded. On top of the fact that for the best quality that openal-soft can pull off, they probably couldn't even support it all. At best its selling point could be helping with RE and whatnot, but eh.. at that point you could just straight up help here like @bibendovsky did.
Secondly, it's kinda odd that for the problems in linux you seem to be blaming yourself, while for the ones in W11 you already think the culprit must be the OS? Anyway, in both cases the problem is likely that you haven't override the CLSIDs.
And thirdly I don't see the connection between the first point and the second point.
Because under W11 the audiolatency is so high, that it doesnt function in any old game anymore out of the box. Adding EAX will add 0.5-1.5s of audiodelay. Every source is either far away from its origin, not audible or lags super hard when changing camera fast.
That said, Playstation 5 does it, they use Tempest 3D Audio and in well made products, such as Gran Turismo 7, it just melts the competition in terms of audio. The realtime calculations are excellent and audio is never boring to listen. Meanwhile software products even with the use of Wwise dont sound good at all. Worst is the lack of audiosources simultaniously.
Dedicated hardware audio chips are still required to this day as normal software codec running on a CPU thats absolutely inefficient in its design to render audio is not good. Every game results in a playback of maybe 3-4 soundsources in total, meanwhile games used to playback up to 512 sources at once loud and clear.
My CPU has pretty much no processing power left after using 100% of it for 480Hz screen. And what the CPU does is highly inefficient by architecture. These original 400MHz soundchips did, what required a entire playstation 4 pro CPU just for audio processing. With that, theres no more headroom for rendering frames.
As of right now, the only option available to return EAX and proper gamesound that plays back as it was designed is to run a Retro XP machine with a XFI Soundcard. It does no longer function correctly since Vista and it has reached its peak lows with Win11 by now.
I used to play these games in and out back in the day with a XFI card and ever since im running my nickname. If i check up any Creative Alchemy/OpenAL workarounds not running natively on XP, i hear the differences of the processing as they are inaccurate and worse.
What made EAX so unique was that you could take any headphone and any budget logitech 2.1 system and the reverb would 100% accurately reproduce the directional audio like a 7.1 system with ease, on top of that creating reverb of the gameworld, not useless room acustics. Closing your eyes and get that crosshair placed directly on the source with 100% accuracy.
I havent seen any tech remotely competing with that ever since. Especially not for a price for 100€.
Even if running games via Linux, footstep audio has less audible range than native experience and are much more difficult to locate. HRTF is like 30% of EAX, dolby headphones, DTS X, CMSS3D, thats surface scratching, lack of realtime reverb processing of any room or area and not having that echo just removes massive amount of audible information.
Those are original native experiences: https://www.youtube.com/watch?v=jptoFrSnvdY
https://www.youtube.com/watch?v=819pyCVMtCQ
Can close your eyes, you dont need a screen anymore. Basicly Audio was that precise back in the day, it expanded your 4:3/5:4 CRT Screen to a 360° virtual screen. There wasnt a single deadspot in the acoustics. If you would take that Bioshock Remaster, it would be 2% of the original experience, a complete waste of money due to the lack of EAX, HAL, D3D etc...
After spending like several days by now i guess the entire EAX Support and native hardware audio processing will never make a return at all i guess?
OpenAL Soft and DSOAL support the EAX API, and has been successfully used in native Windows as well as Wine/Proton.
Hardware audio processing is a little more nuanced. It's very unlikely there will ever be dedicated hardware audio cards again, like the Creative cards of the past. In specialized devices, you may get a separate processor that's intended to focus on audio work, though at least in game consoles, I don't think they've had that since the PS1 era (maybe the XBox360 had something?). It's more likely that audio work is done on a processor or cores that are shared with other work. In modern times it is possible to offload some work from the main CPU to the GPU, such as doing raytracing to calculate reverberation and obstruction/occlusion/exclusion properties in an API-agnostic way, that can then be applied to the audio API you have which can do more work on the GPU and/or CPU. It's not dedicated audio hardware, but is that "hardware audio"? At the bottom of it all is always going to be some hardware running some code, so I guess that's a more philosophical question than a practical one.
Every game results in a playback of maybe 3-4 soundsources in total, meanwhile games used to playback 512 sources at once loud and clear.
OpenAL Soft has no issue handling a lot of sound sources. While I'm not sure what I have that can stress test it that much, it can handle well over 100 constantly updating sources no sweat, with a pseudo-dynamic reverb, a stereo track being run through a Super Stereo decoder, and a UHJ encoder thrown on the end for good measure (I can't seem to make a decent video to show it that's under 10MB to attach here, so I guess you'll have to take my word for it).
There certainly is room for OpenAL Soft to improve, but a lot of audio quality is dependent on audio design and the audio engine itself. I don't think I've seen anything that takes full advantage of OpenAL Soft's capabilities (fully dynamic multi-zone reverb, source obstruction/occlusion/exclusion, volumetric ambisonic sound sources, ...), and there aren't many games that utilize EAX4 hardware features, let alone take any EAX4 hardware to its limits.
Playstation 3 has had a dedicated Chip and Playstation 5. As said, not all Games use proper Audio Engines, as of why i put the GT7 example, as thats one of those rare games, that care about audio and in a racing game thats important, because if you take a different line, you want to hear different audio, if its the same over and over again, like in iRacing, Assetto Corsa, Dirt Rally 2.0 etc.. it would get boring and also annoying at some point. PS2 as of example has none, playing Splinter Cell Pandora Tomorrow with that would immediately result in useless Audio, as it gives you zero awareness at all. Its literally meant to be played on Windows XP or Linux, everything else is just worse.
What i have figured is, that while im running on Bazzite, every single Game has way better Soundquality, than on Windows 11, right out of the box. Like i have not an issue to hear ~50+ sounds in games like Megabonk and locate their sources freely. Meanwhile on Windows 11 the sound is full of lag, can barely hear 5 sounds total and it is completly inaccurate. Running Valheim in example on Windows and pick up a stone out of the ground its full of lag. Audio is super far behind of the imagesource like half a second, no issue with linux, audio is in sync with the image.
The same is for games like Counter Strike 2, Audio via Windows is next to useless. It would skip spawn sounds in a deathmatch game if someone shoots his gun. Meanwhile with Linux it plays back 5-6 shooting sources, footstep audio and spawnsounds regularly, including proper directional audio of the source and its distances + its lagfree. Yet its not what it could be.
What confuses me is as of why this entire tech was thrown out of the window. Every single Windows Game is a mess out of the box on the OS. And if there are attempts of making good audio, it sounds unnatural, compressed, it causes pressure inside of the ears. Sounds that are within 5 metres of range sound like they are 200+ metres far away. Sounds at 20 metres are barely audible anymore and distances are only calculated by predefined volume changes, more distance = sound is geting lower volume - thats all. Based on hearing it is impossible to tell the distance to an object, the size of a room, the degree of angle in height etc...
Interestingly enough, there were attempts but they also vanished.
Best comparison that exists of an "up to date" game is Dying Light 2, E3 2019 vs Retail. https://youtu.be/38NXe4uKMrY?t=42
Retail has (in my opinion) completly awful and useless Gamesound. That sound will never generate a single feeling while playing the game, it will never shock and it will never cause the feel of intense threat moments.
Interestingly enough, when playing Arc Raiders via Proton the Audio is very very close to the original EAX Experience, however the Audioengine doesnt manage to playback multiple soundsources, as its super easy for players to sneak up, if you fire your gun. Footstep Audio of other players will vanish and not exist when theres gunfire going.
Either way, what i experience when i use DSOAL etc. is that the room acoustics do not exist. Its obvious in Max Payne 2 prerendered Cutscenes, as EAX is included in the audiofile, as soon as the cutscene ends, its vanished.
I the video above, when i do use "Native" in the Protontricks, the audiocrackles and it tries to use EAX Reverb Room Acoustics but it doesnt handle it properly. The Sounds cut out way too early and replace each other constantly. Also theres audible lag of +1 Second from Input to Output.
I cant even figure the cause, is it because i do no longer use a X-FI Card and instead a Soundblaster Z? What did go wrong? If i check other sources that try to get these things done, their gamesound is absolutely equal to my sound. EAX only in Cutscenes, gone when gameplay. Most iconic are the rain effects at the hospital outside the windows, the audio is not correct. It may still sounds years ahead of current productions but not as it should be.
W11 may suck for a lot of reasons, but you are doing something very wrong if your latency isn't in the low double digits. Everything else is just detached rambling (ironically enough you linked a bioshock video, which has no problems in vista).
If you want to help you should first try to fix whatever madness is going on with your situation, and then help compare games for the bugs that are surely still present in dsoal or openal (e.g. https://github.com/kcat/dsoal/issues/81)
The only madness i can imagine is, that im running a 480Hz OLED Screen and with that, it makes the entire Desync from Audio to Imagesource way more obvious and that im still highly sensitive in terms of listening.
As LCD Tech is full of motionblur during quick movement, it hides the issues with ease.
It cannot be on my end, because if it was, i wouldnt be able to have 0 audiolag/image desync in one video and clearly hear desync in those videos, that run Creative Alchemy/OpenAL on newer OS.
My guess is, that the majority is entirely unsensitive to that whole topic and as growing older and treating your ears bad with loud sounds, never using noice canceling headphones etc.. at work, that they can no longer notice it. Exactly like the majority never noticed that they purchased super awful technology aka LCD Panels and replaced their golden, motionblur free CRT Screens, that wouldnt smear out during fast inputs.
Everytime if i ask my dad if he doesnt hear his broken lightswitch and how dimming the lightbulb causes highfrequency noises, hes like "nope, i dont hear it". I would never ask him to compare gamesound aswell, as its clear, he cannot hear differences anymore due to age and beeing completly careless at work without ear protection.
So theres that too to keep in mind.
Admittedly this doesn't aim for the lowest possible latency (see here and exclusive-mode) but I'll reiterate again: is NOT normal for windows to take half a second.
And your monitor has nothing to do with it, because of course you'll have a multi-core cpu, and the latency saving from 120hz to that is 6ms tops and I'll be damned if motion blur masks sound.
Conversely it was XP to be awful at that (unless, yes, bypassing the software mix with the hardware driver).
Motionblur masks alot, thats for sure. Its not about the refreshrates in that regard, its about those Lightemiting layers in LCD panels that cause it. As back in the day when everyone has used 60Hz or even up to 240Hz CRT screens were standart and state of the art even to this day in terms of motionblur. Even on 60Hz MB was never an issue as each picture was fully made from scratch, while on LCD there are imagedetails from the past laying over the latest. An issue all LCD panels suffer from and can only be reduced by Backlightstrobing, however, each CRT would easily show better clarity than latest paneltech. So is a 120Hz OLED panel vastly superior to a backlight strobed 240Hz LCD. And any LCD without strobing has negetable effect based on refreshrates. Thats a whole nother topic however and it takes hours of comparison and proper techdata.
The short is, motionblur exists heavily on each LCD Panel, hence causing blurred out images and the eyes cant work with blur. GtG values are worthless, whats needed is GtG + MPRT and better lower than 1ms, because 5ms already is massive.
The same for audio, id say we are almost back at CRT clarity with high refreshrate OLEDS and now the audio delays can stand out again. I believe that audio was a bigger factor back in the day as there was zero motionblur and no other negative screen effects on the image, meanwhile during Vista LCDs spread out and those had well over 100ms of Latency in everything, so syncing audio with image would be impossible.
Playing Death Stranding on Linux finishes lipsync audio half a second faster than facial animations too.
Ok, good. For the third time I'm telling you to check your system because that's not normal. And no, you aren't special. We already had thousands of people testing this, including ones with very big OCD, and those that could even check with audio loops.
Sure if you point out the area that makes sense i can start routing an issue but theres no logics behind all of that. If under Windows 11 in Death Stranding the audio during a cutscene finishes in sync with the facial animations, but audio on Linux finishes way earlier than the Animation, while beeing vice versa in old pre Dx10 games, such as old games finish facial animation but audio still is playing back under Windows and on Linux its synched again.
Like where is the issue? Probably windows games are made with extra latency to match a much faster GPU and CPU rendering process, while audio is the slowest part of the OS.
Then maybe linux is bugged???? And it has nothing to do with dsoal? I already linked you a trainload of things you can try, but you aren't helping yourself with going on absolutely nonsensical tangents. No, windows games aren't made with "extra latency", and it's especially funny for you to trash on middleware when conversely the built-in logic is shared by all platforms.
See and here we go, it goes personal and it goes into a "maybe". If those 1000 testers acted like this then no wonder these issues go unseen because nobody clearly wanted to see any issues. The only thing you've linked were those registry entries and those are done by default when running the OpenAL installer, all pointing towards the dsound.dll so those advices are outdated.
Weve even had Audiolatency issues in Counter Strike Global Offensive already during Windows7 and Windows 8/10 but back then, the game has had the snd_mixahead value in the config file which could be lowered drasticly when running a soundcard (pro players did that, as it meant massive advantage over technical clueless competitors). That option also no longer exists for CS2.
It already has been measured by professionals that the gamesound on Windows easily exceeds 90ms at avg., meanwhile highend CPU and GPUs render frames in 1-2 milliseconds. So based on pure data its out of sync. The fastest Audio on W11 is coming from Valorant, Games like Battlefield easily exceed 200ms. If you take into consideration that a pro has 130-150ms reactiontime based on visuals and ~60-70ms based on Audio, then there is a problem.
An ASIO Device with proper hardware would reach 2-3milliseconds on a compatible program, just like the original soundcards were capable of.
Im out of discussing that with you at this point as there is no technical base or experience laying to built an advice on.
As i stated above and gave examples, there are issues and thats why i ended up here as ive spent days at google search reading through every single advice beforehand that you've given at this point and i laid down some mines that you slipped into clueless and didnt even notice. I need proper advice and not some "maybe" "i think" "i believe".
You cannot even imagine how many hundreds of issues I have followed here, or in other *linux* repos... But I'm going personal because I already told you thrice to behave and stick to the issue here, and you don't (with the most wild and senseless puff). There cannot be any progress if we cannot communicate.
The only thing you've linked were those registry entries and those are done by default when running the OpenAL installer,
No they aren't at all. The ALchemy installer maybe does that (IIRC and even then partially), but that's a whole other can of worms.
the game has had the snd_mixahead value in the config file which could be lowered drasticly when running a soundcard
I cannot be bothered to check the csgo sources now, but a quick google tells me many games had it set to 0.1. Which I'm going to take a guess is a built-in 100ms buffer. So, uh, yeah that's noticeable. And it has nothing to do with openal, which as I already linked you can even go into single digits.
It already has been measured by professionals that the gamesound on Windows easily exceeds 90ms at avg.
In what year? On XP maybe. Because even already on Vista, I'm fairly sure most people could report half of that. And I can tell you that osu! just fixed its WASAPI backend last month, and with the exclusive path they could reach 2ms.
An ASIO Device with proper hardware would reach 2-3milliseconds on a compatible program, just like the original soundcards were capable of.
News flash: W10 can do the same too. At worst something between 10 and 20, if you are unlucky with your drivers.
I need proper advice and not some "maybe" "i think" "i believe".
You wrote three walls of text, about the magic playstation hardware that has no public documentation and I'm not even aware anybody to have ever measured. But sure, thanks for heads up.
You wrote a whole topic full of replies that clearly states you got an toxic ego that is super easily attacked by anyone with a little knowledge and providing some comparison and fundamentals for understanding, while also pretending to not have led the discussion into directly that way, when it is directly visible how the whole discussion even started. When you said "special", it seems to trigger you alot if someone notices something, you do not at all. Maybe try fixing that beforehand, your help isnt useful.
It triggers me a lot if people start to ramble incoherently and cannot even follow a conversation, yes. I told you X is wrong, Y is to be checked, and you reply Z. On an issue about A.
Playstation 3 has had a dedicated Chip and Playstation 5.
From what I see, the PS3 did not have dedicated audio processing hardware, it basically had one main core and 6 other cores, plus a GPU supplied by nVidia. It was up to the developer to allot processing time for audio to those cores (or maybe the PS3 SDK supplied by Sony managed the audio processing for the developer, I can't say for sure). Either way, no dedicated chips for processing audio are mentioned.
What i have figured is, that while im running on Bazzite, every single Game has way better Soundquality, than on Windows 11, right out of the box. Like i have not an issue to hear ~50+ sounds in games like Megabonk and locate their sources freely. Meanwhile on Windows 11 the sound is full of lag, can barely hear 5 sounds total and it is completly inaccurate.
Bazzite is a Linux distro that would be using Wine or Proton to play any non-native Linux games. You certainly aren't getting hardware audio processing on that, so if Windows 11 is giving you problems, that's an issue with Windows 11 (or the Windows drivers for your devices), not the game's audio engine or the lack of hardware processing. And don't get me wrong, I wouldn't at all be surprised for Windows 11 to have a problem, but it's not because of the lack of audio hardware.
If under Windows 11 in Death Stranding the audio during a cutscene finishes in sync with the facial animations, but audio on Linux finishes way earlier than the Animation, while beeing vice versa in old pre Dx10 games, such as old games finish facial animation but audio still is playing back under Windows and on Linux its synched again.
I wager most games don't try very hard to sync dialog with in-engine animations. They just set it up so that it works well enough on the systems it was released for, but would be sensitive to certain kinds of behavioral changes (if some frames take longer to render, the animation may end up behind the audio, or if it renders frames faster than expected, it may end up ahead of the audio). Changes in Windows after a game's release can affect this, and whether or not it works in Linux depends on how well Wine/Proton works. This doesn't really have anything to do with the presence or lack of hardware audio, though.
What confuses me is as of why this entire tech was thrown out of the window.
Hardware audio was thrown out almost 20 years ago with Windows Vista (released to consumers in January 2007), and that was because Creative's driver quality was poor. Sure it sounded fine when it worked, but Microsoft found that a large amount of Windows' crashes and stability problems could be traced to the audio hardware drivers. And because of Creative's self-inflicted dominance of the hardware accelerated audio market, blocking their buggy drivers meant blocking most consumer hardware audio cards. So since that was going to happen anyway, along with the fact that the hardware audio market wasn't in a very healthy position, Microsoft took advantage of being able to redo the audio stack (compared to the mess that was XP/9x) and centralize audio mixing in the system.
For hardware audio to continue, it needed to side-step the Windows audio stack, which is precisely what Creative did with their OpenAL drivers. But Creative didn't make themselves many friends, either in the ProAudio space where people don't care so much about gaming and there are better options for quality audio devices, or the "Prosumer" space where gamers didn't appreciate Creative's behavior (litigating Aureal into going broke and buying them out, litigating and/or buying out other potential competitors, the stunt they pulled with id Software, etc.), on top of their driver quality continuing to not be great. Creative made it their market, and made it unsustainable, which is why it dried up.
I the video above, when i do use "Native" in the Protontricks, the audiocrackles and it tries to use EAX Reverb Room Acoustics but it doesnt handle it properly. The Sounds cut out way too early and replace each other constantly. Also theres audible lag of +1 Second from Input to Output.
I cant even figure the cause, is it because i do no longer use a X-FI Card and instead a Soundblaster Z?
Linux doesn't give you anything special with X-Fi cards. It's largely treated as a glorified DAC. Can you make log files with the game using DSOAL? Using this batch file with the game should create both a DSOAL and an OpenAL Soft log file, if they're being used.
Creative-tech chip CA10300-IAT is part of modern pciex1 sound cards Audigy RX. It need only support of linux e.g. from side of creative tech.
I'm afraid creative never really helped with the driver, and I'm not really sure what that has to do with your original comment. Anyway I believe SB1550 (if that's your card?) should be supported by the emu10k1, if still just as a glorified DAC as noted above.
Oh ye gods. On top of my initial complaints about wine's dsound handling, I just remembered where the hell wine openal passthrough went: out of the window.
Basicly ive found an issue in terms of Windows. It was more by accident and random, however ive had OOB „Smart App Control“ active (didnt know it existed) i went ahead installed Splinter Cell Chaos Theory and it blocked the Soundblaster Command in parts. Turned it off and voila, works, then quickly came to realize it also ruined Audio in other games. However, audio isnt great still, inaccurate and delayed, minor but noticeable. For some reason 3D Audio works best in CS2 on Bazzite and like 20% worse in Windows 11.
Ive also fiddled around with the OpenAL stuff on Windows but aint sure if it really does something. Took the win64 router and also added the soal dll and used the checker, which says HRTF is not there and sth else. Need to take a screen later on and post too.
On Linux however im entirely unsure if it ever worked correctly in the first place. In Gothic 1 it seemed to have an impact when running the Radgametools, i was able to use the config file and make adjustments and those wouldve changed the audio, so sth was happening atleast. Max Payne 2 however ive tried countless of times, the EAX is 100% not active at all. Overhead audio is also missing, so is underneath, room acoustics etc.
Ill provide more info later about all specific files when i got the time for it. Guides are super difficult to find, either outdated or really sadly written for the whole process, which makes it alot more difficult to deal with.
Edit: So i tried to visualize my audio experience in 2D. Hope this helps how i experience Audio in example via Linux/Bazzite in CS2 and compared to Windows 11.
Basicly in W11 i got a less audible circle with decreased Range, a delayed soundoutput that doesnt match the visuals as it lags behind by like 100-200ms and when a soundsource plays back on the right side, it only does playback half way, incomplete or cut out in parts on the left side "virtual" audiochannel.
Ive made a video for audible comparison a few days ago:
https://www.youtube.com/watch?v=eDgU0jWIFOI
Thats basicly the experience i do expect to get. My crosshairplacement is literally tracking heads through the wall because i feel safe trusting the audio on Bazzite. However when i trust Audio in Windows, my crosshair is always off and it gets me killed and surprised alot. Even after finding the fix, the audio is inaccurate.
And i feel like that even if i do use Creative Alchemy etc on Win11, that the same issue also exists. Its not how it should sound and its def. not how it did sound under Windows XP with one of those original Emu20K Soundcards. Wish i had a Retro System so i could maybe get a record for comparison. Thankfully there are these nerds that do have it still:
https://youtu.be/xu06xLYxmA0?t=1662
When he smacks that door with the pistol, thats a perfect example of how it should sound. Theres no deadzone in the acoustics and no cut outs in the virtual sound. Both ears get the perfect audible sound and the complete acoustic picture. There are also no cutouts audible when camera is beeing moved, each ear gets all information all the time correctly even during movement.
And what i do get in Max Payne 2 with Creative Alchemy is this:
https://www.youtube.com/watch?v=gPwE4PWF18s
That makes it more than obvious what the problem is, im dealing with. The transition of a moving soundsource is absolutely awful and it shouldnt be that way.
Edit2:
https://www.youtube.com/watch?v=1kn3RcEdmss
In this video i can just shake my camera as much as i want to, there are no cuts in the audio sources and no matter how hard i try, the soundsources are audible in their exact location, even when i cannot see anything at all on my screen anymore because movement is too fast for human eyes. Still i can keep track of all locations and immediately return to "normal" and start shooting.
Usually thats what i should be geting with EAX on Windows 11 aswell, but i do not. Something is just entirely off and i dont know where to go for. If the entire openAL stuff wasnt this difficult to implement and had proper written guides going straight to business, i could imagine, that if it works, the audio results may be alot better under Bazzite (Pipewire) aswell.
Personally im just using Linux for exactly one month by now and still adjusting and learning, especially in terms of the filesystem etc.. What keeps my preferences personally towards Linux is not the decreased performance (Nvidia Card 🥱 ), it is literally the Audio. That caught my attention and since then im trying to get the whole DSOAL etc. to work here aswell for the most optimal experience.
Doing so is however a seriously difficult task.
According of gemini must be used alsa in linux. Current old driver snd-emu10k1 contain codes for supporting of EAX3 for audigi and sblive sound cards, notably in files (but is komplex networked code for eax and programing DSP): sound/pci/emu10k1/emu10k1_synth.c sound/pci/emu10k1/emu10k1_fx.c sound/pci/emu10k1/emu10k1.c
Gemini wrote about 0x2A as register for reverb set (main part of eax).
The snd-emu10k1 kernel module is an ALSA driver for older Creative Sound Blaster Audigy and E-MU sound cards, and it works with PipeWire's ALSA integration. While PipeWire provides its own server and can replace PulseAudio or JACK, it uses ALSA as a backend to interact with hardware like your card. To get EAX effects on your card with PipeWire, you will need to configure the snd-emu10k1 module and set up a session manager and/or use a compatible application, though support for hardware-specific effects can sometimes be limited.
How to get EAX working
Ensure the driver is loaded: The snd-emu10k1 module should be automatically loaded by your system, but you can verify its presence using lsmod | grep snd-emu10k1. If it's not, you may need to install the alsa-tools or similar packages and ensure the module is enabled.Configure ALSA: You may need to configure the ALSA configuration file (~/.asoundrc or /etc/asound.conf) to ensure the correct devices are selected and that the EAX features are enabled.Install and configure PipeWire: Make sure you have PipeWire installed and running. You can install it through your distribution's package manager. You may also need to install the pipewire-alsa package for full compatibility.Configure a session manager: PipeWire uses a session manager for configuration. You can configure it through your desktop environment or a standalone session manager. You can also configure it manually via pipewire.conf or pipewire-session-manager.conf.Enable EAX in applications: Some applications may have their own settings for enabling EAX. You may need to enable it in the application's settings to get it to work.Use an application with EAX support: There are a number of applications that can provide EAX support, such as some older games or professional audio applications. You may also be able to find a newer application that has built-in EAX support.
What is EAX?
EAX (Environmental Audio Extensions) is a technology from Creative Labs that adds realistic audio effects to games and other applications.It works by applying a variety of effects to the audio stream, such as reverb, echo, and other special effects.EAX effects are processed by the sound card's hardware DSP (Digital Signal Processor), which allows for high-quality, real-time effects processing.PipeWire, ALSA, and the snd-emu10k1 driver all work together to provide EAX support on Linux systems.
Information from gemini:
Step 1: Installing the Correct Kernel Components You must ensure your system has: snd-emu10k1 Driver: It must be active and correctly detect your sound card. (This is usually automatic for modern kernels and distributions.) ALSA kcontrol Interface: You must have the ALSA mixer installed to control the DSP hardware effects.
Step 2: Activating Hardware Effects (DSP) You must use ALSA tools to enable the hardware effects in the DSP chip that correspond to EAX environments.
amixer -c 0 sset 'Emu10k1 FX' on # or a similar command
(The exact control name in amixer varies and requires testing.)
Using alsamixer: Open alsamixer and try to find channels like 'Emu10k1 FX', 'Master Reverb', or 'Master Chorus' and manually activate and set their levels. This programs the DSP.
Step 3: Configuring Wine/Proton for DirectSound
To route the game to the hardware mixer, you must bypass DSOAL/OpenAL Soft and use the native Wine/Proton DirectSound implementation, which will try to find the hardware.
Using Native DirectSound: In winecfg or the Proton launch options, you must set dsound to "Builtin". This forces Wine/Proton to use its own DirectSound emulation, which might then communicate with ALSA/OSS.
WINEDLLOVERRIDES="dsound=b" %command%
Step 4: The PipeWire/PulseAudio Problem
PipeWire (or PulseAudio) is a layer above ALSA that takes control of the sound devices.
Conflict: Hardware EAX acceleration requires exclusive access to the DSP chip at a low level (ALSA). If PipeWire holds the device (as it does), it will prevent Wine/DirectSound from accessing the EAX hardware. Solution (Impractical): For this to work, you would have to completely disable PipeWire/PulseAudio and run Wine/the game directly on plain ALSA. This is impractical for a modern desktop environment.
PipeWire (like PulseAudio and JACK) is designed as a central sound server. Its primary role is multiplexing (mixing) audio from multiple applications and managing data flow with low latency.
DSP Exclusive Access: Hardware EAX on old Creative cards requires the application to gain exclusive access to the DSP chip at a low level (ALSA). Once PipeWire holds the sound card, it will not allow another application to gain this exclusive access.
A Potential PipeWire Solution: It would theoretically be possible to create a special PipeWire Module or SPA Plugin (Simple Plugin API). Module Function: This module would have to constantly hold exclusive access to the Creative chip (via snd-emu10k1). Call Translation: The module would then have to implement a virtual EAX API and translate those requests (which would come from, e.g., Wine) into commands for the emu10k1 DSP chip—in real-time! The Result: PipeWire would become not only the audio mixer but also the hardware EAX driver, and it would then pass the final mixed audio onward.
However, this module would essentially be replicating (and extending) what snd-emu10k1 does, but in the much more complex, parallel architecture of PipeWire.
Linux doesn't give you anything special with X-Fi cards. It's largely treated as a glorified DAC. Can you make log files with the game using DSOAL? Using this batch file with the game should create both a DSOAL and an OpenAL Soft log file, if they're being used.
So thats for Windows 11:
The openal-soft-1.24.3-bin doesnt add anything here. No audible Differences at all.
Ill update this Reply once i went around all that again in Linux/Bazzite
Edit:
Ive tried messing around with it alot for several days, different approaches of installation and configuration. In example, if i take the wrong DLL files of OpenAL32 i get no sound. If i take the correct ones and set dsound.dll to native, i may get corrupted stuttery audio as shown in the video a few replies ago etc..
Edit2:
The very best i can currently get for Max Payne 2 on Bazzite is this output:
Logging Time : 29/11/2025 at 16:15:02
Loaded Z:\var\home\EAX.local\share\Steam\steamapps\common\Max Payne 2 DE\DSOUND.ini
DirectSoundCaptureEnumerateW - Passing to real dsound.dll
Using Creative Software 3D Library DirectSoundCreate : Failed to initialize Creative ALchemy, falling back to dsound.dll DirectSoundCreate : Failed to initialize Creative ALchemy, falling back to dsound.dll
Edit3:
Im currently testing on Windows 11 with DSOAL and ALC 897 Audiochip. So far the log gave me:
[ALSOFT] (II) Initializing library v1.24.3-dc7d7054 master [ALSOFT] (II) Supported backends: wasapi, dsound, winmm, jack, null, wave [ALSOFT] (II) Loading config C:\Users\Chris\AppData\Roaming\alsoft.ini... [ALSOFT] (II) setting 'resampler' = 'bsinc48' [ALSOFT] (II) setting 'hrtf-paths' = 'C:/Users/Chris/Downloads/openal-soft-1.24.3-bin/openal-soft-1.24.3-bin/hrtf_defs,' [ALSOFT] (II) setting 'period_size' = '8192' [ALSOFT] (II) setting 'stereo-encoding' = 'hrtf' [ALSOFT] (II) setting 'hrtf-mode' = 'full' [ALSOFT] (II) setting 'default-reverb' = 'psychotic' [ALSOFT] (II) setting 'reverb' = '+12' (<------ had a typo, noticed it myself) [ALSOFT] (II) setting 'drivers' = 'dsound,wasapi,' [ALSOFT] (II) setting 'default-hrtf' = 'Built-In HRTF' [ALSOFT] (II) setting 'sample-type' = 'float32' [ALSOFT] (II) setting 'channels' = 'stereo' [ALSOFT] (II) setting 'frequency' = '48000' [ALSOFT] (II) setting 'stereo-mode' = 'headphones' [ALSOFT] (II) setting 'decoder/hq-mode' = 'true' [ALSOFT] (II) Got binary: C:\Users\Chris\Downloads\openal-soft-1.24.3-bin\openal-soft-1.24.3-bin, openal-info64.exe [ALSOFT] (II) Loading config C:\Users\Chris\Downloads\openal-soft-1.24.3-bin\openal-soft-1.24.3-bin\alsoft.ini... [ALSOFT] (II) Vendor ID: "" [ALSOFT] (II) Name: "Intel(R) Core(TM) i5-14600K" [ALSOFT] (II) Extensions: +SSE +SSE2 +SSE3 +SSE4.1 [ALSOFT] (II) Found option resampler = "bsinc48" [ALSOFT] (II) Found option drivers = "dsound,wasapi," [ALSOFT] (II) Initialized backend "dsound" [ALSOFT] (II) Added "dsound" for playback [ALSOFT] (II) Added "dsound" for capture [ALSOFT] (II) Found option default-reverb = "psychotic" [ALSOFT] (II) Loading reverb 'PSYCHOTIC' [ALSOFT] (II) Got device "Lautsprecher (Realtek(R) Audio)", GUID "{1868B3FB-ED5C-4802-876F-3197A0BC1A61}" [ALSOFT] (II) Got device "LG ULTRAGEAR+ (NVIDIA High Definition Audio)", GUID "{0D2C24E8-6CFF-4049-9AB4-076C219D5AB1}" [ALSOFT] (II) Got device "Lautsprecher (Sound Blaster Z)", GUID "{B88C36E4-D991-499B-AF4A-7376E8BCFDAA}" [ALSOFT] (II) Got device "SPDIF-Out (Sound Blaster Z)", GUID "{F8710699-12F8-452D-B59F-CF529F05A8EC}" [ALSOFT] (II) Got device "Mikrofon (USB MICROPHONE)", GUID "{B75D3558-A803-4B7F-A19C-8429CC1F6681}"
However, no EAX Effects found to be in the game. That said, theres no audio cutouts when watching the Faucet and turning camera super fast