comparison mpegvideo.h @ 220:0b234715e205 libavcodec

(commit by michael) mmx & mmx2 quantizer c dct permutation bugfix dont copy input on intra only encodings if it can be avoided dont draw edges on intra only stuff
author arpi_esp
date Sun, 27 Jan 2002 13:30:18 +0000
parents 2eb04d6be309
children f418b5c5ff67
comparison
equal deleted inserted replaced
219:5b88ee1abf97 220:0b234715e205
27 FMT_H263, 27 FMT_H263,
28 FMT_MJPEG, 28 FMT_MJPEG,
29 }; 29 };
30 30
31 #define MPEG_BUF_SIZE (16 * 1024) 31 #define MPEG_BUF_SIZE (16 * 1024)
32
33 #define QMAT_SHIFT_MMX 19
34 #define QMAT_SHIFT 25
32 35
33 typedef struct MpegEncContext { 36 typedef struct MpegEncContext {
34 struct AVCodecContext *avctx; 37 struct AVCodecContext *avctx;
35 /* the following parameters must be initialized before encoding */ 38 /* the following parameters must be initialized before encoding */
36 int width, height; /* picture size. must be a multiple of 16 */ 39 int width, height; /* picture size. must be a multiple of 16 */
118 UINT16 non_intra_matrix[64]; 121 UINT16 non_intra_matrix[64];
119 UINT16 chroma_non_intra_matrix[64]; 122 UINT16 chroma_non_intra_matrix[64];
120 /* precomputed matrix (combine qscale and DCT renorm) */ 123 /* precomputed matrix (combine qscale and DCT renorm) */
121 int q_intra_matrix[64]; 124 int q_intra_matrix[64];
122 int q_non_intra_matrix[64]; 125 int q_non_intra_matrix[64];
126 /* identical to the above but for MMX & these are not permutated */
127 UINT16 __align8 q_intra_matrix16[64] ;
128 UINT16 __align8 q_non_intra_matrix16[64];
123 int block_last_index[6]; /* last non zero coefficient in block */ 129 int block_last_index[6]; /* last non zero coefficient in block */
124 130
125 void *opaque; /* private data for the user */ 131 void *opaque; /* private data for the user */
126 132
127 /* bit rate control */ 133 /* bit rate control */