[cvs] / xvidcore / src / global.h Repository:
ViewVC logotype

Diff of /xvidcore/src/global.h

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 1.16, Sat Nov 16 23:38:16 2002 UTC revision 1.18, Sun Dec 15 01:21:12 2002 UTC
# Line 97  Line 97 
97    
98  typedef struct  typedef struct
99  {  {
100          // decoder/encoder          /* decoder/encoder  */
101          VECTOR mvs[4];          VECTOR mvs[4];
102    
103          short int pred_values[6][MBPRED_SIZE];          short int pred_values[6][MBPRED_SIZE];
104          int acpred_directions[6];          int acpred_directions[6];
105    
106          int mode;          int mode;
107          int quant;                                      // absolute quant          int quant;                                      /* absolute quant */
108    
109          int field_dct;          int field_dct;
110          int field_pred;          int field_pred;
111          int field_for_top;          int field_for_top;
112          int field_for_bot;          int field_for_bot;
113    
114          // encoder specific          /* encoder specific */
115    
116          VECTOR mv16;          VECTOR mv16;
117          VECTOR pmvs[4];          VECTOR pmvs[4];
118    
119          int32_t sad8[4];                        // SAD values for inter4v-VECTORs          int32_t sad8[4];                        /* SAD values for inter4v-VECTORs */
120          int32_t sad16;                          // SAD value for inter-VECTOR          int32_t sad16;                          /* SAD value for inter-VECTOR */
121    
122          int dquant;          int dquant;
123          int cbp;          int cbp;
124    
125          // bframe stuff          /* bframe stuff */
126    
127          VECTOR b_mvs[4];          VECTOR b_mvs[4];
128          VECTOR b_pmvs[4];          VECTOR b_pmvs[4];
129    
130          // bframe direct mode          /* bframe direct mode */
131    
132          VECTOR directmv[4];          VECTOR directmv[4];
133          VECTOR deltamv;          VECTOR deltamv;
# Line 135  Line 135 
135          int mb_type;          int mb_type;
136          int dbquant;          int dbquant;
137    
138          // stuff for block based ME (needed for Qpel ME)          /* stuff for block based ME (needed for Qpel ME) */
139          // backup of last integer ME vectors/sad          /* backup of last integer ME vectors/sad */
140    
141          VECTOR i_mv16;          VECTOR i_mv16;
142          VECTOR i_mvs[4];          VECTOR i_mvs[4];
143    
144          int32_t i_sad8[4];      // SAD values for inter4v-VECTORs          int32_t i_sad8[4];      /* SAD values for inter4v-VECTORs */
145          int32_t i_sad16;        // SAD value for inter-VECTOR          int32_t i_sad16;        /* SAD value for inter-VECTOR */
146    
147  }  }
148  MACROBLOCK;  MACROBLOCK;
# Line 155  Line 155 
155                  return 8;                  return 8;
156    
157          if (quant < 25 && !lum)          if (quant < 25 && !lum)
158                  return (quant + 13) / 2;                  return (int8_t)((quant + 13) / 2);
159    
160          if (quant < 9)          if (quant < 9)
161                  return 2 * quant;                  return (int8_t)(2 * quant);
162    
163          if (quant < 25)          if (quant < 25)
164                  return quant + 8;                  return (int8_t)(quant + 8);
165    
166          if (lum)          if (lum)
167                  return 2 * quant - 16;                  return (int8_t)(2 * quant - 16);
168          else          else
169                  return quant - 6;                  return (int8_t)(quant - 6);
170  }  }
171    
172  // useful macros  /* useful macros */
173    
174  #define MIN(X, Y) ((X)<(Y)?(X):(Y))  #define MIN(X, Y) ((X)<(Y)?(X):(Y))
175  #define MAX(X, Y) ((X)>(Y)?(X):(Y))  #define MAX(X, Y) ((X)>(Y)?(X):(Y))

Legend:
Removed from v.1.16  
changed lines
  Added in v.1.18

No admin address has been configured
ViewVC Help
Powered by ViewVC 1.0.4