* vdec_ext-plugins.h : structures from the video decoder exported to plug-ins
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
- * $Id: vdec_ext-plugins.h,v 1.4 2001/09/05 16:07:49 massiot Exp $
+ * $Id: vdec_ext-plugins.h,v 1.9 2002/01/04 14:01:34 sam Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
*
*****************************************************************************/
typedef struct idct_inner_s
{
- dctelem_t pi_block[64]; /* block */
+ /* Should be kept aligned ! */
+ dctelem_t * pi_block; /* block */
void ( * pf_idct ) ( dctelem_t *, yuv_data_t *, int,
void *, int );
/* sparse IDCT or not, add or copy ? */
int i_sparse_pos; /* position of the
* non-NULL coeff */
- yuv_data_t * p_dct_data; /* pointer to the position
- * in the final picture */
} idct_inner_t;
typedef struct motion_inner_s
int i_mb_modes;
/* IDCT information */
- idct_inner_t p_idcts[6];
- int i_coded_block_pattern;
+ idct_inner_t p_idcts[12];
+ u16 i_coded_block_pattern;
/* which blocks are coded ? */
- int i_lum_dct_stride, i_chrom_dct_stride;
- /* nb of coeffs to jump when changing lines */
+ yuv_data_t * p_y_data;
+ yuv_data_t * p_u_data;
+ yuv_data_t * p_v_data;
+ /* pointers to the position
+ * in the final picture */
/* Motion compensation information */
motion_inner_t p_motions[8];
int i_nb_motions;
yuv_data_t * pp_dest[3];
+
} macroblock_t;
/* Macroblock Modes */