summaryrefslogtreecommitdiff
path: root/src/audio_core/renderer
diff options
context:
space:
mode:
Diffstat (limited to 'src/audio_core/renderer')
-rw-r--r--src/audio_core/renderer/command/effect/biquad_filter.cpp6
1 files changed, 3 insertions, 3 deletions
diff --git a/src/audio_core/renderer/command/effect/biquad_filter.cpp b/src/audio_core/renderer/command/effect/biquad_filter.cpp
index 52f775bfa..dea6423dc 100644
--- a/src/audio_core/renderer/command/effect/biquad_filter.cpp
+++ b/src/audio_core/renderer/command/effect/biquad_filter.cpp
@@ -20,8 +20,8 @@ namespace AudioCore::AudioRenderer {
20void ApplyBiquadFilterFloat(std::span<s32> output, std::span<const s32> input, 20void ApplyBiquadFilterFloat(std::span<s32> output, std::span<const s32> input,
21 std::array<s16, 3>& b_, std::array<s16, 2>& a_, 21 std::array<s16, 3>& b_, std::array<s16, 2>& a_,
22 VoiceState::BiquadFilterState& state, const u32 sample_count) { 22 VoiceState::BiquadFilterState& state, const u32 sample_count) {
23 constexpr s64 min{std::numeric_limits<s32>::min()}; 23 constexpr f64 min{std::numeric_limits<s32>::min()};
24 constexpr s64 max{std::numeric_limits<s32>::max()}; 24 constexpr f64 max{std::numeric_limits<s32>::max()};
25 std::array<f64, 3> b{Common::FixedPoint<50, 14>::from_base(b_[0]).to_double(), 25 std::array<f64, 3> b{Common::FixedPoint<50, 14>::from_base(b_[0]).to_double(),
26 Common::FixedPoint<50, 14>::from_base(b_[1]).to_double(), 26 Common::FixedPoint<50, 14>::from_base(b_[1]).to_double(),
27 Common::FixedPoint<50, 14>::from_base(b_[2]).to_double()}; 27 Common::FixedPoint<50, 14>::from_base(b_[2]).to_double()};
@@ -34,7 +34,7 @@ void ApplyBiquadFilterFloat(std::span<s32> output, std::span<const s32> input,
34 f64 in_sample{static_cast<f64>(input[i])}; 34 f64 in_sample{static_cast<f64>(input[i])};
35 auto sample{in_sample * b[0] + s[0] * b[1] + s[1] * b[2] + s[2] * a[0] + s[3] * a[1]}; 35 auto sample{in_sample * b[0] + s[0] * b[1] + s[1] * b[2] + s[2] * a[0] + s[3] * a[1]};
36 36
37 output[i] = static_cast<s32>(std::clamp(static_cast<s64>(sample), min, max)); 37 output[i] = static_cast<s32>(std::clamp(sample, min, max));
38 38
39 s[1] = s[0]; 39 s[1] = s[0];
40 s[0] = in_sample; 40 s[0] = in_sample;