diff options
author | Chris Robinson <[email protected]> | 2009-08-15 13:20:35 -0700 |
---|---|---|
committer | Chris Robinson <[email protected]> | 2009-08-15 13:20:35 -0700 |
commit | dc26261065a7ff78657ac79accc993c78069deca (patch) | |
tree | 2b9696d7aedc196acce6f1b05409c0f8237abf13 /Alc/oss.c | |
parent | 9bea67fb1c99698ccdf9cfa695a09036846163c6 (diff) |
Support 32-bit float output
Diffstat (limited to 'Alc/oss.c')
-rw-r--r-- | Alc/oss.c | 11 |
1 files changed, 11 insertions, 0 deletions
@@ -203,6 +203,17 @@ static ALCboolean oss_start_context(ALCdevice *device, ALCcontext *context) case 1: ossFormat = AFMT_U8; break; + case 4: + switch(aluChannelsFromFormat(device->Format)) + { + case 1: device->Format = AL_FORMAT_MONO16; break; + case 2: device->Format = AL_FORMAT_STEREO16; break; + case 4: device->Format = AL_FORMAT_QUAD16; break; + case 6: device->Format = AL_FORMAT_51CHN16; break; + case 7: device->Format = AL_FORMAT_61CHN16; break; + case 8: device->Format = AL_FORMAT_71CHN16; break; + } + /* fall-through */ case 2: ossFormat = AFMT_S16_NE; break; |