aboutsummaryrefslogtreecommitdiff
path: root/src/audio_core/audio_renderer.cpp
diff options
context:
space:
mode:
authorbunnei <bunneidev@gmail.com>2018-08-13 12:19:59 -0400
committerGitHub <noreply@github.com>2018-08-13 12:19:59 -0400
commitf19b4fab5ff470c060f93eac454bb351e7e37225 (patch)
tree47eb63b32088feac194e06ed76d028717213ff86 /src/audio_core/audio_renderer.cpp
parent875d52a81f2beb65875b56fd3b104779d413962e (diff)
parent01d199965a5df37e2bba333cecdbc1643b000874 (diff)
Merge pull request #1033 from MerryMage/interp
audio_core: Interpolate
Diffstat (limited to 'src/audio_core/audio_renderer.cpp')
-rw-r--r--src/audio_core/audio_renderer.cpp5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/audio_core/audio_renderer.cpp b/src/audio_core/audio_renderer.cpp
index 6ebed3fb0..397b107f5 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;
}
@@ -224,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]};