mirror of
https://github.com/aicodix/dsp.git
synced 2026-04-27 14:30:36 +00:00
use well known order of lerp arguments
This commit is contained in:
parent
a3c8d375c2
commit
82ce34dea3
3 changed files with 5 additions and 5 deletions
2
amd.hh
2
amd.hh
|
|
@ -32,7 +32,7 @@ public:
|
|||
value_type operator()(complex_type input)
|
||||
{
|
||||
value_type amp = abs(input);
|
||||
avg = lerp(amp < avg ? dec : att, avg, amp);
|
||||
avg = lerp(avg, amp, amp < avg ? dec : att);
|
||||
avg = min(max(avg, lo), hi);
|
||||
amp /= avg;
|
||||
return (amp * (value_type(1)+idx) - value_type(1)) / idx;
|
||||
|
|
|
|||
4
ema.hh
4
ema.hh
|
|
@ -35,7 +35,7 @@ public:
|
|||
}
|
||||
TYPE operator()(TYPE input)
|
||||
{
|
||||
return prev = lerp(alpha, prev, input);
|
||||
return prev = lerp(prev, input, alpha);
|
||||
}
|
||||
};
|
||||
|
||||
|
|
@ -83,7 +83,7 @@ public:
|
|||
TYPE operator()(TYPE input)
|
||||
{
|
||||
for (int i = 0; i < ORDER; ++i)
|
||||
prev[i] = input = lerp(alpha, prev[i], input);
|
||||
prev[i] = input = lerp(prev[i], input, alpha);
|
||||
return input;
|
||||
}
|
||||
};
|
||||
|
|
|
|||
4
utils.hh
4
utils.hh
|
|
@ -16,8 +16,8 @@ int signum(TYPE v)
|
|||
return (v > TYPE(0)) - (v < TYPE(0));
|
||||
}
|
||||
|
||||
template <typename X, typename AB>
|
||||
AB lerp(X x, AB a, AB b)
|
||||
template <typename AB, typename X>
|
||||
AB lerp(AB a, AB b, X x)
|
||||
{
|
||||
return (X(1) - x) * a + x * b;
|
||||
}
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue