comparison mpegvideo.h @ 13:174ef88f619a libavcodec

use block[] in structure to have it aligned on 8 bytes for mmx optimizations - dct_unquantize is always a function pointer - added specialized dct_unquantize_h263
author glantau
date Mon, 30 Jul 2001 23:26:26 +0000
parents 1d3ac9654178
children 82d4c9be9873
comparison
equal deleted inserted replaced
12:4d50c7d89e0f 13:174ef88f619a
171 int mpeg2; 171 int mpeg2;
172 int full_pel[2]; 172 int full_pel[2];
173 int interlaced_dct; 173 int interlaced_dct;
174 int last_qscale; 174 int last_qscale;
175 int first_slice; 175 int first_slice;
176
177 DCTELEM block[6][64] __align8;
178 void (*dct_unquantize)(struct MpegEncContext *s,
179 DCTELEM *block, int n, int qscale);
176 } MpegEncContext; 180 } MpegEncContext;
177 181
178 extern const UINT8 zigzag_direct[64]; 182 extern const UINT8 zigzag_direct[64];
179 183
180 int MPV_common_init(MpegEncContext *s); 184 int MPV_common_init(MpegEncContext *s);
181 void MPV_common_end(MpegEncContext *s); 185 void MPV_common_end(MpegEncContext *s);
182 void MPV_decode_mb(MpegEncContext *s, DCTELEM block[6][64]); 186 void MPV_decode_mb(MpegEncContext *s, DCTELEM block[6][64]);
183 void MPV_frame_start(MpegEncContext *s); 187 void MPV_frame_start(MpegEncContext *s);
184 void MPV_frame_end(MpegEncContext *s); 188 void MPV_frame_end(MpegEncContext *s);
189 #ifdef HAVE_MMX
190 void MPV_common_init_mmx(MpegEncContext *s);
191 #endif
185 192
186 /* motion_est.c */ 193 /* motion_est.c */
187 194
188 int estimate_motion(MpegEncContext *s, 195 int estimate_motion(MpegEncContext *s,
189 int mb_x, int mb_y, 196 int mb_x, int mb_y,