aacenc: Fix LONG_START windowing.
authorNathan Caldwell <saintdev@gmail.com>
Sat, 28 Jan 2012 05:23:41 +0000 (22:23 -0700)
committerMichael Niedermayer <michaelni@gmx.at>
Fri, 16 Mar 2012 05:29:10 +0000 (06:29 +0100)
Forgot to add the equivalent amount to the incoming sample pointer as the output pointer.

Signed-off-by: Anton Khirnov <anton@khirnov.net>
(cherry picked from commit 2e626dd5136f4daa244b37284e22483cdc7df1ac)

Signed-off-by: Michael Niedermayer <michaelni@gmx.at>
libavcodec/aacenc.c

index e507a34..2ff6f9c 100644 (file)
@@ -200,8 +200,8 @@ WINDOW_FUNC(long_start)
     float *out = sce->ret;
 
     dsp->vector_fmul(out, audio, lwindow, 1024);
-    memcpy(out + 1024, audio, sizeof(out[0]) * 448);
-    dsp->vector_fmul_reverse(out + 1024 + 448, audio, swindow, 128);
+    memcpy(out + 1024, audio + 1024, sizeof(out[0]) * 448);
+    dsp->vector_fmul_reverse(out + 1024 + 448, audio + 1024 + 448, swindow, 128);
     memset(out + 1024 + 576, 0, sizeof(out[0]) * 448);
 }