Welcome to mirror list, hosted at ThFree Co, Russian Federation.

git.blender.org/blender.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJoerg Mueller <nexyon@gmail.com>2010-01-17 01:12:19 +0300
committerJoerg Mueller <nexyon@gmail.com>2010-01-17 01:12:19 +0300
commit0f55410e3d0f7997999ac8147677e572ef47e94e (patch)
treeb85cd1f673a9e9c6f8f6d212afd007d3ae874f06 /intern/audaspace
parent86414f48809413a326db2529486f302233a07e38 (diff)
Short term workaround for OpenAL + pulse bugs on ubuntu. Not sure if it works, people have to test and report please, I don't have ubuntu. Longer term we hope for an update of the ubuntu packages to fix the problem.
Diffstat (limited to 'intern/audaspace')
-rw-r--r--intern/audaspace/OpenAL/AUD_OpenALDevice.cpp18
1 files changed, 17 insertions, 1 deletions
diff --git a/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp b/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp
index 0d90b014943..087c7849a2c 100644
--- a/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp
+++ b/intern/audaspace/OpenAL/AUD_OpenALDevice.cpp
@@ -270,7 +270,23 @@ AUD_OpenALDevice::AUD_OpenALDevice(AUD_DeviceSpecs specs, int buffersize)
specs.channels = AUD_CHANNELS_STEREO;
specs.format = AUD_FORMAT_S16;
- m_device = alcOpenDevice(NULL);
+#if 0
+ if(alcIsExtensionPresent(NULL, "ALC_ENUMERATION_EXT") == AL_TRUE)
+ {
+ ALCchar* devices = const_cast<ALCchar*>(alcGetString(NULL, ALC_DEVICE_SPECIFIER));
+ printf("OpenAL devices (standard is: %s):\n", alcGetString(NULL, ALC_DEFAULT_DEVICE_SPECIFIER));
+
+ while(*devices)
+ {
+ printf("%s\n", devices);
+ devices += strlen(devices) + 1;
+ }
+ }
+#endif
+
+ m_device = alcOpenDevice("ALSA Software");
+ if(m_device == NULL)
+ m_device = alcOpenDevice(NULL);
if(!m_device)
AUD_THROW(AUD_ERROR_OPENAL);