channelmix: fix copy multiple channels

This commit is contained in:
Wim Taymans 2018-10-08 18:19:15 +02:00
parent f06c1723a8
commit 822b033fb1

View file

@ -39,11 +39,12 @@ channelmix_copy_sse(void *data, int n_dst, void *dst[n_dst],
memcpy(d[i], s[i], n_bytes);
}
else {
unrolled = n_samples / 4;
remain = n_samples & 3;
for (i = 0; i < n_dst; i++) {
float *di = d[i], *si = s[i];
unrolled = n_samples / 4;
remain = n_samples & 3;
for(n = 0; unrolled--; n += 4)
_mm_storeu_ps(&di[n], _mm_mul_ps(_mm_loadu_ps(&si[n]), vol));
for(; remain--; n++)