How to enable 3D sound in games on Windows 7/8/10



Probably almost everyone knows that with the release of Windows Vista back in 2007, and in the wake of it and in all subsequent versions of Windows, the DirectSound3D sound API was removed from Windows, instead of DirectSound and DirectSound3D, the new XAudio2 and X3DAudio APIs began to be used. As a result, EAX (environmental sound effects) sound effects became unavailable in older games. In this article I will tell you how to return the same DirectSound3D / EAX to all old games that support these technologies when playing on Windows 7/8/10. Of course, experienced gamers all know this, but perhaps the article will be useful to someone.



Old games have not gone to the dustbin of history; on the contrary, they are in great demand, both among the users of the older generation and among the younger ones. Old games look better on modern high-resolution monitors, for many games mods are released that improve textures and shaders, but at first we were not lucky with the sound. With the release of the next generation of Windows Vista, following Windows XP, Microsoft developers considered that DirectSound3D was outdated - it had a 6-channel audio limitation, did not support audio compression, was processor-dependent, and therefore it was replaced by XAudio2 / X3DAudio. And since the EAX technology from Creative was not an independent API, as was the A3D from Aureal at one time, but just an extension of DirectSound3D, Creative's sound cards were overboard. If you do not use special software wrappers,then when playing on Windows 7/8/10 in old games menu items including EAX will not be active. And without EAX, the sound in games will not be so juicy, voluminous, positioned.



To solve this problem, Creative has developed ALchemy, a wrapper program that redirects DirectSound3D and EAX calls to the OpenAL cross-platform API. But this program works officially with sound cards of the Creative company, and even then not for all models. For example, a modern Audigy Rx card with a hardware DSP-processor CA10300 does not officially work. For owners of other sound cards, for example the built-in Realtek, you need to use the Creative Sound Blaster X-Fi MB driver software, which costs money. You can also try the native 3DSoundBack program, but it was not completed by Realtek - it stopped at the beta version, does not work well and does not work with all chips. But there is a better way, it's easier to use and it's free.



The first way



I'll start with sound cards from ASUS. Sound cards from ASUS DGX / DSX / DX / D1 / Phoebus are based on C-Media chips, and even ASUS AV66 / AV100 / AV200 chips are the same relabeled C-Media chips. The characteristics of these sound cards say that they support EAX 1/2/5. All these chips inherited from their predecessor CMI8738 DSP-hardware-software EAX 1/2, EAX 5 is already software.



Xonar series cardholders are very fortunate to have seen the GX button on the driver panel, but perhaps not everyone knows what it does. I will show in the screenshots from the AIDA64 program, this is how the DirectX sound tab looks with an inactive button and for owners of built-in Realtek sound cards in Windows 7/8/10:





All sound buffers are zero, all APIs are inactive. But right after turning on the GX button, we see





Those. very convenient - no need to launch additional programs like Creative ALchemy and copy the dsound.dll file to each folder with the game. This raises a big question, why didn't Creative do this in their drivers? Moreover, in all new Sound Blaster Z / Zx / AE models, it does not use a hardware DSP processor to process EAX, but does it in software via a driver using simplified algorithms. Some people think that software sound processing is enough because modern CPUs are much more powerful than the 10-year-old sound card processors that processed sound in hardware. It's not like that at all. The CPU is optimized to handle x86 commands, and the DSP is much faster at processing the sound of the central processor, and the video card is faster at rasterizing than the CPU. The central processor is enough for not complex algorithms,but high-quality reverberation with many sound sources will take up too many resources of even a powerful CPU, which will affect the FPS drop in games. This has already been recognized by Microsoft and has already returned support for sound processing with DSP-processors in Windows 8, as well as by Sony, which has added a separate chip for processing 3D sound to its PS5 set-top box.



Second way



This option is suitable for users of the built-in sound card in the motherboard, which are the majority. There is such a project DSOAL - this is a software emulation of DirectSound3D and EAX using OpenAL (OpenAL must be installed in the system) that does not require hardware acceleration. If your sound chip has any hardware functions for processing sound, then they will be used automatically. The program works so well that through it I have earned EAX on all old games where there is a check mark for EAX in the settings. This is what the AIDA64 window looks like if you copy the DSOAL files to the program folder:







If this did not happen and you have a picture, as in the very first screenshot, then native Windows dsound.dll does not allow to intercept the API, as it was in my case. Then this method will help - you will need to boot from some Windows Live-CD image and delete the dsound.dll file , not without the help of the Unlocker utility (after making a copy in case of rollback) from the C: \ Windows \ SysWOW64 directory and write down the same dsoal-aldrv.dll and dsound.dll . I did this and for me, both Windows itself and all the games worked without failures and so it is even more convenient - you do not need to copy these files to the folders with games every time, as a last resort, you can return the native dsound.dll backinto place. True, this method is suitable if you will not use other ASUS or Creative sound cards, because in this case DirectSound3D will always work for you only through DSOAL, and not through the native driver or ALchemy.



You can listen to DSOAL in this video:







→ You can download the ready-made library of the latest version from here



Comparing how EAX sounds on different sound cards, I was surprised to find that EAX sounds better on the built-in Realtek than on Asus or on my Audigy Rx. If you read the datasheets, then almost all Realtek chips support DirectSound3D / EAX 1 & 2. Running AIDA64 under Windows XP, you can see:





It turns out that Realtecs, unlike ASUS and Creative sound cards, support some other I3DL2 (not every Realtech datasheet says about this). I3DL2 (Interactive 3D Audio Level 2) is an open industry standard for working with 3D interactive sound, it is an extension to DirectSound3D for working with reverb and occlusion. In principle, analogous to EAX, but sounds nicer - more pleasant reverberation in footstep games when a character runs through a cave or castle, more realistic surround sound in rooms. Therefore, if the old game works on Windows XP, then I play only on XP, suddenly the sound engine will be able to use I3DL2. Although DSOAL is an open source project and anyone can improve it, he will never be able to use I3DL2, because OpenAL does not work with I3DL2, only EAX 1-5.But there is good news - starting with Windows 8, I3DL2 is included inXAudio 2.7 library . So, the sound in new games under Windows 10 will be better than under Windows 7.



And finally, I would like to remind you that all these 3D sound technologies were developed for headphones, you will hardly hear 3D sound on 2 speakers. To enjoy detailed sound, headphones of the SVEN AP860 level will not work, from inexpensive headphones you need to start with Axelvox HD 241 - there will already be a difference with SVEN AP860 , like heaven and earth. Be guided somehow.



All Articles