F.E.A.R.
jonpol 2013 年 7 月 30 日 下午 4:27
2
Restore 3D Positional Surround Sound
I've been working on a project to restore positional audio in older games when playing them using Windows Vista or later. I call it "IndirectSound", and it can be found here:

http://www.indirectsound.com

I actually started working on it after playing F.E.A.R. and realizing that it no longer had surround sound with my new audio setup. Now that I have it working, though, I can finally play F.E.A.R. using all 7.1 speakers :)

If anyone has surround speakers that haven't been working with F.E.A.R. (or other older games) I'd be really interested for you to try it out and give me feedback if it works on other machines or not. I started it as a personal project, but I imagine there must be other people like me who still enjoy playing older games but miss the surround sound in some of them.
最后由 jonpol 编辑于; 2013 年 7 月 30 日 下午 4:28
< >
正在显示第 1 - 15 条,共 106 条留言
2point4 2013 年 7 月 30 日 下午 5:35 
Well Creative Labs and Realtek already have this covered in the forms of ALchemy and 3DSoundBack. What does your solution offer above and beyond what these programs offer?
jonpol 2013 年 7 月 30 日 下午 7:02 
If you have audio hardware like one of those that you mentioned that already supports surround sound in older games then you do not need my solution (in fact, it would be worse in some cases because it doesn't emulate EAX yet). I started work on IndirectSound when I finally gave up on my Sound Blaster X-Fi and switched to uncompressed HDMI out from my NVIDIA graphics card. It actually is basically the same thing as ALchemy, except that it emulates hardware acceleration and should therefore work for any audio hardware. (As far as I know there is no other non-proprietary solution besides mine, but I might have missed one.)

Good question; thanks for your interest! :)
2point4 2013 年 7 月 30 日 下午 10:57 
Interesting. I admit I don't consider NVIDIA audio an acceptable audio solution, so I hadn't considered that those that use it would, in fact, be missing out on >2.1 speaker setups with games that use DirectSound3D.

Looking over your site now, I see that you mention ALchemy. I guess I should have clicked your link earlier before posting...

Interesting indeed. Have you actually tested it on any other hardware outside of your NVIDIA solution?
jonpol 2013 年 7 月 31 日 上午 2:26 
It's funny about using a graphics card for audio: It wasn't too long ago that I would never have considered it acceptable either. I bought an X-Fi Elite Pro when it came out because it seemed to offer the best audio possible, and so I really do care about audio quality. I won't go into too much detail about why I switched, but suffice it to say that the more research I did the more I realized that using the HDMI out of my existing graphics card would be better for my personal situation. (My computer is hooked up to my home theater system, which is substantially higher quality than the Sound Blaster; using HDMI is the only available solution that allows uncompressed 7.1 audio to be passed from a computer to an external source.)

I knew that this would mean I would no longer have the benefits of offloading audio processing to the external Sound Blaster, but no modern games do this anymore and I figured that my modern gaming machine would be able to handle older games with no problems. This has turned out to be unquestionably true.

I knew that this would also mean I would no longer have EAX in older games. This was definitely sad to me, and was the biggest cause for hesitation. (In fact, I almost bought an Auzentech card with HDMI support just for EAX alone, but from what I can tell they are no longer sold?)

What I didn't realize at the time, though, was that some older games relied on hardware acceleration to provide 3D positional audio. I already mentioned this in my first post, but F.E.A.R. was actually the first game I played after making the switch where I noticed I was only getting stereo sound, and when I did more research and discovered that there was nothing I could do to get it back I was pretty upset!

That made the wheels in my head turn, though: My audio hardware obviously was capable of outputting 7.1 positional audio in games, since it worked with newer games (actually, most games only support 5.1, but that's a different sad story). I started doing more research about how ALchemy actually works, and I slowly had the realization "I could do the exact same thing, but do it in software the same way that modern games do sound in Vista and Windows 7!"

To answer your other question, unfortunately no, I haven't tested on any hardware besides my own. I'm hoping some people will try it and give some feedback, though: I'm sure there are still bugs that will only manifest themselves on different hardware. The target audience is probably relatively small, but I know from Google searching that there are at least a handful of people out there in my same position for whom I think IndirectSound would be pretty cool. I know that I was pretty excited the first time I got it working well enough to hear surround sound in F.E.A.R. again :-)
Jonathan 2013 年 11 月 23 日 下午 7:04 
Thank you so much! Finally, my FEAR is now in surround sound (and sounding amazing).
jonpol 2013 年 11 月 24 日 下午 11:46 
You're welcome! Glad it's working for you.
Dog9Mango 2013 年 11 月 25 日 下午 12:56 
Noticed a marked improvement in sound quality. This is great.
MenschDB 2014 年 5 月 10 日 下午 12:22 
You, Sir, are a God.

3D Soundback fron Realtek did not work, Alchemy could not be installed - your dll worked just fine. Awesome! A Horror game gets so much out of surround sound!

Will there be "EAX HD" in the future?

Thank you!!

SpectatorX 2014 年 5 月 11 日 上午 2:26 
Will test it later with some games and my integrated realtek soundcard. For every day use i'm using x-fi titanium and correct me if i'm wrong but your solution works similar way as alchemy but is compatible with any hardware, right?
At least alchemy creates the same files in games to which it is applied to.
jonpol 2014 年 5 月 12 日 上午 11:31 
引用自 F.S.M.
Will there be "EAX HD" in the future?

There are two issues: 1) Emulating EAX at all and 2) Emulating the more recent versions of EAX:
  1. IndirectSound currently emulates EAX support, but it doesn't actually emulate EAX itself. In other words, IndirectSound pretends that EAX is available, and from a game's perspective it is, but none of the actual EAX audio effects are played. I did this as a first step because some games won't play any 3D sound at all if EAX support isn't present.
  2. EAX 1 and 2 are open standards, which means that the interface it works is published and anyone may implement their own version. EAX 3-5, though, are closed standards, and Creative never published the interface. I have done a bit of reverse engineering to figure out how they work, but it's quite a bit more difficult to emulate it without documentation. (ASUS and Creative have argued about whether ASUS's recent cards "really" provide EAX HD, for example.)

