summaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorJason Newton <nevion@gmail.com>2009-10-29 19:10:16 -0700
committerJason Newton <nevion@gmail.com>2009-10-29 19:10:16 -0700
commitd83dd5ba13bae800750a408f7f0e8654d7f27bd0 (patch)
tree9b98bc70e5c090456ffce2344d942602a7d67b97 /src
parentebaca56a752f599e10c1a60852c8988c6f2f866c (diff)
module-equalizer-sink:
add premultipliar to sse2 dsp_logic implementation
Diffstat (limited to 'src')
-rw-r--r--src/modules/module-equalizer-sink.c8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/modules/module-equalizer-sink.c b/src/modules/module-equalizer-sink.c
index ec361608..7c0ccd3a 100644
--- a/src/modules/module-equalizer-sink.c
+++ b/src/modules/module-equalizer-sink.c
@@ -412,7 +412,8 @@ static void dsp_logic(
fftwf_complex * restrict output_window,//The transformed window'd src
struct userdata *u){//Collection of constants
const size_t overlap_size = PA_ROUND_UP(u->overlap_size, v_size);
-
+ float_vector_t x;
+ x.f[0] = x.f[1] = x.f[2] = x.f[3] = X;
//assert(u->samples_gathered >= u->R);
//use a linear-phase sliding STFT and overlap-add method
@@ -422,9 +423,8 @@ static void dsp_logic(
float_vector_t *w = (float_vector_t*) (W + j);
float_vector_t *s = (float_vector_t*) (src + j);
//#if __SSE2__
- d->m = _mm_mul_ps(w->m, s->m);
-//#else
-// d->v = w->v * s->v;
+ d->m = _mm_mul_ps(x.m, _mm_mul_ps(w->m, s->m));
+// d->v = x->v * w->v * s->v;
//#endif
}
//zero padd the the remaining fft window