diff --git a/src/audio_core/hle/source.cpp b/src/audio_core/hle/source.cpp index c8ee3b618..a4a0f5412 100644 --- a/src/audio_core/hle/source.cpp +++ b/src/audio_core/hle/source.cpp @@ -289,7 +289,9 @@ void Source::GenerateFrame() { break; } } - state.next_sample_number += static_cast(frame_position); + // TODO(jroweboy): Keep track of frame_position independently so that it doesn't lose precision + // over time + state.next_sample_number += static_cast(frame_position * state.rate_multiplier); state.filters.ProcessFrame(current_frame); }