I would really like to one day emulate EAX, but it's a tricky problem. For the most part, IndirectSound uses Microsoft's XAudio2 reference implementation to emulate DirectSound, but there is no corresponding reference implementation for EAX. This means that all of the reverb-related effects have to be programmed from scratch, and although I'm an audio enthusiast I'm not an audio expert. It's definitely on my wish list to do, but progress is slow.

Regarding EAX 3-5, I don't see any compelling reason to work on emulating fake support like I did with 1-2, and so it seems like a lower priority to me than emulating real support for 1-2. If I ever get that done, though, 3-5 would be the next logical step. :-)

Thanks for your interest and kind remarks!
John-Paul
jonpol 2014 年 5 月 12 日 上午 11:38 
引用自 SpectatorX
Correct me if i'm wrong but your solution works similar way as alchemy but is compatible with any hardware, right?
At least alchemy creates the same files in games to which it is applied to.

Yes, you are correct. I explain a bit how it works here:

http://www.indirectsound.com/#howDoesItWork

ALchemy uses the exact same method, which is why they both require the file dsound.dll. The dsound.ini file is optional and I could have chosen a different name to not "compete" with ALchemy, but it really makes the most sense to me (which is probably why they also used it).

And yes, IndirectSound has the big advantage that it works with any hardware. If you have a Creative sound card then ALchemy is a better solution (particularly because EAX will work), and if you have an ASUS Xonar it may be better (I've never owned one), but for everything else IndirectSound is the best choice that I know of.
最后由 jonpol 编辑于; 2014 年 5 月 12 日 上午 11:39
SpectatorX 2014 年 5 月 12 日 下午 1:06 
You could change name of file, if you do not want to compete with alchemy, to, for example "indsound.ini" and .dll which would still make sense, at least on naming perspective.

I'm aware in my case alchemy is the best choice but i mean i could test your solution with realtek onboard audio and some games to provide you a little bit of support. When i will do some testing i will provide you results.
jonpol 2014 年 5 月 12 日 下午 1:41 
引用自 SpectatorX
You could change name of file, if you do not want to compete with alchemy, to, for example "indsound.ini" and .dll which would still make sense, at least on naming perspective.

I'm aware in my case alchemy is the best choice but i mean i could test your solution with realtek onboard audio and some games to provide you a little bit of support. When i will do some testing i will provide you results.

The DLL must be named dsound.dll but yes, I could rename the INI file to something different. I think that having the same name is nice because the files then cluster together in Windows Explorer, but I can see the advantage of avoiding conflicts with ALchemy. I will think about it :-)

I'd appreciate any testing you are able to do. Thanks!
Dot Matrix 2014 年 9 月 21 日 上午 10:31 
Hello,

I tried your solution and copied dsound.dll and dsound.ini into the FEAR folder and the first two EAX options can now be enabled but I still don't get surround just stereo. =(
The dsound.log contains the following:
IndirectSound was loaded dynamically by a call to LoadLibrary()
The IndirectSound library being loaded is located at D:\Steam\steamapps\common\FEAR Ultimate Shooter Edition\dsound.dll
Version -- 0.10
The process loading IndirectSound is located at D:\Steam\steamapps\common\FEAR Ultimate Shooter Edition\FEAR.exe
Product Name -- F.E.A.R.
Product Version -- 1.08.282.0
File Description -- F.E.A.R.
File Version -- 1.08.282.0
Initializing User Settings
128 hardware buffers will be emulated
EAX 1.0 support will be emulated
EAX 2.0 support will be emulated
2D sounds with mono sources will use "center" behavior
(sounds will play out of the front center speaker if it exists
and the front left and right speakers otherwise)
3D sounds with disabled processing will use "2D" behavior
(sounds will play out of the same speakers that they would if they were 2D)
DirectSound thinks that you have a quad speaker configuration,
meaning left and right front speakers, and left and right rear speakers
IndirectSound is being unloaded because the process is terminating
XAudio2 has encountered a critical error!
The audio device was removed or stopped responding
The only way to recover is to release the XAudio2 instance and create a new one...
I have Realtek HD audio with quad speakers, what should I do?
Dot Matrix 2014 年 9 月 23 日 上午 9:16 
Now the strangest thing happened, for some unexplainable reason surround works now. =)

I had to turn EAX hardware mixing off as it played the music too loud and didn't react to the volume slider.
< >
正在显示第 1 - 15 条,共 106 条留言
每页显示数: 1530 50