int32 support for windib and windx5 audio backends.

This commit is contained in:
Ryan C. Gordon
2006-09-01 07:50:36 +00:00
parent 9abd54345c
commit bba6fd286f
2 changed files with 13 additions and 2 deletions

View File

@@ -248,7 +248,7 @@ DIB_OpenAudio(_THIS, SDL_AudioSpec * spec)
waveformat.wFormatTag = WAVE_FORMAT_PCM;
/* Determine the audio parameters from the AudioSpec */
switch (spec->format & 0xFF) {
switch (SDL_AUDIO_BITSIZE(spec->format)) {
case 8:
/* Unsigned 8 bit audio data */
spec->format = AUDIO_U8;
@@ -259,6 +259,11 @@ DIB_OpenAudio(_THIS, SDL_AudioSpec * spec)
spec->format = AUDIO_S16;
waveformat.wBitsPerSample = 16;
break;
case 16:
/* Signed 32 bit audio data */
spec->format = AUDIO_S32;
waveformat.wBitsPerSample = 32;
break;
default:
SDL_SetError("Unsupported audio format");
return (-1);

View File

@@ -658,7 +658,7 @@ DX5_OpenAudio(_THIS, SDL_AudioSpec * spec)
waveformat.wFormatTag = WAVE_FORMAT_PCM;
/* Determine the audio parameters from the AudioSpec */
switch (spec->format & 0xFF) {
switch (SDL_AUDIO_BITSIZE(spec->format)) {
case 8:
/* Unsigned 8 bit audio data */
spec->format = AUDIO_U8;
@@ -671,6 +671,12 @@ DX5_OpenAudio(_THIS, SDL_AudioSpec * spec)
silence = 0x00;
waveformat.wBitsPerSample = 16;
break;
case 32:
/* Signed 32 bit audio data */
spec->format = AUDIO_S32;
silence = 0x00;
waveformat.wBitsPerSample = 32;
break;
default:
SDL_SetError("Unsupported audio format");
return (-1);