diff --git a/libavcodec/dsputil.c b/libavcodec/dsputil.c
index fd064d61693c1f38c3941a5dce7f8a7c47a2ebe4..87435caa81ddaab12d2c5cfb380e31877da80e79 100644
--- a/libavcodec/dsputil.c
+++ b/libavcodec/dsputil.c
@@ -3433,11 +3433,11 @@ static int dct_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2
 
 static int dct264_sad8x8_c(/*MpegEncContext*/ void *c, uint8_t *src1, uint8_t *src2, int stride, int h){
     MpegEncContext * const s= (MpegEncContext *)c;
-    int16_t dct[8][8];
+    DCTELEM dct[8][8];
     int i;
     int sum=0;
 
-    s->dsp.diff_pixels(dct, src1, src2, stride);
+    s->dsp.diff_pixels(dct[0], src1, src2, stride);
 
 #define SRC(x) dct[i][x]
 #define DST(x,v) dct[i][x]= v