-
Notifications
You must be signed in to change notification settings - Fork 50
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
Installation instructions - clarifications #90
Comments
No. That's not how OpenAL Soft is installed, and
Yes, the
They might be necessary for DSOAL as well (see issue #34, where it seems there's some inconsistency in whether the registry tweaks are needed, or whether they work). It shouldn't hurt to set them for DSOAL any more than IndirectSound or ALchemy.
It basically tells Windows how and where it can load dsound.dll from when using certain Windows APIs. as I understand it. Without them, it seems certain API calls will only load dsound.dll from the system folder, while setting them lets those API calls load it from the game folder too.
Not for DSOAL. That's for installing OpenAL Soft system wide to enable as another driver for apps that use OpenAL natively (it adds additional "OpenAL Soft on ..." devices to select from). DSOAL uses
I don't know the game well enough to say if it should have that DLL or not.
No, ALchemy's settings don't influence DSOAL and they don't use the same ini files. |
Ok so the binaries (soft_al.dll) aren't used or referenced from there, but the folder structure is correct? appdata\roaming\openal. Naming the parent folder OpenAL is just for logical readability?
Ok so it's the APIs that deduce the location from those key names.
Thanks for replying! Cleared up a lot. |
Correct for the binaries. The folder structure depends somewhat on Windows. "
|
Sorry for any confusion. I really just meant if the root path following the env. variable where OAL Soft looks for HRTF etc. had to be named "openal". Could have saved you some time. Again - thanks for the clarification! |
As I already argued plenty of times(not that I'm really adamant about being right, but at least the theory went uncontested...)
Half-way related: installing alchemy automatically applies the original partial version of the registry fix, that may contribute to your confusion.
With the other caveats that I mentioned in #86 (comment)
I cannot make out any sense out of those instructions. People in #33 and even in #9 (though unsatisfied the with "quality" of the results) didn't have any egregious problem with making dsoal work at all. |
Ok so, just for the records.. Today somebody dropped the far cry sources. On the other hand, after following some more the fmodex.dll breadcrumb trail, I found the source is @IDrinkLava |
Preface
How to properly install and use DSOAL and OpenAL Soft seems very convoluted. Or rather there's a lot of different statements regarding the installation process so this is an attempt to clarify some things.
General installation truth
DSOAL relies on OpenAL Soft and both have 32/64 bit binaries.
You need both dsound.dll (dsoal) and soft_al.dll (openal soft) where soft_al.dll has to be renamed as dsoal-aldrv.dll.
Drop the corresponding dll files in the directories containing 32/64 bit executables for the games in question respectively.
Clear as day so far, but now it gets a bit messy.
Requirement or convenience/extended configuration?
Some say that you need to install OpenAL Soft in the users %appdata% folder.
More specifically that would be under "appdata\roaming" where you have to create a folder named OpenAL and put the contents of the binary release of OpenAL Soft found here https://openal-soft.org/#download in it.
Is this a requirement? Or is this only if you want to use non-default HRTF tables? Alternatively if this is only needed if you want a user global configuration with one general alsoft.ini file instead of having to create a local one for each individual game?
What's the order of precedence here? I assume local game installation > appdata install.
Troubleshooting/registry solutions or also a requirement?
According to this site/document https://docs.google.com/document/d/1SyOw7D0H2ecGxzPsCFEFKwupU8LuazUrlkI-gVTpyhc/edit
you have to add a total of four registry entries in order to "register" dsound.dll. The actual registry fix here https://www.indirectsound.com/registryIssues.html from what I can gather is primarily used for another DS restoration project called IndirectSound which translates DS calls into XAudio2. Does DSOAL require this registry fix at all? Or are there just cases where it might apply to DSOAL as well? Could it hurt having it?
What does registering dsound.dll mean in this context? As a recognizable name when the dll files are loaded? Is this dependent on having OAL Soft installed in %appdata%?`
OpenAL Soft in System32 and SYSWOW64
Can't remember the source, but I read somewhere that you have to/might have to install soft_al.dll in these locations. Is this true?
FMOD registration via Creative ALchemy
Again taken from here https://docs.google.com/document/d/1SyOw7D0H2ecGxzPsCFEFKwupU8LuazUrlkI-gVTpyhc/edit
In the case of Far Cry there is no fmodex.dll file present in the installation dir for the game. Should there be?
Lastly and also related to ALchemy; Does the dsound.ini file generated from ALchemy in any way affect DSOAL after replacing ALchemy's dsound.dll with the DSOAL one?
DSOAL/ALchemy tip
Just noticed that as soon as you just open ALchemy it replaces dsoal with it's own dsound.dll for ALL games already added in the ALchemy app in it's right column. Meaning you have to install dsoal locally for each game again every time you open ALchemy.
Closing words
While I do think I have a working setup (the dsoal/openal soft log file is generated saying dsoal-aldrv.dll is loaded) with both EAX, DS3D and a preferable HRTF table running in the games I'm currently playing the above sections are still unclear to me. Hope my questions are clear enough to understand what I mean.
Thanks in advance and for preserving one of the most important aspects of gaming.
The text was updated successfully, but these errors were encountered: