Commit 6bd5c1b0 authored by Ryan C. Gordon's avatar Ryan C. Gordon

Reworked Windows waveOut code.

Implemented multi-device support, changed name to "winmm".

--HG--
rename : src/audio/windib/SDL_dibaudio.h => src/audio/winmm/SDL_winmm.h
parent ac93bd6e
...@@ -796,11 +796,11 @@ ...@@ -796,11 +796,11 @@
> >
</File> </File>
<File <File
RelativePath="..\..\src\audio\windib\SDL_dibaudio.c" RelativePath="..\..\src\audio\winmm\SDL_winmm.c"
> >
</File> </File>
<File <File
RelativePath="..\..\src\audio\windib\SDL_dibaudio.h" RelativePath="..\..\src\audio\winmm\SDL_winmm.h"
> >
</File> </File>
<File <File
......
...@@ -785,11 +785,11 @@ ...@@ -785,11 +785,11 @@
> >
</File> </File>
<File <File
RelativePath="..\..\src\audio\windib\SDL_dibaudio.c" RelativePath="..\..\src\audio\winmm\SDL_winmm.c"
> >
</File> </File>
<File <File
RelativePath="..\..\src\audio\windib\SDL_dibaudio.h" RelativePath="..\..\src\audio\winmm\SDL_winmm.h"
> >
</File> </File>
<File <File
......
...@@ -276,7 +276,7 @@ ...@@ -276,7 +276,7 @@
<ClInclude Include="..\..\src\video\SDL_blit_copy.h" /> <ClInclude Include="..\..\src\video\SDL_blit_copy.h" />
<ClInclude Include="..\..\src\video\SDL_blit_slow.h" /> <ClInclude Include="..\..\src\video\SDL_blit_slow.h" />
<ClInclude Include="..\..\src\video\SDL_shape_internals.h" /> <ClInclude Include="..\..\src\video\SDL_shape_internals.h" />
<ClInclude Include="..\..\src\audio\windib\SDL_dibaudio.h" /> <ClInclude Include="..\..\src\audio\winmm\SDL_winmm.h" />
<ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" /> <ClInclude Include="..\..\src\audio\disk\SDL_diskaudio.h" />
<ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" /> <ClInclude Include="..\..\src\audio\dummy\SDL_dummyaudio.h" />
<ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" /> <ClInclude Include="..\..\src\audio\directsound\SDL_directsound.h" />
...@@ -377,7 +377,7 @@ ...@@ -377,7 +377,7 @@
<ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" /> <ClCompile Include="..\..\src\cpuinfo\SDL_cpuinfo.c" />
<ClCompile Include="..\..\src\video\SDL_clipboard.c" /> <ClCompile Include="..\..\src\video\SDL_clipboard.c" />
<ClCompile Include="..\..\src\video\SDL_shape.c" /> <ClCompile Include="..\..\src\video\SDL_shape.c" />
<ClCompile Include="..\..\src\audio\windib\SDL_dibaudio.c" /> <ClCompile Include="..\..\src\audio\winmm\SDL_winmm.c" />
<ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" /> <ClCompile Include="..\..\src\audio\disk\SDL_diskaudio.c" />
<ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" /> <ClCompile Include="..\..\src\audio\dummy\SDL_dummyaudio.c" />
<ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" /> <ClCompile Include="..\..\src\audio\directsound\SDL_directsound.c" />
......
...@@ -2057,8 +2057,8 @@ AC_HELP_STRING([--enable-render-d3d], [enable the Direct3D render driver [[defau ...@@ -2057,8 +2057,8 @@ AC_HELP_STRING([--enable-render-d3d], [enable the Direct3D render driver [[defau
fi fi
# Set up files for the audio library # Set up files for the audio library
if test x$enable_audio = xyes; then if test x$enable_audio = xyes; then
AC_DEFINE(SDL_AUDIO_DRIVER_WINWAVEOUT, 1, [ ]) AC_DEFINE(SDL_AUDIO_DRIVER_WINMM, 1, [ ])
SOURCES="$SOURCES $srcdir/src/audio/windib/*.c" SOURCES="$SOURCES $srcdir/src/audio/winmm/*.c"
if test x$have_dsound = xyes; then if test x$have_dsound = xyes; then
AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND, 1, [ ]) AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND, 1, [ ])
SOURCES="$SOURCES $srcdir/src/audio/directsound/*.c" SOURCES="$SOURCES $srcdir/src/audio/directsound/*.c"
...@@ -2144,8 +2144,8 @@ AC_HELP_STRING([--enable-render-d3d], [enable the Direct3D render driver [[defau ...@@ -2144,8 +2144,8 @@ AC_HELP_STRING([--enable-render-d3d], [enable the Direct3D render driver [[defau
fi fi
# Set up files for the audio library # Set up files for the audio library
if test x$enable_audio = xyes; then if test x$enable_audio = xyes; then
AC_DEFINE(SDL_AUDIO_DRIVER_WINWAVEOUT, 1, [ ]) AC_DEFINE(SDL_AUDIO_DRIVER_WINMM, 1, [ ])
SOURCES="$SOURCES $srcdir/src/audio/windib/*.c" SOURCES="$SOURCES $srcdir/src/audio/winmm/*.c"
if test x$have_dsound = xyes; then if test x$have_dsound = xyes; then
AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND, 1, [ ]) AC_DEFINE(SDL_AUDIO_DRIVER_DSOUND, 1, [ ])
SOURCES="$SOURCES $srcdir/src/audio/directsound/*.c" SOURCES="$SOURCES $srcdir/src/audio/directsound/*.c"
......
...@@ -195,7 +195,7 @@ ...@@ -195,7 +195,7 @@
#undef SDL_AUDIO_DRIVER_PAUDIO #undef SDL_AUDIO_DRIVER_PAUDIO
#undef SDL_AUDIO_DRIVER_QSA #undef SDL_AUDIO_DRIVER_QSA
#undef SDL_AUDIO_DRIVER_SUNAUDIO #undef SDL_AUDIO_DRIVER_SUNAUDIO
#undef SDL_AUDIO_DRIVER_WINWAVEOUT #undef SDL_AUDIO_DRIVER_WINMM
#undef SDL_AUDIO_DRIVER_FUSIONSOUND #undef SDL_AUDIO_DRIVER_FUSIONSOUND
#undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC #undef SDL_AUDIO_DRIVER_FUSIONSOUND_DYNAMIC
......
...@@ -146,7 +146,7 @@ typedef unsigned int uintptr_t; ...@@ -146,7 +146,7 @@ typedef unsigned int uintptr_t;
#ifndef _WIN32_WCE #ifndef _WIN32_WCE
#define SDL_AUDIO_DRIVER_DSOUND 1 #define SDL_AUDIO_DRIVER_DSOUND 1
#endif #endif
#define SDL_AUDIO_DRIVER_WINWAVEOUT 1 #define SDL_AUDIO_DRIVER_WINMM 1
#define SDL_AUDIO_DRIVER_DISK 1 #define SDL_AUDIO_DRIVER_DISK 1
#define SDL_AUDIO_DRIVER_DUMMY 1 #define SDL_AUDIO_DRIVER_DUMMY 1
......
...@@ -53,7 +53,7 @@ extern AudioBootStrap ARTS_bootstrap; ...@@ -53,7 +53,7 @@ extern AudioBootStrap ARTS_bootstrap;
extern AudioBootStrap ESD_bootstrap; extern AudioBootStrap ESD_bootstrap;
extern AudioBootStrap NAS_bootstrap; extern AudioBootStrap NAS_bootstrap;
extern AudioBootStrap DSOUND_bootstrap; extern AudioBootStrap DSOUND_bootstrap;
extern AudioBootStrap WINWAVEOUT_bootstrap; extern AudioBootStrap WINMM_bootstrap;
extern AudioBootStrap PAUDIO_bootstrap; extern AudioBootStrap PAUDIO_bootstrap;
extern AudioBootStrap BEOSAUDIO_bootstrap; extern AudioBootStrap BEOSAUDIO_bootstrap;
extern AudioBootStrap COREAUDIO_bootstrap; extern AudioBootStrap COREAUDIO_bootstrap;
...@@ -100,8 +100,8 @@ static const AudioBootStrap *const bootstrap[] = { ...@@ -100,8 +100,8 @@ static const AudioBootStrap *const bootstrap[] = {
#if SDL_AUDIO_DRIVER_DSOUND #if SDL_AUDIO_DRIVER_DSOUND
&DSOUND_bootstrap, &DSOUND_bootstrap,
#endif #endif
#if SDL_AUDIO_DRIVER_WINWAVEOUT #if SDL_AUDIO_DRIVER_WINMM
&WINWAVEOUT_bootstrap, &WINMM_bootstrap,
#endif #endif
#if SDL_AUDIO_DRIVER_PAUDIO #if SDL_AUDIO_DRIVER_PAUDIO
&PAUDIO_bootstrap, &PAUDIO_bootstrap,
......
...@@ -20,8 +20,8 @@ ...@@ -20,8 +20,8 @@
*/ */
#include "SDL_config.h" #include "SDL_config.h"
#ifndef _SDL_dibaudio_h #ifndef _SDL_winmm_h
#define _SDL_dibaudio_h #define _SDL_winmm_h
#include "../SDL_sysaudio.h" #include "../SDL_sysaudio.h"
...@@ -32,13 +32,14 @@ ...@@ -32,13 +32,14 @@
struct SDL_PrivateAudioData struct SDL_PrivateAudioData
{ {
HWAVEOUT sound; HWAVEOUT hout;
HWAVEIN hin;
HANDLE audio_sem; HANDLE audio_sem;
Uint8 *mixbuf; /* The raw allocated mixing buffer */ Uint8 *mixbuf; /* The raw allocated mixing buffer */
WAVEHDR wavebuf[NUM_BUFFERS]; /* Wave audio fragments */ WAVEHDR wavebuf[NUM_BUFFERS]; /* Wave audio fragments */
int next_buffer; int next_buffer;
}; };
#endif /* _SDL_dibaudio_h */ #endif /* _SDL_winmm_h */
/* vi: set ts=4 sw=4 expandtab: */ /* vi: set ts=4 sw=4 expandtab: */
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment