Re: Problem running 7.1 headsets with OpenAL-Soft
Chris Robinson <[email protected]> Sat, 03 Nov 2012 06:14:36 -0700
| Newsgroups | gmane.comp.lib.openal |
|---|---|
| Message-ID | <[email protected]> |
On 11/02/2012 09:15 AM, Scott Dev wrote: > Hi, > > I have Plantronics 780 GameCom headsets running in Dolby 7.1 surround sound mode, > and I'm getting very loud screeching (maybe overdriven?) noises when running > with Windows XP hardware acceleration on. (Which is the default.) against > OpenAL-Soft. > > ... > > I was running OpenAL from Joal, which is from what I understand the > OpenAL (not Soft) version 6.14.357.24. And this worked fine as well. > I switched to lwjgl 2.8.4 which apparently has OpenAL-Soft 1.14. Hi. 1.14 seems to trip over a bug in DirectSound, or at least some drivers. With 1.14, OpenAL Soft defaults to trying to set 32-bit float output, and if that fails, retries with 16-bit int. However, despite specifying 32-bit float by using a WAVE_FORMAT_EXTENSIBLE type with a KSDATAFORMAT_SUBTYPE_IEEE_FLOAT subtype, DSound silently sets a 32-bit int format. So OpenAL Soft thinks it's set for 32-bit float and passes samples as such, even though it's being interpreted as 32-bit integers, which just makes it sound all kinds of wrong. The current Git version of OpenAL Soft has this fixed. It can also be fixed manually by forcing 16-bit int output. That's done by editing (creating, if needed) %AppData%\alsoft.ini and adding: [general] sample-type = int16 ..where %AppData% is the environment variable, probably something like "C:\Users\[user]\Application Data". Note that this only applies to hardware accelerated DirectSound. Using MMDevAPI (the default in Vista/7) is fine, as is software DSound. I believe WinMM output is fine too, but I haven't done any definitive testing with that. _______________________________________________ Openal mailing list [email protected] http://opensource.creative.com/mailman/listinfo/openal