
[Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Nice testing! I'd bet that BURAOT's fix is so close to the old hardware sound that there wouldn't be a perceivable difference. It sounds that good to my ears. That being said, I do eventually plan to upgrade the audio in my gaming machine with something like the EVGA Nu Audio or the ASUS Xonar. 

-
- Site Admin
- Posts: 432
- Joined: Sun Dec 19, 2021 11:23 am
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Haha nice
.
I reread these lines again and it would explain why I didn't hear a difference.. simply because EAX isn't supported at all in IndrectSound and it's just faking support for those games that require EAX support as a precondition for calculating 3d positional sound, which would be our "3D Sound" setting... In a way.

I reread these lines again and it would explain why I didn't hear a difference.. simply because EAX isn't supported at all in IndrectSound and it's just faking support for those games that require EAX support as a precondition for calculating 3d positional sound, which would be our "3D Sound" setting... In a way.
I'm thinking that the door example and other types of echo examples I described in my video are all connected with EAX. I would definitely be extremely interested in retesting if IndirectSound implements proper and full EAX support. Of course I'm betting that it give us equal or greater sound quality than what BURAOT already provided us, but this way Linux users can also benefit.EAX ("Environmental Audio Extensions") is not emulated by IndirectSound.
IndirectSound can emulate EAX support, however. In other words, IndirectSound will pretend that EAX is supported so that games using IndirectSound will think that EAX is available. This is useful for some games that don't calculate 3D positional audio unless EAX is supported.
(Actual emulation of EAX is under development
but is not yet ready to release.)
-
- Site Admin
- Posts: 432
- Joined: Sun Dec 19, 2021 11:23 am
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
I was recommended something called "DSOAL" on this reddit post but I've been having trouble building it from the official sources (Since upstream doesn't provide binary builds and also there are some core dependencies that are not included by default). I've opened up a ticket. This will probably be the last sound system I'll tested for now. There are random dlls that community members provided so I might test one of those just for the proof of concept, but I would want an official build of 'dsound.dll' if this would even were to become a potential candidate.
DSOAL Repository
EDIT: I was able to find a 'dsound.dll' for the latest commit inside the "Actions" tab for the GH project. It's not really advertised so it was hard to find (Someone mentioned it in of the the other issues regarding binary releases). After I got that dsound.dll, I combined it with the latest dll provided by the OpenAL Soft project and renamed the dll to 'dsoal-aldrv.dll' which is what DSOAL is expecting. Dropping the dsound.dll alone caused the game to crash at launch (Which makes sense because the project mentioned it depends on the OpenAL dll), dropping the latter dll as well caused the game to launch successfully. I was able to enable 3D Sound and change 3D Bias options, but the Environmental Effects still remains disabled. I've opened another ticket regarding D2 support explicitly (The first one was regarding the build system).
DSOAL Repository
EDIT: I was able to find a 'dsound.dll' for the latest commit inside the "Actions" tab for the GH project. It's not really advertised so it was hard to find (Someone mentioned it in of the the other issues regarding binary releases). After I got that dsound.dll, I combined it with the latest dll provided by the OpenAL Soft project and renamed the dll to 'dsoal-aldrv.dll' which is what DSOAL is expecting. Dropping the dsound.dll alone caused the game to crash at launch (Which makes sense because the project mentioned it depends on the OpenAL dll), dropping the latter dll as well caused the game to launch successfully. I was able to enable 3D Sound and change 3D Bias options, but the Environmental Effects still remains disabled. I've opened another ticket regarding D2 support explicitly (The first one was regarding the build system).
-
- Site Admin
- Posts: 432
- Joined: Sun Dec 19, 2021 11:23 am
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Good news. I've been going back and forth with the creator of OpenAL Soft and DSOAL and after testing and debugging, we were able to verify that DSOAL does support 3D Sound and EAX and it sounds great (I guess it sounds like the BURAOT one, but possibly better given that the project is active). Due to this, I'll probably be replacing BURAOT's implementation with DSOAL so that we can have an actively maintained sound driver by upstream (Similar to how cnc-ddraw is actively developed). From what I can see, BURAOT's solution was more of a one and done type of thing given the essentially single release post in the Median XL post where we got the original dlls from.
-
- Skeleton
- Posts: 80
- Joined: Thu Jan 06, 2022 5:14 pm
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Sounds great (hoho)! Looking forward to trying EAX on Linux
.

-
- Site Admin
- Posts: 432
- Joined: Sun Dec 19, 2021 11:23 am
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Haha I'll test the Linux side as well and let you know if it works. I hope it does since OpenAL Soft seems to have full linux support.. and plus.. it's OpenAL after all!
EDIT: Hurray! It works on Linux and sounds awesome. I'll be updating Cactus tomorrow and update all of the documentation. For now, you can download the two dlls you need to put in your Diablo II root directory from here, I'll remove this archive file once they are in Cactus.
Make sure to add `dsound` to your prefix DLL overrides. Let me know what you think. The sound difference is most noticable when you are in doors (Like Caves). You can also see a difference if you test out the character sound animations by pressing Num Pad Key 1-6. Try those voices in a cave with and without 3D Sound + Environmental Effects.
EDIT: Hurray! It works on Linux and sounds awesome. I'll be updating Cactus tomorrow and update all of the documentation. For now, you can download the two dlls you need to put in your Diablo II root directory from here, I'll remove this archive file once they are in Cactus.
Make sure to add `dsound` to your prefix DLL overrides. Let me know what you think. The sound difference is most noticable when you are in doors (Like Caves). You can also see a difference if you test out the character sound animations by pressing Num Pad Key 1-6. Try those voices in a cave with and without 3D Sound + Environmental Effects.
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Ohhh wow. I'm definitely going to try this tomorrow!! Nice!!
-
- Site Admin
- Posts: 432
- Joined: Sun Dec 19, 2021 11:23 am
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
I've pushed the sound implementation change with the latest Cactus build. Release announcement here. All previous sound comparison videos have been removed and I've uploaded a new one.
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
Hmm. For me on Windows I'll be sticking with good ole BURAOT's implementation. I tested on my end back and forth for like 10 mins and noted everything sounds a tinge flatter/less resonant with OpenAL / DSOAL. This was most apparent with item sounds and particularly the Horadric Cube no less (you have quite a treasure there). Still, this is being actively developed and it's awesome that there's native support on Linux. In the future I will revisit this too see how it's coming along. 

-
- Site Admin
- Posts: 432
- Joined: Sun Dec 19, 2021 11:23 am
Re: [Diablo II] Enabling 3D Sound & Environmental Effects (EAX)
@Manny Sounds good. From my testing it sounded equal to or better than BURAOT's. but yea the project is actively developed so that's good
. One concern that the person who recommended DSOAL to me on reddit said was that the BURAOT DLLs may have just been a pirated "Creative ALchemy" set of DLLs (and possibly slightly modified), but I don't have any evidence of this. Although given I'm not familiar with the history of the DLL, it would definitely be better from a legal side (Distribution via Cactus) to side with a more "cleaner" implementation.
