summaryrefslogtreecommitdiff
path: root/Source/Core/AudioCommon/OpenALStream.cpp
diff options
context:
space:
mode:
authorMichael Maltese <mchtly@gmail.com>2017-06-25 23:12:44 -0700
committerMichael Maltese <mchtly@gmail.com>2017-06-27 00:06:13 -0700
commit32470ef284485d9d5db73e115bc56e718524c81a (patch)
tree6b8b51e8108279226e37c5ab4d6df638ab6708f4 /Source/Core/AudioCommon/OpenALStream.cpp
parent56961f5561c22b5face92a27f71050ab74469dfb (diff)
clean up OpenALStream::Start()
Diffstat (limited to 'Source/Core/AudioCommon/OpenALStream.cpp')
-rw-r--r--Source/Core/AudioCommon/OpenALStream.cpp61
1 files changed, 27 insertions, 34 deletions
diff --git a/Source/Core/AudioCommon/OpenALStream.cpp b/Source/Core/AudioCommon/OpenALStream.cpp
index 75ba493a07..753a925288 100644
--- a/Source/Core/AudioCommon/OpenALStream.cpp
+++ b/Source/Core/AudioCommon/OpenALStream.cpp
@@ -24,48 +24,41 @@
//
bool OpenALStream::Start()
{
- m_run_thread.Set();
- bool bReturn = false;
-
ALDeviceList pDeviceList;
- if (pDeviceList.GetNumDevices())
+ if (!pDeviceList.GetNumDevices())
{
- char* defDevName = pDeviceList.GetDeviceName(pDeviceList.GetDefaultDevice());
+ PanicAlertT("OpenAL: can't find sound devices");
+ return false;
+ }
- INFO_LOG(AUDIO, "Found OpenAL device %s", defDevName);
+ char* defDevName = pDeviceList.GetDeviceName(pDeviceList.GetDefaultDevice());
- ALCdevice* pDevice = alcOpenDevice(defDevName);
- if (pDevice)
- {
- ALCcontext* pContext = alcCreateContext(pDevice, nullptr);
- if (pContext)
- {
- // Used to determine an appropriate period size (2x period = total buffer size)
- // ALCint refresh;
- // alcGetIntegerv(pDevice, ALC_REFRESH, 1, &refresh);
- // period_size_in_millisec = 1000 / refresh;
-
- alcMakeContextCurrent(pContext);
- thread = std::thread(&OpenALStream::SoundLoop, this);
- bReturn = true;
- }
- else
- {
- alcCloseDevice(pDevice);
- PanicAlertT("OpenAL: can't create context for device %s", defDevName);
- }
- }
- else
- {
- PanicAlertT("OpenAL: can't open device %s", defDevName);
- }
+ INFO_LOG(AUDIO, "Found OpenAL device %s", defDevName);
+
+ ALCdevice* pDevice = alcOpenDevice(defDevName);
+ if (!pDevice)
+ {
+ PanicAlertT("OpenAL: can't open device %s", defDevName);
+ return false;
}
- else
+
+ ALCcontext* pContext = alcCreateContext(pDevice, nullptr);
+ if (!pContext)
{
- PanicAlertT("OpenAL: can't find sound devices");
+ alcCloseDevice(pDevice);
+ PanicAlertT("OpenAL: can't create context for device %s", defDevName);
+ return false;
}
- return bReturn;
+ // Used to determine an appropriate period size (2x period = total buffer size)
+ // ALCint refresh;
+ // alcGetIntegerv(pDevice, ALC_REFRESH, 1, &refresh);
+ // period_size_in_millisec = 1000 / refresh;
+
+ alcMakeContextCurrent(pContext);
+ m_run_thread.Set();
+ thread = std::thread(&OpenALStream::SoundLoop, this);
+ return true;
}
void OpenALStream::Stop()