move blocks away MpegEncContext (7.4 -> 5.8k)
authorMichael Niedermayer <michaelni@gmx.at>
Wed, 22 Oct 2003 12:01:21 +0000 (12:01 +0000)
committerMichael Niedermayer <michaelni@gmx.at>
Wed, 22 Oct 2003 12:01:21 +0000 (12:01 +0000)
Originally committed as revision 2413 to svn://svn.ffmpeg.org/ffmpeg/trunk

libavcodec/mpegvideo.c
libavcodec/mpegvideo.h

index b0580cb..0af668d 100644 (file)
@@ -448,6 +448,7 @@ int MPV_common_init(MpegEncContext *s)
         CHECKED_ALLOCZ(s->q_intra_matrix16, 64*32*2 * sizeof(uint16_t))
         CHECKED_ALLOCZ(s->q_inter_matrix16, 64*32*2 * sizeof(uint16_t))
     }
+    CHECKED_ALLOCZ(s->blocks, 64*6*2 * sizeof(DCTELEM))
         
     CHECKED_ALLOCZ(s->picture, MAX_PICTURE_COUNT * sizeof(Picture))
 
@@ -569,6 +570,7 @@ void MPV_common_end(MpegEncContext *s)
     av_freep(&s->q_inter_matrix);
     av_freep(&s->q_intra_matrix16);
     av_freep(&s->q_inter_matrix16);
+    av_freep(&s->blocks);
 
     for(i=0; i<MAX_PICTURE_COUNT; i++){
         free_picture(s, &s->picture[i]);
index b7eed58..af01cba 100644 (file)
@@ -657,7 +657,7 @@ typedef struct MpegEncContext {
     uint8_t *ptr_lastgob;
     
     DCTELEM (*block)[64]; ///< points to one of the following blocks 
-    DCTELEM blocks[2][6][64] __align8; // for HQ mode we need to keep the best block
+    DCTELEM (*blocks)[6][64]; // for HQ mode we need to keep the best block
     int (*decode_mb)(struct MpegEncContext *s, DCTELEM block[6][64]); // used by some codecs to avoid a switch()
 #define SLICE_OK         0
 #define SLICE_ERROR     -1