-
Notifications
You must be signed in to change notification settings - Fork 4
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
UT2004 EAX 5.0 Issues #8
Comments
I saw complaints that the xfi patch actually breaks EAX in favor of other things. https://forums.beyondunreal.com/threads/x-fi-patch-and-eax.192611/ |
The problem with that post from 2010 is they were most likely using Creative Alchemy to emulate the sound which could create its own problems, there is very little info I can find on the patch and I haven't seen any video footage of it running on a pre Vista machine with the patch, because of that and the post being the only reference to issues regarding EAX being broken I'd argue makes it somewhat irrelevant. I did however test the game without the patch using the same methods I used in the original report. EAXEFX on its own: [EAXEFX] [I] DSOAL + EAXEFX: [EAXEFX] [I] The DSOAL log is exactly the same as before and doesn't open DirectSound3D but does use occlusion without the patch. |
UT2004 uses native openal, so... people using alchemy are doing it completely wrong. |
Yes and no, it uses both OpenAL and DirectSound. EAX was largely tied to DirectSound 3D and many games at the time even if they used OpenAL natively required DirectSound to have EAX function properly including UT2004. |
|
Are you sure the game uses EAX 5.0? |
I believe so although I could be wrong, according to info I can find the Sound Blaster X-Fi cards were released with EAX 5.0 and to support 128 voices, the patch as far as I can tell was just to show off the capabilities of these new cards and explicitly state the 128 voice support https://xfi.blogspot.com/2006/07/unreal-tournament-2004-x-fi-patch.html I did just test the file you posted too, same lack of reverb and occlusion however the log does comes up nice and clean. [EAXEFX] [I] DSOAL still seems to hang after the Create EAXX line, it doesn't open or close the device [EAXEFX] [I] Love your work by the way. |
It's a strange combination. Put DSOAL's dsoal-aldrv.dll into to test EAXEFX:
to test DSOAL:
|
You won't hear reverb with X-Fi patch neither with EAXEFX or DSOAL. |
It may be strange but it does spit out a log for UT2004 as it still uses DirectSound, the combination seems to work flawlessly on Hitman 2 Silent Assassin and Grand Theft Auto: Vice City even Halo Custom Edition, they all spit out logs like this: [EAXEFX] [I]
That could be the case and wouldn't surprise me, like I've said earlier I have never seen it in action on a period machine running Windows XP and using the Sound Blaster X-Fi so until that happens we may never know, this is why I've been trying with DSOAL as I'm under the impression that it's supposed to trick games into thinking you have the hardware so you can use the full EAX support and UT2004 still uses dsound.dll. Here's Halo Custom Edition running with the master build of DSOAL, OpenAL Soft and EAXEFX |
OpenAL in turn can use directsound, so "both things being loaded" is true for 100% of games. And last time I had checked, EAX5 didn't even have a directsound equivalent.
It should AFAIU? https://satsun.org/audio/
Putting aside you really don't seem to have understood how openal works, checking for EAX support and version is not really the same about checking for some specific hardware (just wild speculation here for the moment, though it is demonstrably true they have such discrimination inside their own ALchermy) |
The https://satsun.org/audio/ link you commented has this in the extended comments section.
This shows that DirectSound can definitely be a factor in weather or not EAX works properly for this game, if it can be relevant to the X-Fi patch too I have no idea. Yes I definitely don't understand how OpenAL works, my experience over the years has largely involved using various forms of dsound.dll to OpenAL wrappers and that's it. |
On my winxp system all UE2 games ship with a openal to dsound wrapper, suggesting the games were never meant to be primarily openal accelerated. This default driver works even when openal is not installed on the machine. It doesn't work with any openal games outside of UE2. This is on an audigy2. |
Good jesus. It doesn't mean the games were supposed to use the "generic hardware" device as their main path (like, there's no point in shipping openal at all otherwise) |
Openal games predate the openal installation package from creative. The device isn't even classified as generic hardware, but directsound3d. |
Well, the earliest instance of the documentation page on the windows enumeration is december 2004, so I think it's pretty safe to say it at least applies here. |
Updated "Known issues" in README for UT2004 with X-Fi patch. |
Tested UT2004 with X-Fi patch on Sound Blaster X-Fi HD hardware. |
Lmaooo. |
Yes, I did. |
Ok so, assuming you also had "H/W 3D Audio + EAX".. did you try the 32-bit game version? |
I did not use 64-bit patch for UT2004 at all. Tried all available drivers from official site - same result. |
Same result for USB Support Pack (the first link). Non-system driver in UT2004 resets CMSS setting to |
That's very odd, since it's like supposed to be the first driver for your soundcard. |
The oldest working version on the official site is |
Well, then I'd just hope somebody else could test this with an EMU20K1 card... |
Not sure if this will be helpful at all to track down any reasons behind this not working but Mass Effect 1 (not the remaster) will use EAXEFX natively however reverb will not work. EAXEFX only log: [EAXEFX] [I] While running through the DSOAL wrapper it does seem to work correctly. DSOAL + EAXEFX log: [EAXEFX] [I] I figured since they are both running some form of Unreal Engine and use EAX 5 it could be helpful information. I'm not sure how to tell if Mass Effect was actually using EAX 5 with DSOAL + EAXEFX or falling back to 3 but all I know is it definitely worked with that configuration. Also it appears that UT2004 does indeed use EAX 5 with the patch https://en.wikipedia.org/wiki/List_of_games_with_EAX_support |
Wikipedia has the credibility of a minion here to be honest... Though anyway, as always it's unclear how else you could have "eax" and "128 voices" without the fifth version. Anyhow, I guess maybe focusing on ME could be better than UT2004 in order to focus on eax 5 shenanigans (it's UT3, and aside of the usual "DeviceName" glitch, it never had any major problem). |
I already have OpenAL 1.1 installed from https://openal.org and have had the whole time, if I enable EAX on Mass Effect without using dsound.dll I get glitchy audio, inconsistent weapon sound volume, randomly muffled audio, no reverb etc. These are the same issues I've had on multiple systems over the years from Windows 7 to my current Windows 10 system. this will happen regardless of the default OpenAL32.dll being in the game folder, replaced or not there at all. Tried Windows XP compatibility mode with no change, you name it I've probably tried it. As far as I understand my OpenAL installation should be fine with these in my SysWOW64 folder: OpenAL32.dll (File version 6.14.357.24) The most effective setup I've had for Mass Effect was using Sound Blaster X-Fi MB3's Alchemy with sens_oal.dll renamed to ct_oal.dll in SysWOW64 to get Alchemy to work correctly and have "Using Native OpenAL Renderer" show up in the log and enable full EAX 5 support with perfectly clear audio. This was a long time ago however and Sound Blaster X-Fi MB3 isn't even something you can get from Creative anymore. |
"Openal 1.1" is just the major api version since (checks notes) october 2005. With this said, back to the game at hands.. Last time I checked, you don't "enable eax". Did you just mean using eaxefx as opposed to just openal-soft? |
Created the issue (#19) for Mass Effect. |
HI, I've come across a strange issue. This DLL appears to work to an extent with UT2004.
With the EAXEFX OpenAL32.dll placed into UT2004's System folder and 32bit OpenAL Soft 1.21.1.0 renamed to eaxefx_driver.dll also placed in the UT 2004 System folder along with alsoft.ini the game will recognise EAX 5.0 and use the music and weapon sounds from the SBXF_UTPATCH_US_3369 patch for the game.
HRTF audio appears to be fine but reverb and occlusion are missing, the eaxefx_log.txt will spit out a huge list of the same error until game close.
Here's a shortened version of the log:
[EAXEFX] [I]
[EAXEFX] [I] <<<<<<<<<<<<<<<<<<<<<<<<
[EAXEFX] [I] EAXEFX v1.0.5
[EAXEFX] [I] ------------------------
[EAXEFX] [I]
[EAXEFX] [I] Load AL driver.
[EAXEFX] [I] Try to load a driver "eaxefx_driver.dll".
[EAXEFX] [I] Load AL symbols (AL 1.1; ALC 1.1; EFX 1.0)
[EAXEFX] [I] Create EAXX.
[EAXEFX] [I] Open device "DirectSound3D".
[EAXEFX] [E] EAXGet failed.
[EAXEFX] [E] [EAXX_SOURCE] Property buffer too small.
[EAXEFX] [E] EAXGet failed.
[EAXEFX] [E] [EAXX_SOURCE] Property buffer too small.
[EAXEFX] [E] EAXGet failed.
[EAXEFX] [E] [EAXX_SOURCE] Property buffer too small.
[EAXEFX] [E] EAXGet failed.
[EAXEFX] [E] [EAXX_SOURCE] Property buffer too small.
[EAXEFX] [E] EAXGet failed.
[EAXEFX] [E] [EAXX_SOURCE] Property buffer too small.
[EAXEFX] [I] Close device.
[EAXEFX] [I]
[EAXEFX] [I] >>>>>>>>>>>>>>>>>>>>>>>>
[EAXEFX] [I]
Strange thing is the log will come up as successful while using DSOAL but all the EAX 5.0 related parts of the game (patched music and weapon sounds) won't work, reverb and occlusion doesn't work using this method either.
-Same eaxefx_driver.dll
-Renamed EAXEFX OpenAL32.dll in UT2004 System folder to dsoal-aldrv.dll
-Pasted DSOAL r391 dsound.dll in UT2004 System folder
Here is the log while running with DSOAL:
[EAXEFX] [I]
[EAXEFX] [I] <<<<<<<<<<<<<<<<<<<<<<<<
[EAXEFX] [I] EAXEFX v1.0.5
[EAXEFX] [I] ------------------------
[EAXEFX] [I]
[EAXEFX] [I] Load AL driver.
[EAXEFX] [I] Try to load a driver "eaxefx_driver.dll".
[EAXEFX] [I] Load AL symbols (AL 1.1; ALC 1.1; EFX 1.0).
[EAXEFX] [I] Create EAXX.
[EAXEFX] [I]
[EAXEFX] [I] >>>>>>>>>>>>>>>>>>>>>>>>
[EAXEFX] [I]
I have video footage of both methods in use to show some of what I'm talking about.
https://youtu.be/DBQl4n7uFLg
The text was updated successfully, but these errors were encountered: