diff options
| author | Michael Maltese <michaeljosephmaltese@gmail.com> | 2017-03-31 14:59:54 -0700 |
|---|---|---|
| committer | Michael Maltese <michaeljosephmaltese@gmail.com> | 2017-03-31 14:59:57 -0700 |
| commit | af63235dc4104f23cc78b33000bb6f9e0319dbd5 (patch) | |
| tree | 3166208bda647c1c15ba790f0b5ee945549e5e63 /Source/Core/AudioCommon/AOSoundStream.cpp | |
| parent | 0aec9fa4dbaab839ba0a0c3dba11339464c20626 (diff) | |
Remove libao sound backend
A single person uses it[0], and it sometimes messes up the Linux
buildbots ("ninja: error: 'ao', needed by 'Binaries/dolphin-emu', missing
and no known rule to make it").
[0]: https://analytics.dolphin-emu.org/stats/popular-audio-backends.txt
Diffstat (limited to 'Source/Core/AudioCommon/AOSoundStream.cpp')
| -rw-r--r-- | Source/Core/AudioCommon/AOSoundStream.cpp | 82 |
1 files changed, 0 insertions, 82 deletions
diff --git a/Source/Core/AudioCommon/AOSoundStream.cpp b/Source/Core/AudioCommon/AOSoundStream.cpp deleted file mode 100644 index 93f1759785..0000000000 --- a/Source/Core/AudioCommon/AOSoundStream.cpp +++ /dev/null @@ -1,82 +0,0 @@ -// Copyright 2008 Dolphin Emulator Project -// Licensed under GPLv2+ -// Refer to the license.txt file included. - -#include <cstring> - -#include "AudioCommon/AOSoundStream.h" -#include "AudioCommon/Mixer.h" -#include "Common/Logging/Log.h" -#include "Common/MsgHandler.h" - -#if defined(HAVE_AO) && HAVE_AO - -void AOSound::SoundLoop() -{ - Common::SetCurrentThreadName("Audio thread - ao"); - - uint_32 numBytesToRender = 256; - ao_initialize(); - default_driver = ao_default_driver_id(); - format.bits = 16; - format.channels = 2; - format.rate = m_mixer->GetSampleRate(); - format.byte_format = AO_FMT_LITTLE; - - device = ao_open_live(default_driver, &format, nullptr /* no options */); - if (!device) - { - PanicAlertT("AudioCommon: Error opening AO device.\n"); - ao_shutdown(); - Stop(); - return; - } - - buf_size = format.bits / 8 * format.channels * format.rate; - - while (m_run_thread.IsSet()) - { - m_mixer->Mix(realtimeBuffer, numBytesToRender >> 2); - - { - std::lock_guard<std::mutex> lk(soundCriticalSection); - ao_play(device, (char*)realtimeBuffer, numBytesToRender); - } - - soundSyncEvent.Wait(); - } -} - -bool AOSound::Start() -{ - m_run_thread.Set(); - memset(realtimeBuffer, 0, sizeof(realtimeBuffer)); - - thread = std::thread(&AOSound::SoundLoop, this); - return true; -} - -void AOSound::Update() -{ - soundSyncEvent.Set(); -} - -void AOSound::Stop() -{ - m_run_thread.Clear(); - soundSyncEvent.Set(); - - { - std::lock_guard<std::mutex> lk(soundCriticalSection); - thread.join(); - - if (device) - ao_close(device); - - ao_shutdown(); - - device = nullptr; - } -} - -#endif |
