TeddyTheBear wrote:I guess that makes sense not wanting to deal with all of Creative's crap but as HunterZ said there are other providers: OpenAL Soft, Blue Ripple Sound, AeonWave, ASUS and maybe a couple others as well as Creative and that would allow hardware acceleration for the providers who have hardware that supports it. I'm not trying to be overly critical of your work, Its really great! I can understand needing it to just work on everyone's machine and getting a quick version with XAudio2 out.
I need to test some of my games with it now when I can get the time. Thanks again!
I'm pretty happy whenever anyone takes an interest in it, so don't worry about being critical!

Also, "quick" is relative: Even though IndirectSound has only been publicly available fairly recently I've actually been working on it off and on for a year. Getting all of the details of the DirectSound API to work properly turned out to be a lot of work (particularly those features that less-than-well-documented) and so I was grateful to be able to use XAudio2 as much as I could.
HunterZ wrote:What about using OpenAL Soft (
http://kcat.strangesoft.net/openal.html)? It's LGPL licensed, so you should be able to embed its source in yours (or at least statically link it or something), and its effects engine may have some significant level of feature parity with EAX.
Well, a large part of the historical reasoning for using XAudio2 was related to those same frustrations that led me to "take matters into my own hands" and write IndirectSound, and I am willing to admit my bias against OpenAL both for its history and, to be honest, as an API. I guess the short version is that having a reference implementation of 3D positional audio was attractive to me, and I believe that using XAudio2 is the closest that one can get to the reference 3D positional audio that DirectSound3D was designed with (I have no proof, but I wouldn't be surprised if the same algorithms that Microsoft used for 3D positioning in DirectSound3D are being used in XAudio2).
(Interesting side note: I eventually ended up reinstalling my X-Fi and dual booting into Windows XP to test some things, and now that I can compare apples to apples I definitely prefer the way that Creative positions 3D sounds. This has made me consider trying to implement my own method to try and recreate what Creative is doing which would go against the "reference implementation" philosophy; I think if I ever
did try it, however, I would make it a non-default option.)
In any event, my motivation for writing IndirectSound was to restore 3D positional audio, with EAX emulation always being a "could potentially be nice in the future" feature. (I realize most gamers' priorities would be reversed, but I really love my 3D audio

.) I actually
have thought of using OpenAL Soft at least as a reference for EAX, but until/unless I release source code I've avoided it because of the LGPL. Regardless, I would have the same potential concerns about quality of reverb. Emulating the actual EAX functionality is definitely in the realms of possibility (even the versions higher than 2.0 that weren't an open standard aren't too hard to figure out with the help of the header files and the OpenAL documentation), but there's a difference between applying
some kind of reverb and actually having it sound like it's supposed to qualitatively. I actually don't know much about OpenAL Soft; do you know how close it sounds to a real Creative card?