* vpar_blocks.h : video parser blocks management
*****************************************************************************
* Copyright (C) 1999, 2000 VideoLAN
+ * $Id: vpar_blocks.h,v 1.32 2001/01/18 05:13:22 sam Exp $
*
* Authors: Christophe Massiot <massiot@via.ecp.fr>
* Jean-Marc Dressler <polux@via.ecp.fr>
/* IDCT information */
dctelem_t ppi_blocks[12][64]; /* blocks */
- f_idct_t pf_idct[12]; /* sparse IDCT or not ? */
+ void ( * pf_idct[12] ) ( struct vdec_thread_s *,
+ dctelem_t*, int ); /* sparse IDCT or not ? */
int pi_sparse_pos[12]; /* position of the
* non-NULL coeff */
* matrices */
int pi_dc_dct_pred[3]; /* ISO/IEC 13818-2 7.2.1 */
int pppi_pmv[2][2][2]; /* Motion vect predictors, 7.6.3 */
+ int i_motion_dir;/* Used for the next skipped macroblock */
/* Context used to optimize block parsing */
int i_motion_type, i_mv_count, i_mv_format;
/*****************************************************************************
* Constants
*****************************************************************************/
-extern int pi_default_intra_quant[];
-extern int pi_default_nonintra_quant[];
+extern u8 pi_default_intra_quant[64];
+extern u8 pi_default_nonintra_quant[64];
extern u8 pi_scan[2][64];
/*****************************************************************************
void vpar_InitBMBType( struct vpar_thread_s * p_vpar );
void vpar_InitCodedPattern( struct vpar_thread_s * p_vpar );
void vpar_InitDCTTables( struct vpar_thread_s * p_vpar );
+void vpar_InitScanTable( struct vpar_thread_s * p_vpar );
void vpar_PictureData( struct vpar_thread_s * p_vpar, int i_mb_base );