Re: Problem running 7.1 headsets with OpenAL-Soft

Scott Dev <[email protected]> Sat, 3 Nov 2012 10:57:30 -0700 (PDT)
Newsgroups gmane.comp.lib.openal
Message-ID <[email protected]>
 
That's exactly it!  The alsoft.ini fix works.  Thanks!  That makes my day!
 
I am trying to understand how to build the GIT version.  I read I need cmake
and gnu make.  I assume I need a C compiler?  Is there something free that
works for Windows XP?  (I'm usually in Java when on Windows.)
 
Otherwise when might the next release come out?
 
Thanks Chris!  That's very cool!
 
Scott
--------



----- Original Message -----
From: Chris Robinson <[email protected]>
To: "[email protected]" <[email protected]>
Cc: 
Sent: Saturday, November 3, 2012 6:14 AM
Subject: Re: [Openal] Problem running 7.1 headsets with OpenAL-Soft

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


_______________________________________________
Openal mailing list
[email protected]
http://opensource.creative.com/mailman/listinfo/openal