Restoring Aureal 3D (A3D) by Alchemy
(or by DSOAL)
Restoring just DirectSound by DSOAL,
overwriting \DLL sound libraries.
I. New instruction for (I think) crashless and sound disappear-free A3D in Rayman 2:
To restore Aureal 3D effects in Rayman 2:
1. Install Creative Alchemy
(for non-Creative cards check Alchemy for All tool
http://forums.thedarkmod.com/topic/1824 ... soundcard/)
2. Then install the game in the Alchemy (or make sure that Alchemy's dsound.dll and dsound.ini are present near Rayman2.exe in the game folder)
3. Copy these files into Rayman2\DLL folder
4. Then install A3D Live
http://www.worknd.ru/A3D-Live.exe (mirror: https://yadi.sk/d/6T0eYWdQ15Tx6A)
5. Most probably game will crash on A3D splash sound, so navigate to Windows folder and search for a3dsplhs.exe and delete it.
* A3D Live with Alchemy permanently crashes for me when new drivers from 2019 dedicated for Creative cards and W10 1803 build are installed. Previously I had PAX_SBXF_PCDRV_L11_2_30_0011_2017v1.00 drivers and it works with them on older W10 build. Be aware, that every new soundcard driver installation replaces a3d drivers (so also A3D Live installation which will need to be reinstalled).
* In some cases you must load the game very fast fast to avoid crash in main menu (especially when using dgVoodoo/DX6 since it loads slower than nGlide, but with nGlide it may happen as well).
* Using Alchemy on Creative cards you can also encounter a bug (probably on old 2017 drivers) that won't let you go through main menu and load the save even fast (Rayman2.exe crash in dsound.dll). The solution for it, is just to restart the computer. This particular bug exist when you cannot switch to Entertainment/Creation/Game Mode when you switched already once after system boot (Creative Audio Control Panel will return error that driver is in use and your new choice will be executed after restart).
6*. Update. For further changes in sound/spatialization quality download this ini and copy it to DLL folder. Open it, and edit line
GUID for WinNT=
Write there what you have written here described as "default device" - e.g.
GUID for WinNT= Speakers/Headphones (Realtek High Definition Audio) (rewrite your diactric letters if present as well!)
If the full device name there ends shortened with "..." go to Device Manager to get the full name.
The name can be generated to ini automatically with this: tool
The tool to work requires copying to DATA folder along with dsound.dll/ini, and then replacing all other generated info with provided config which we edited to preserve all my changes.
The new generated ini file not only relies just on changing Primary Sound Driver to your sound card name driver and changing buffer to 128, it contains also few previous valuable edits, but has some additional ones which can affect sound quality so be aware.
I used headphones, but stereo setting (default) in ini generates better spatialization effects than headphones setting.
Also please note that manual GUID for WinNT keeps resetting to "Primary Sound Driver", so keep it read only if changes made in this point sound better for you in comparison to ini from point 3. Long story short - spatialization in point 3 is more recognisable, but sounds are less present on a sound stage. It's up to you.
**7. For further changes in quality, alternatively get Donald Duck game sound libraries if it won't start causing unbearable crashes, but as it comes from my testing, it may cause crashes after level completion in comparison to the original Rayman 2 library:
[the same cheksums of WAVa1BVR.dll as patch hosted on fanpage.de and A3D patch (ttsndfix.zip) on torrent sites or achive.org under Fixes/Sound Fix/WAVa1BVR.dll].
If you have unbearable crashes of the game on startup, just uninstall A3D Live - go to Control Panel and uninstall it like other programs, but sound disapearing will be more frequent and will persist until you load next level from portal.
Even with A3D Live, you can encounter from time to time some sound disapearing, but it won't be so frequent and permament. Exception is Precipice Part 3, when you can encounter permament sound disapearing, but only till you get to the fight with ninja pirate - it doesn't require resetting level to restore SFX back.
I tested also A3D Alchemy (A3D driver with IndirectSound wrapper hardcoded), but it somehow generates worse specialization effect, and also requires putting Creative Alchemy's dsoundl.dll to the game folder to fix massive sound issues.
Alternatively instead of Alchemy you can use universal DSOAL wrapper for better spatialization and in case of unbearable crashes using method above, but once it didn't work for me (with both A3D set in snd.cpa and with A3D Live installed). Later when I somehow managed to make it work, the game sound effects disappeared after some period of time even when A3D Live was installed (Alchemy with A3D Live seems to fix it).
DSOAL probably doesn't work on W10 build 1803 and up.
The guy here https://www.youtube.com/watch?v=3CvgxWhZhXU gives more details on DSOAL using this game, read the description; I just didn't use A2D linked there, it's not strictly necessary)
Snd_Cpa.ini file from step 3 (for archive purposes):
Code: Select all
[Options] Sound_ON_OFF=ON MPEG_ON_OFF=ON WAV_ON_OFF=ON ADPCM_ON_OFF=ON CD_ON_OFF=OFF SUPERVISATER_ON_OFF=ON SXD_DIST_SATUR=8 SXD_DIST_FADE=30 FORCE_LOAD_BANKS=ON [DLL_Test] File0=WAVa1 [DLL_Sxd] Unconditionnal=WAVa1 File0=WAVa1 [email protected] File1=WAVMW [email protected] Default=WAVMW [DLL_Adpcm] Unconditionnal=None File0=APMMX [email protected] Default=APMP5 [Directx3D Options] GUID for WinNT=Primary Sound Driver Disable A3D=No Speakers Configuration=Stereo Nb Voices=64
II. For Tonic Trouble (Special Edition) A3D restoration:
Use the same steps as above, but in the end, use this ini:
For retail/final version see PCGamingWiki Tonic Trouble page if it doesn't work
Without A3D Live it may happen that error about outdated A3D library error will be shown instead of splash. If sound won't disappear in the game permanently, you can ignore it, and press Alt+Tab to return to the game immediately after A3D splash screen to avoid game crash on startup if you will wait to long. If sound disappears, and error shows, try installing A3D Live again.
As an alternative for A3D Live for fix error on startup, and to avoid A3D issues, copy other a3d.dll driver from this DLL archive site (but none of a3d.dll libaries beside A3D Live will prevent from sound disapearing issue):
https://www.dll-files.com/a3d.dll.html (pick version 80.x 64 KB, it may fix startup splash error issue, and not cause the game to crash)
Copy it and overwrite in Windows\syswow64
(Safe mode or Take ownership tool (W10) executing might be necessary.
Sometimes you need to manually register the library in CMD to make it work:
http://www.ctimls.com/Support/KB/How%20 ... er_dll.htm
Tested on GOG version, nGlide, and W10 (dgVoodoo might be more problematic or even won't you go through main menu fast in some cases and configurations).
In case of unbearable crashes of the game, check out this method (DSOAL) listed in description of the video (it will generate sound disappearing issue, though):
Synthesis couldn’t restore 44kHz support by the sound engine, despite the fact of achieving properly decoding 44kHz custom music – but played in 22kHz:
(but A3D/dsound wrapper/edited snd_cpa.ini generally helps achieving better output frequency in this game).
Even when Synthesis overwrote sound libraries from Donald Duck Quack Attack (2000) which actually helped kooz in Tonic Trouble to actually change engine’s sample rate:
enabling A3D also didn't solve the problem. Full 44kHz can't be played by the game even with 44kHz game music files. The game still lowers sample rate.
III. Instruction about enhancing sound quality without using A3D (e.g. if someone doesn't like 3D HRTF effect)
What is the purpose of Alchemy/DSOAL dsound.dll file?
It’s restoring DirectSound, which had been deprecated since Windows Vista (by worsening overall sound quality in lots of older games), and served to hardware acceleration of sound cards. It was used by many sound engines in those times.
Sound engine of Rayman 2 has:
- 2D driver (default),
- Aureal3D (A3D),
- buggy DirectSound (no music; or I failed with ini editing or wrapper).
Alchemy/DSOAL is still required to make all of them work like intended in Win 9.x times, and enhancing overall sound quality, even in 2D mode.
In R2, in scenario without using A3D, I recommend using DSOAL as a tool of restoration DirectSound (IMHO – positioning in this library is better than in Alchemy, even when it is not using HRTF (like the version linked in the thread), though general sound quality is better in Alchemy for me).
For even better sound quality I also prefer overwriting game sound libraries to these used in Donald Duck Quack Attack. Then I recommend combining DSOAL with DD libraries for better results.
For A3D - Alchemy, A3D Live, and stock library (or DD if you don't notice performance difference - but I didn't test it entirely in matter of crashes, bugs, sound disappearing [though without A3D Live, DD library may behave a bit better]
For better spatialization with A3D - newest DSOAL (with sound diapering issues) downloaded from Nexus for Fallout with HRTF in ini activated (link given in description of the video linked at the top)
Instruction for old DSOAL and default (2D) sound renderer (without Alchemy and A3D):
1. Copy dsoal (dsound.dll and openal32.dll) to root game directory (\Rayman 2)
2. Overwrite sound libraries from Donald Duck in folder Rayman 2\DLL
https://yadi.sk/d/McvOBFGk3U6Tdz (R2 only)
3. Speaker configuration (2.0, 5.1) may have an influence on sound quality even for 2.0 only playback (look dsoal readme for reference).
4. Music may become quieter (if so, just adjust it in game options).
5. The game stops using injected dsound.dll/OpenAL32 after you press Alt+Tab (e.g. during using Reshade/SweetFX dll injector), the game completely stops working after alt tabbing – not all injected dll’s starts to work again afterwards). Be aware.
In below site, uploaded sound library seems to be a bit newer than that from Donald Duck, but has the same checksums. You can find it here:
http://www.rayman-fanpage.de/rayman2/ra ... ysound.exe
Snd_Cpa.ini in the link https://yadi.sk/i/owh-f8QH3ZYDiB (I think it's for A3D, not 2D unlike just above).
It is another OpenSpace engine library responsible for enabling A3D along with Creative Alchemy (dsoal/indirect sound cause glitches in R2).
Claimed to fix sound disappearing issues, although it didn't when I tested. You can try out.
Main page: http://www.rayman-fanpage.de/rayman2/ra ... nglish.htm
Original library has the best performance during recording via Windows DVR when using Reshade/SweetFX (without tex mod performance patch yet).
Donald Duck maybe sounds a bit better, and that from the fanpage prevented from achieving 60 FPS while using fast scroll lock toggling hack without the patch (details in my R2 Reshade/SweetFX thread).
From time to time, unfortunately sound disappears in the middle of the level, or certain sound.
DD library and fanpage library can be a bit less vulnerable for the bug with disapearing sound.
Probably just A3D in this game wasn't exactly intended to work, and it's not refined.
And there are some sound distortions introduced, like change of pitch of some jingles during movement using A3D.
Another interesting bunch of information about sound drivers in the game:
https://tcrf.net/Proto:Rayman_2:_The_Gr ... und_Script
Thanks a lot for your exhaustive answers in the case.
dsound.dll almost never exists nearby any game files, but it doesn't mean that they won't be used if present (it's easy to check it in Process Explorer.
The same goes for ddraw.dll in R2 (when DX6 is set), dinput, or d3d8, d3d9, dxgi (when nGlide reroots it to dxgi) used in other games.
I think that Rayman 2 itself, apart from Tonic Trouble, causes just specific problems with getting work 44kHz. dsoal only changes the way of mixing the sound, not really a sample rate. In dsoal readme we can also find that 5.1 configuration can force the library to use WASAPI (so speaker level in control panel wouldn't be visible). That's the last thing which comes to my mind about library itself which may change anything in this case.
More information about A3D wrapping here:
https://docs.google.com/document/d/1SyO ... Tpyhc/edit