www.pudn.com > JM.rar > erc_globals.h


 
/*! 
 ************************************************************************ 
 * \file erc_globals.h 
 * 
 * \brief 
 *      global header file for error concealment module 
 * 
 * \author 
 *      - Viktor Varsa                      
 *      - Ye-Kui Wang                    
 ************************************************************************ 
 */ 
 
#ifndef _ERC_GLOBALS_H_ 
#define _ERC_GLOBALS_H_ 
 
#include  
#include "defines.h" 
 
/* "block" means an 8x8 pixel area */ 
 
/* Region modes */ 
#define REGMODE_INTER_COPY       0  /* Copy region */ 
#define REGMODE_INTER_PRED       1  /* Inter region with motion vectors */ 
#define REGMODE_INTRA            2  /* Intra region */ 
#define REGMODE_SPLITTED         3  /* Any region mode higher than this indicates that the region  
                                       is splitted which means 8x8 block */ 
#define REGMODE_INTER_COPY_8x8   4 
#define REGMODE_INTER_PRED_8x8   5 
#define REGMODE_INTRA_8x8        6 
 
/* YUV pixel domain image arrays for a video frame */ 
typedef struct 
{ 
  imgpel *yptr; 
  imgpel *uptr; 
  imgpel *vptr; 
} frame; 
 
/* region structure stores information about a region that is needed for concealment */ 
typedef struct  
{ 
  byte regionMode;  /* region mode as above */ 
  int xMin;         /* X coordinate of the pixel position of the top-left corner of the region */ 
  int yMin;         /* Y coordinate of the pixel position of the top-left corner of the region */ 
  int32 mv[3];      /* motion vectors in 1/4 pixel units: mvx = mv[0], mvy = mv[1],  
                              and ref_frame = mv[2] */ 
} objectBuffer_t; 
 
#endif