Mercurial > libavcodec.hg
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, |