From bdb486ccaa5d4643043dc821dc97631002ae2473 Mon Sep 17 00:00:00 2001 From: Connor McLaughlin Date: Thu, 4 Aug 2022 21:39:15 +1000 Subject: [PATCH] Settings: Fix build without cubeb --- src/core/settings.h | 12 +++++++----- src/frontend-common/common_host.cpp | 8 ++++---- src/frontend-common/common_host.h | 8 ++++---- 3 files changed, 15 insertions(+), 13 deletions(-) diff --git a/src/core/settings.h b/src/core/settings.h index 4f89f1d71..34bd5310e 100644 --- a/src/core/settings.h +++ b/src/core/settings.h @@ -386,12 +386,14 @@ struct Settings static constexpr CPUFastmemMode DEFAULT_CPU_FASTMEM_MODE = CPUFastmemMode::Disabled; #endif -#if defined(__ANDROID__) - static constexpr AudioBackend DEFAULT_AUDIO_BACKEND = AudioBackend::OpenSLES; -#elif defined(_UWP) - static constexpr AudioBackend DEFAULT_AUDIO_BACKEND = AudioBackend::XAudio2; -#else +#if defined(WITH_CUBEB) static constexpr AudioBackend DEFAULT_AUDIO_BACKEND = AudioBackend::Cubeb; +#elif defined(_WIN32) + static constexpr AudioBackend DEFAULT_AUDIO_BACKEND = AudioBackend::XAudio2; +#elif defined(__ANDROID__) + static constexpr AudioBackend DEFAULT_AUDIO_BACKEND = AudioBackend::AAudio; +#else + static constexpr AudioBackend DEFAULT_AUDIO_BACKEND = AudioBackend::Null; #endif static constexpr DisplayCropMode DEFAULT_DISPLAY_CROP_MODE = DisplayCropMode::Overscan; diff --git a/src/frontend-common/common_host.cpp b/src/frontend-common/common_host.cpp index efd9216f7..70bb7ba52 100644 --- a/src/frontend-common/common_host.cpp +++ b/src/frontend-common/common_host.cpp @@ -136,10 +136,7 @@ std::unique_ptr Host::CreateAudioStream(AudioBackend backend, u32 s { switch (backend) { - case AudioBackend::Null: - return AudioStream::CreateNullStream(sample_rate, channels, buffer_ms); - -#ifndef _UWP +#ifdef WITH_CUBEB case AudioBackend::Cubeb: return CommonHost::CreateCubebAudioStream(sample_rate, channels, buffer_ms, latency_ms, stretch); #endif @@ -149,6 +146,9 @@ std::unique_ptr Host::CreateAudioStream(AudioBackend backend, u32 s return CommonHost::CreateXAudio2Stream(sample_rate, channels, buffer_ms, latency_ms, stretch); #endif + case AudioBackend::Null: + return AudioStream::CreateNullStream(sample_rate, channels, buffer_ms); + default: return nullptr; } diff --git a/src/frontend-common/common_host.h b/src/frontend-common/common_host.h index 8f9fabf54..9d4a02762 100644 --- a/src/frontend-common/common_host.h +++ b/src/frontend-common/common_host.h @@ -30,14 +30,14 @@ void PumpMessagesOnCPUThread(); bool CreateHostDisplayResources(); void ReleaseHostDisplayResources(); +#ifdef WITH_CUBEB +std::unique_ptr CreateCubebAudioStream(u32 sample_rate, u32 channels, u32 buffer_ms, u32 latency_ms, + AudioStretchMode stretch); +#endif #ifdef _WIN32 std::unique_ptr CreateXAudio2Stream(u32 sample_rate, u32 channels, u32 buffer_ms, u32 latency_ms, AudioStretchMode stretch); #endif -#ifndef _UWP -std::unique_ptr CreateCubebAudioStream(u32 sample_rate, u32 channels, u32 buffer_ms, u32 latency_ms, - AudioStretchMode stretch); -#endif } // namespace CommonHost namespace ImGuiManager {