From 4b44b8b4fba5ddfe28e5c6bd418f48ba475eaa79 Mon Sep 17 00:00:00 2001 From: MerryMage Date: Sun, 12 Aug 2018 19:32:39 +0100 Subject: audio_core: Interpolate --- src/audio_core/audio_renderer.cpp | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/audio_core/audio_renderer.cpp') diff --git a/src/audio_core/audio_renderer.cpp b/src/audio_core/audio_renderer.cpp index 6ebed3fb0..7bff635b8 100644 --- a/src/audio_core/audio_renderer.cpp +++ b/src/audio_core/audio_renderer.cpp @@ -2,6 +2,7 @@ // Licensed under GPLv2 or any later version // Refer to the license.txt file included. +#include "audio_core/algorithm/interpolate.h" #include "audio_core/audio_renderer.h" #include "common/assert.h" #include "common/logging/log.h" @@ -199,6 +200,8 @@ void AudioRenderer::VoiceState::RefreshBuffer() { break; } + samples = Interpolate(interp_state, std::move(samples), Info().sample_rate, STREAM_SAMPLE_RATE); + is_refresh_pending = false; } -- cgit v1.2.3 From 01d199965a5df37e2bba333cecdbc1643b000874 Mon Sep 17 00:00:00 2001 From: MerryMage Date: Sun, 12 Aug 2018 19:35:23 +0100 Subject: audio_renderer: samples_remaining counts frames, not samples --- src/audio_core/audio_renderer.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/audio_core/audio_renderer.cpp') diff --git a/src/audio_core/audio_renderer.cpp b/src/audio_core/audio_renderer.cpp index 7bff635b8..397b107f5 100644 --- a/src/audio_core/audio_renderer.cpp +++ b/src/audio_core/audio_renderer.cpp @@ -227,7 +227,7 @@ void AudioRenderer::QueueMixedBuffer(Buffer::Tag tag) { break; } - samples_remaining -= samples.size(); + samples_remaining -= samples.size() / stream->GetNumChannels(); for (const auto& sample : samples) { const s32 buffer_sample{buffer[offset]}; -- cgit v1.2.3