From 9957d68ba5ef8ab019f332560fcb952793a07a8e Mon Sep 17 00:00:00 2001 From: Richard Allen Date: Wed, 18 May 2011 00:20:01 +0000 Subject: [PATCH] IOQ3 commit 1932 --- reaction/code/client/snd_openal.c | 32 ++++++++++++++++++++----------- 1 file changed, 21 insertions(+), 11 deletions(-) diff --git a/reaction/code/client/snd_openal.c b/reaction/code/client/snd_openal.c index 1420a80c..5a1d6d82 100644 --- a/reaction/code/client/snd_openal.c +++ b/reaction/code/client/snd_openal.c @@ -51,6 +51,8 @@ cvar_t *s_alEffectsLevel; static qboolean enumeration_ext = qfalse; +static qboolean enumeration_all_ext = qfalse; +static qboolean capture_ext = qfalse; /* ================= @@ -2634,8 +2636,7 @@ void S_AL_MasterGain( float gain ) S_AL_SoundInfo ================= */ -static -void S_AL_SoundInfo( void ) +static void S_AL_SoundInfo(void) { Com_Printf( "OpenAL info:\n" ); Com_Printf( " Vendor: %s\n", qalGetString( AL_VENDOR ) ); @@ -2643,15 +2644,21 @@ void S_AL_SoundInfo( void ) Com_Printf( " Renderer: %s\n", qalGetString( AL_RENDERER ) ); Com_Printf( " AL Extensions: %s\n", qalGetString( AL_EXTENSIONS ) ); Com_Printf( " ALC Extensions: %s\n", qalcGetString( alDevice, ALC_EXTENSIONS ) ); - if(enumeration_ext) - { + if(enumeration_all_ext) + Com_Printf(" Device: %s\n", qalcGetString(alDevice, ALC_ALL_DEVICES_SPECIFIER)); + else if(enumeration_ext) Com_Printf(" Device: %s\n", qalcGetString(alDevice, ALC_DEVICE_SPECIFIER)); + + if(enumeration_all_ext || enumeration_ext) Com_Printf("Available Devices:\n%s", s_alAvailableDevices->string); + #ifdef USE_VOIP - Com_Printf("Input Device: %s\n", qalcGetString(alCaptureDevice, ALC_DEVICE_SPECIFIER)); + if(capture_ext) + { + Com_Printf(" Input Device: %s\n", qalcGetString(alCaptureDevice, ALC_CAPTURE_DEVICE_SPECIFIER)); Com_Printf("Available Input Devices:\n%s", s_alAvailableInputDevices->string); -#endif } +#endif } @@ -3123,15 +3130,16 @@ qboolean S_AL_Init( soundInterface_t *si ) inputdevice = NULL; // Device enumeration support - if((enumeration_ext = qalcIsExtensionPresent(NULL, "ALC_ENUMERATE_ALL_EXT")) || - qalcIsExtensionPresent(NULL, "ALC_ENUMERATION_EXT") - ) + enumeration_all_ext = qalcIsExtensionPresent(NULL, "ALC_ENUMERATE_ALL_EXT"); + enumeration_ext = qalcIsExtensionPresent(NULL, "ALC_ENUMERATION_EXT"); + + if(enumeration_ext || enumeration_all_ext) { char devicenames[16384] = ""; const char *devicelist; const char *defaultdevice; int curlen; - + // get all available devices + the default device name. if(enumeration_ext) { @@ -3243,6 +3251,8 @@ qboolean S_AL_Init( soundInterface_t *si ) const char *defaultinputdevice; int curlen; + capture_ext = qtrue; + // get all available input devices + the default input device name. inputdevicelist = qalcGetString(NULL, ALC_CAPTURE_DEVICE_SPECIFIER); defaultinputdevice = qalcGetString(NULL, ALC_CAPTURE_DEFAULT_DEVICE_SPECIFIER); @@ -3269,7 +3279,7 @@ qboolean S_AL_Init( soundInterface_t *si ) alCaptureDevice = qalcCaptureOpenDevice(NULL, 8000, AL_FORMAT_MONO16, 4096); } Com_Printf( "OpenAL capture device %s.\n", - (alCaptureDevice == NULL) ? "failed to open" : "opened"); + (alCaptureDevice == NULL) ? "failed to open" : "opened"); } } #endif