[svn] / branches / release-0_9_1-fixes / xvidcore / src / global.h Repository:
ViewVC logotype

Diff of /branches/release-0_9_1-fixes/xvidcore/src/global.h

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

trunk/xvidcore/src/global.h revision 648, Sat Nov 16 23:38:16 2002 UTC branches/release-0_9_1-fixes/xvidcore/src/global.h revision 971, Fri Apr 4 22:12:07 2003 UTC
# Line 50  Line 50 
50   *  exception also makes it possible to release a modified version which   *  exception also makes it possible to release a modified version which
51   *  carries forward this exception.   *  carries forward this exception.
52   *   *
53   * $Id: global.h,v 1.16 2002-11-16 23:38:16 edgomez Exp $   * $Id: global.h,v 1.18.2.1 2003-04-04 22:12:07 edgomez Exp $
54   *   *
55   ****************************************************************************/   ****************************************************************************/
56    
# Line 88  Line 88 
88          uint32_t *tail;          uint32_t *tail;
89          uint32_t *start;          uint32_t *start;
90          uint32_t length;          uint32_t length;
91            uint32_t initpos;
92  }  }
93  Bitstream;  Bitstream;
94    
# Line 97  Line 98 
98    
99  typedef struct  typedef struct
100  {  {
101          // decoder/encoder          /* decoder/encoder  */
102          VECTOR mvs[4];          VECTOR mvs[4];
103    
104          short int pred_values[6][MBPRED_SIZE];          short int pred_values[6][MBPRED_SIZE];
105          int acpred_directions[6];          int acpred_directions[6];
106    
107          int mode;          int mode;
108          int quant;                                      // absolute quant          int quant;                                      /* absolute quant */
109    
110          int field_dct;          int field_dct;
111          int field_pred;          int field_pred;
112          int field_for_top;          int field_for_top;
113          int field_for_bot;          int field_for_bot;
114    
115          // encoder specific          /* encoder specific */
116    
117          VECTOR mv16;          VECTOR mv16;
118          VECTOR pmvs[4];          VECTOR pmvs[4];
119    
120          int32_t sad8[4];                        // SAD values for inter4v-VECTORs          int32_t sad8[4];                        /* SAD values for inter4v-VECTORs */
121          int32_t sad16;                          // SAD value for inter-VECTOR          int32_t sad16;                          /* SAD value for inter-VECTOR */
122    
123          int dquant;          int dquant;
124          int cbp;          int cbp;
125    
126          // bframe stuff          /* bframe stuff */
127    
128          VECTOR b_mvs[4];          VECTOR b_mvs[4];
129          VECTOR b_pmvs[4];          VECTOR b_pmvs[4];
130    
131          // bframe direct mode          /* bframe direct mode */
132    
133          VECTOR directmv[4];          VECTOR directmv[4];
134          VECTOR deltamv;          VECTOR deltamv;
# Line 135  Line 136 
136          int mb_type;          int mb_type;
137          int dbquant;          int dbquant;
138    
139          // stuff for block based ME (needed for Qpel ME)          /* stuff for block based ME (needed for Qpel ME) */
140          // backup of last integer ME vectors/sad          /* backup of last integer ME vectors/sad */
141    
142          VECTOR i_mv16;          VECTOR i_mv16;
143          VECTOR i_mvs[4];          VECTOR i_mvs[4];
144    
145          int32_t i_sad8[4];      // SAD values for inter4v-VECTORs          int32_t i_sad8[4];      /* SAD values for inter4v-VECTORs */
146          int32_t i_sad16;        // SAD value for inter-VECTOR          int32_t i_sad16;        /* SAD value for inter-VECTOR */
147    
148  }  }
149  MACROBLOCK;  MACROBLOCK;
# Line 155  Line 156 
156                  return 8;                  return 8;
157    
158          if (quant < 25 && !lum)          if (quant < 25 && !lum)
159                  return (quant + 13) / 2;                  return (int8_t)((quant + 13) / 2);
160    
161          if (quant < 9)          if (quant < 9)
162                  return 2 * quant;                  return (int8_t)(2 * quant);
163    
164          if (quant < 25)          if (quant < 25)
165                  return quant + 8;                  return (int8_t)(quant + 8);
166    
167          if (lum)          if (lum)
168                  return 2 * quant - 16;                  return (int8_t)(2 * quant - 16);
169          else          else
170                  return quant - 6;                  return (int8_t)(quant - 6);
171  }  }
172    
173  // useful macros  /* useful macros */
174    
175  #define MIN(X, Y) ((X)<(Y)?(X):(Y))  #define MIN(X, Y) ((X)<(Y)?(X):(Y))
176  #define MAX(X, Y) ((X)>(Y)?(X):(Y))  #define MAX(X, Y) ((X)>(Y)?(X):(Y))

Legend:
Removed from v.648  
changed lines
  Added in v.971

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