diff --git a/Source/Core/AudioCommon/NullSoundStream.cpp b/Source/Core/AudioCommon/NullSoundStream.cpp index 4a02dcec2c..049ce2b269 100644 --- a/Source/Core/AudioCommon/NullSoundStream.cpp +++ b/Source/Core/AudioCommon/NullSoundStream.cpp @@ -2,9 +2,8 @@ // Licensed under GPLv2+ // Refer to the license.txt file included. -#include - #include "AudioCommon/NullSoundStream.h" +#include "Common/CommonTypes.h" #include "Core/HW/AudioInterface.h" #include "Core/HW/SystemTimers.h" @@ -24,13 +23,13 @@ void NullSound::SetVolume(int volume) void NullSound::Update() { // num_samples_to_render in this update - depends on SystemTimers::AUDIO_DMA_PERIOD. - const u32 stereo_16_bit_size = 4; - const u32 dma_length = 32; + constexpr u32 stereo_16_bit_size = 4; + constexpr u32 dma_length = 32; const u64 audio_dma_period = SystemTimers::GetTicksPerSecond() / (AudioInterface::GetAIDSampleRate() * stereo_16_bit_size / dma_length); const u64 ais_samples_per_second = 48000 * stereo_16_bit_size; const u64 num_samples_to_render = (audio_dma_period * ais_samples_per_second) / SystemTimers::GetTicksPerSecond(); - m_mixer->Mix(realtimeBuffer, (unsigned int)num_samples_to_render); + m_mixer->Mix(m_realtime_buffer.data(), (unsigned int)num_samples_to_render); } void NullSound::Clear(bool mute) diff --git a/Source/Core/AudioCommon/NullSoundStream.h b/Source/Core/AudioCommon/NullSoundStream.h index 0acdd3274a..d27ac520f1 100644 --- a/Source/Core/AudioCommon/NullSoundStream.h +++ b/Source/Core/AudioCommon/NullSoundStream.h @@ -4,16 +4,11 @@ #pragma once -#include +#include #include "AudioCommon/SoundStream.h" -#define BUF_SIZE (48000 * 4 / 32) - class NullSound final : public SoundStream { - // playback position - short realtimeBuffer[BUF_SIZE / sizeof(short)]; - public: bool Start() override; void SoundLoop() override; @@ -23,4 +18,10 @@ public: void Update() override; static bool isValid() { return true; } + +private: + static constexpr size_t BUFFER_SIZE = 48000 * 4 / 32; + + // Playback position + std::array m_realtime_buffer; };