]> code.delx.au - pulseaudio/commitdiff
Revert "resamplers: Optimize trivial resampler"
authorColin Guthrie <colin@mageia.org>
Fri, 23 Mar 2012 09:24:48 +0000 (09:24 +0000)
committerColin Guthrie <colin@mageia.org>
Wed, 28 Mar 2012 10:31:36 +0000 (11:31 +0100)
This causes problems with 24kHz audio (results in echoing)
when upscaling to 44.1kHz or 48kHz.

It can be reapplied when the optimisation works for all cases.

This reverts commit 8539fe9765e5713f9863ab15d0c5b42189f98ae2.

src/pulsecore/resampler.c

index 6676943761c3e0dbc1a3c7b3818ebff4d6269cf9..9a651f4a85666f7f2f00dd480cf6ce6a8eab81e3 100644 (file)
@@ -1436,16 +1436,7 @@ static void trivial_resample(pa_resampler *r, const pa_memchunk *input, unsigned
 
         pa_assert_fp(o_index * fz < pa_memblock_get_length(output->memblock));
 
-        /* Directly assign some common sample sizes, use memcpy as fallback */
-        if (r->w_sz == 2) {
-            for (unsigned c = 0; c < r->o_ss.channels; c++)
-                ((uint16_t *) dst)[o_index+c] = ((uint16_t *) src)[i_index+c];
-        } else if (r->w_sz == 4) {
-            for (unsigned c = 0; c < r->o_ss.channels; c++)
-                ((uint32_t *) dst)[o_index+c] = ((uint32_t *) src)[i_index+c];
-        } else {
-            memcpy((uint8_t *) dst + fz * o_index, (uint8_t *) src + fz * i_index, (int) fz);
-        }
+        memcpy((uint8_t*) dst + fz * o_index, (uint8_t*) src + fz * i_index, (int) fz);
     }
 
     pa_memblock_release(input->memblock);