[cvs] / xvidcore / src / quant / quant_matrix.c Repository:
ViewVC logotype

Diff of /xvidcore/src/quant/quant_matrix.c

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

revision 1.13.2.3, Sun Nov 30 16:13:16 2003 UTC revision 1.17, Tue Dec 28 19:19:43 2010 UTC
# Line 112  Line 112 
112  {  {
113          int i;          int i;
114          uint16_t *intra_matrix = mpeg_quant_matrices + 0*64;          uint16_t *intra_matrix = mpeg_quant_matrices + 0*64;
         uint16_t *intra_matrix1 = mpeg_quant_matrices + 1*64;  
         uint16_t *intra_matrix_fix = mpeg_quant_matrices + 2*64;  
         uint16_t *intra_matrix_fixl = mpeg_quant_matrices + 3*64;  
115    
116          for (i = 0; i < 64; i++) {          for (i = 0; i < 64; i++) {
117                  intra_matrix[i] = (!i) ? (uint16_t)8: (uint16_t)matrix[i];                  intra_matrix[i] = (!i) ? (uint16_t)8: (uint16_t)matrix[i];
118                  intra_matrix1[i] = (intra_matrix[i]>>1);          }
119                  intra_matrix1[i] += ((intra_matrix[i] == 1) ? 1: 0);  }
120                  intra_matrix_fix[i] = FIX(intra_matrix[i]);  
121                  intra_matrix_fixl[i] = FIXL(intra_matrix[i]);  void
122    init_intra_matrix(uint16_t * mpeg_quant_matrices, uint32_t quant)
123    {
124            int i;
125            uint16_t *intra_matrix = mpeg_quant_matrices + 0*64;
126            uint16_t *intra_matrix_rec = mpeg_quant_matrices + 1*64;
127    
128            for (i = 0; i < 64; i++) {
129                    uint32_t div = intra_matrix[i]*quant;
130                    intra_matrix_rec[i] = ((uint32_t)((1<<SCALEBITS) + (div>>1)))/div;
131          }          }
132  }  }
133    
# Line 137  Line 143 
143          for (i = 0; i < 64; i++) {          for (i = 0; i < 64; i++) {
144                  inter_matrix1[i] = ((inter_matrix[i] = (int16_t) matrix[i])>>1);                  inter_matrix1[i] = ((inter_matrix[i] = (int16_t) matrix[i])>>1);
145                  inter_matrix1[i] += ((inter_matrix[i] == 1) ? 1: 0);                  inter_matrix1[i] += ((inter_matrix[i] == 1) ? 1: 0);
146                  inter_matrix_fix[i] = FIX(inter_matrix[i]);                  inter_matrix_fix[i] = (uint16_t) FIX(inter_matrix[i]);
147                  inter_matrix_fixl[i] = FIXL(inter_matrix[i]);                  inter_matrix_fixl[i] = (uint16_t) FIXL(inter_matrix[i]);
148          }          }
149  }  }
150    

Legend:
Removed from v.1.13.2.3  
changed lines
  Added in v.1.17

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