Pass the filter entry to apply to resample_fir4

This commit is contained in:
Chris Robinson
2017-08-18 19:20:30 -07:00
parent f75020da5a
commit 5f50d085ad
6 changed files with 8 additions and 10 deletions
+2 -3
View File
@@ -69,9 +69,8 @@ extern inline ALuint64 maxu64(ALuint64 a, ALuint64 b);
extern inline ALuint64 clampu64(ALuint64 val, ALuint64 min, ALuint64 max);
extern inline ALfloat lerp(ALfloat val1, ALfloat val2, ALfloat mu);
extern inline ALfloat resample_fir4(const ALfloat (*restrict filter)[4],
ALfloat val0, ALfloat val1, ALfloat val2, ALfloat val3,
ALsizei frac);
extern inline ALfloat resample_fir4(ALfloat val0, ALfloat val1, ALfloat val2, ALfloat val3,
const ALfloat *restrict filter);
extern inline void aluVectorSet(aluVector *restrict vector, ALfloat x, ALfloat y, ALfloat z, ALfloat w);
+1 -1
View File
@@ -59,7 +59,7 @@ const ALfloat *Resample_fir4_C(const InterpState *state, const ALfloat *restrict
src -= 1;
for(i = 0;i < numsamples;i++)
{
dst[i] = resample_fir4(filter, src[0], src[1], src[2], src[3], frac);
dst[i] = resample_fir4(src[0], src[1], src[2], src[3], filter[frac]);
frac += increment;
src += frac>>FRACTIONBITS;
+1 -1
View File
@@ -127,7 +127,7 @@ const ALfloat *Resample_fir4_Neon(const InterpState *state,
ALint pos = pos_[0];
frac = frac_[0];
do {
dst[i] = resample_fir4(filter, src[pos], src[pos+1], src[pos+2], src[pos+3], frac);
dst[i] = resample_fir4(src[pos], src[pos+1], src[pos+2], src[pos+3], filter[frac]);
frac += increment;
pos += frac>>FRACTIONBITS;
+1 -1
View File
@@ -88,7 +88,7 @@ const ALfloat *Resample_fir4_SSE3(const InterpState *state,
for(;i < numsamples;i++)
{
dst[i] = resample_fir4(filter, src[pos], src[pos+1], src[pos+2], src[pos+3], frac);
dst[i] = resample_fir4(src[pos], src[pos+1], src[pos+2], src[pos+3], filter[frac]);
frac += increment;
pos += frac>>FRACTIONBITS;
+1 -1
View File
@@ -145,7 +145,7 @@ const ALfloat *Resample_fir4_SSE41(const InterpState *state,
for(;i < numsamples;i++)
{
dst[i] = resample_fir4(filter, src[pos], src[pos+1], src[pos+2], src[pos+3], frac);
dst[i] = resample_fir4(src[pos], src[pos+1], src[pos+2], src[pos+3], filter[frac]);
frac += increment;
pos += frac>>FRACTIONBITS;
+2 -3
View File
@@ -392,10 +392,9 @@ inline ALfloat lerp(ALfloat val1, ALfloat val2, ALfloat mu)
{
return val1 + (val2-val1)*mu;
}
inline ALfloat resample_fir4(const ALfloat (*restrict filter)[4], ALfloat val0, ALfloat val1, ALfloat val2, ALfloat val3, ALsizei frac)
inline ALfloat resample_fir4(ALfloat val0, ALfloat val1, ALfloat val2, ALfloat val3, const ALfloat *restrict filter)
{
return filter[frac][0]*val0 + filter[frac][1]*val1 +
filter[frac][2]*val2 + filter[frac][3]*val3;
return filter[0]*val0 + filter[1]*val1 + filter[2]*val2 + filter[3]*val3;
}