comparison mpegvideo.h @ 553:18ad513d92fe libavcodec

direct rendering method 1 support
author michaelni
date Sun, 14 Jul 2002 18:37:35 +0000
parents d55978a3c369
children 762c67fd4078
comparison
equal deleted inserted replaced
552:26971b5a271d 553:18ad513d92fe
141 UINT8 *next_picture[3]; /* previous picture (for bidir pred) */ 141 UINT8 *next_picture[3]; /* previous picture (for bidir pred) */
142 UINT8 *next_picture_base[3]; /* real start of the picture */ 142 UINT8 *next_picture_base[3]; /* real start of the picture */
143 UINT8 *aux_picture[3]; /* aux picture (for B frames only) */ 143 UINT8 *aux_picture[3]; /* aux picture (for B frames only) */
144 UINT8 *aux_picture_base[3]; /* real start of the picture */ 144 UINT8 *aux_picture_base[3]; /* real start of the picture */
145 UINT8 *current_picture[3]; /* buffer to store the decompressed current picture */ 145 UINT8 *current_picture[3]; /* buffer to store the decompressed current picture */
146 void *last_dr_opaque;
147 void *next_dr_opaque;
146 int num_available_buffers; /* is 0 at the start & after seeking, after the first I frame its 1 after next I/P 2 */ 148 int num_available_buffers; /* is 0 at the start & after seeking, after the first I frame its 1 after next I/P 2 */
147 int last_dc[3]; /* last DC values for MPEG1 */ 149 int last_dc[3]; /* last DC values for MPEG1 */
148 INT16 *dc_val[3]; /* used for mpeg4 DC prediction, all 3 arrays must be continuous */ 150 INT16 *dc_val[3]; /* used for mpeg4 DC prediction, all 3 arrays must be continuous */
149 int y_dc_scale, c_dc_scale; 151 int y_dc_scale, c_dc_scale;
150 UINT8 *y_dc_scale_table; /* qscale -> y_dc_scale table */ 152 UINT8 *y_dc_scale_table; /* qscale -> y_dc_scale table */
157 and used for b-frame encoding & decoding (contains skip table of next P Frame) */ 159 and used for b-frame encoding & decoding (contains skip table of next P Frame) */
158 UINT8 *mbintra_table; /* used to avoid setting {ac, dc, cbp}-pred stuff to zero on inter MB decoding */ 160 UINT8 *mbintra_table; /* used to avoid setting {ac, dc, cbp}-pred stuff to zero on inter MB decoding */
159 UINT8 *cbp_table; /* used to store cbp, ac_pred for partitioned decoding */ 161 UINT8 *cbp_table; /* used to store cbp, ac_pred for partitioned decoding */
160 UINT8 *pred_dir_table; /* used to store pred_dir for partitioned decoding */ 162 UINT8 *pred_dir_table; /* used to store pred_dir for partitioned decoding */
161 INT8 *qscale_table; /* used to store qscale for partitioned decoding (& postprocessing FIXME export) */ 163 INT8 *qscale_table; /* used to store qscale for partitioned decoding (& postprocessing FIXME export) */
164 UINT8 *edge_emu_buffer;
162 165
163 int input_qscale; /* qscale prior to reordering of frames */ 166 int input_qscale; /* qscale prior to reordering of frames */
164 int input_pict_type; /* pict_type prior to reordering of frames */ 167 int input_pict_type; /* pict_type prior to reordering of frames */
165 int force_type; /* 0= no force, otherwise I_TYPE, P_TYPE, ... */ 168 int force_type; /* 0= no force, otherwise I_TYPE, P_TYPE, ... */
166 int qscale; /* QP */ 169 int qscale; /* QP */
445 } MpegEncContext; 448 } MpegEncContext;
446 449
447 int MPV_common_init(MpegEncContext *s); 450 int MPV_common_init(MpegEncContext *s);
448 void MPV_common_end(MpegEncContext *s); 451 void MPV_common_end(MpegEncContext *s);
449 void MPV_decode_mb(MpegEncContext *s, DCTELEM block[6][64]); 452 void MPV_decode_mb(MpegEncContext *s, DCTELEM block[6][64]);
450 void MPV_frame_start(MpegEncContext *s); 453 void MPV_frame_start(MpegEncContext *s, AVCodecContext *avctx);
451 void MPV_frame_end(MpegEncContext *s); 454 void MPV_frame_end(MpegEncContext *s);
452 #ifdef HAVE_MMX 455 #ifdef HAVE_MMX
453 void MPV_common_init_mmx(MpegEncContext *s); 456 void MPV_common_init_mmx(MpegEncContext *s);
454 #endif 457 #endif
455 #ifdef ARCH_ALPHA 458 #ifdef ARCH_ALPHA