[APU] Replaced min-max with clamp for queued frames

This commit is contained in:
Gliniak
2026-05-26 22:58:46 +02:00
parent c5113acb9c
commit 29311ddcdd
2 changed files with 4 additions and 3 deletions

View File

@@ -50,9 +50,9 @@ AudioSystem::AudioSystem(cpu::Processor* processor)
processor_(processor),
worker_running_(false) {
std::memset(clients_, 0, sizeof(clients_));
queued_frames_ = std::min(
static_cast<uint32_t>(kMaximumQueuedFrames),
std::max(cvars::apu_max_queued_frames, static_cast<uint32_t>(4)));
queued_frames_ = std::clamp(cvars::apu_max_queued_frames,
static_cast<uint32_t>(kMinimumQueuedFrames),
static_cast<uint32_t>(kMaximumQueuedFrames));
for (size_t i = 0; i < kMaximumClientCount; ++i) {
client_semaphores_[i] = xe::threading::Semaphore::Create(0, queued_frames_);

View File

@@ -32,6 +32,7 @@ class AudioSystem {
public:
// TODO(gibbed): respect XAUDIO2_MAX_QUEUED_BUFFERS somehow (ie min(64,
// XAUDIO2_MAX_QUEUED_BUFFERS))
static constexpr size_t kMinimumQueuedFrames = 4;
static constexpr size_t kMaximumQueuedFrames = 64;
virtual ~AudioSystem();