common index increment style in bw_src

This commit is contained in:
Stefano D'Angelo 2023-03-24 16:01:33 +01:00
parent 3a44034694
commit 20437e0a23

View File

@ -150,20 +150,20 @@ static inline void bw_src_process(const bw_src_coeffs *BW_RESTRICT coeffs, bw_sr
// DF-II
const float z0 = x[i] - coeffs->a1 * state->z1 - coeffs->a2 * state->z2 - coeffs->a3 * state->z3 - coeffs->a4 * state->z4;
const float o = coeffs->b0 * z0 + coeffs->b1 * state->z1 + coeffs->b2 * state->z2 + coeffs->b3 * state->z3 + coeffs->b4 * state->z4;
if (state->i <= 0.f) {
if (state->i >= 0.f) {
// 3rd degree Lagrange interpolation + Horner's rule
const float k1 = state->xz2 - state->xz1;
const float k2 = 0.333333333333333f * (o - state->xz3);
const float k3 = o + k1;
const float k1 = state->xz1 - state->xz2;
const float k2 = 0.333333333333333f * (state->xz3 - o);
const float k3 = o - k1;
const float k4 = k3 - state->xz1;
const float a = k4 + 0.5f * k4 + k2;
const float b = k3 + k1 - 0.5f * (state->xz1 + state->xz3);
const float a = k2 - k4 - 0.5f * k4;
const float b = k3 - k1 - 0.5f * (state->xz1 + state->xz3);
const float c = 0.5f * (k1 + k2);
y[j] = o + state->i * (a + state->i * (b + state->i * c));
state->i -= coeffs->k;
state->i += coeffs->k;
j++;
}
state->i -= 1.f;
state->i += 1.f;
state->z4 = state->z3;
state->z3 = state->z2;
state->z2 = state->z1;
@ -181,7 +181,7 @@ static inline void bw_src_process(const bw_src_coeffs *BW_RESTRICT coeffs, bw_sr
const float k2 = 0.333333333333333f * (x[i] - state->xz3);
const float k3 = state->xz3 - k1;
const float k4 = state->xz2 - k3;
const float a = k4 + 0.5f * k4 + k2;
const float a = k2 + k4 + 0.5f;
const float b = k3 - k1 - 0.5f * (x[i] + state->xz2);
const float c = 0.5f * (k1 + k2);
const float o = state->xz3 + state->i * (a + state->i * (b + state->i * c));