[svn] / branches / dev-api-3 / xvidcore / src / motion / motion_est.c Repository:
ViewVC logotype

Diff of /branches/dev-api-3/xvidcore/src/motion/motion_est.c

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

revision 664, Wed Nov 20 19:53:18 2002 UTC revision 665, Wed Nov 20 20:11:09 2002 UTC
# Line 155  Line 155 
155          case 1: // x halfpel, y qpel - top or bottom during qpel refinement          case 1: // x halfpel, y qpel - top or bottom during qpel refinement
156                  ref2 = GetReference(halfpel_x, y - halfpel_y, dir, data);                  ref2 = GetReference(halfpel_x, y - halfpel_y, dir, data);
157                  ref2 += 8 * (block&1) + 8 * (block>>1) * iEdgedWidth;                  ref2 += 8 * (block&1) + 8 * (block>>1) * iEdgedWidth;
158                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding, 8);
159                  break;                  break;
160    
161          case 2: // x qpel, y halfpel - left or right during qpel refinement          case 2: // x qpel, y halfpel - left or right during qpel refinement
162                  ref2 = GetReference(x - halfpel_x, halfpel_y, dir, data);                  ref2 = GetReference(x - halfpel_x, halfpel_y, dir, data);
163                  ref2 += 8 * (block&1) + 8 * (block>>1) * iEdgedWidth;                  ref2 += 8 * (block&1) + 8 * (block>>1) * iEdgedWidth;
164                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding, 8);
165                  break;                  break;
166    
167          default: // x and y in qpel resolution - the "corners" (top left/right and          default: // x and y in qpel resolution - the "corners" (top left/right and
# Line 195  Line 195 
195                  return (uint8_t *) GetReference(halfpel_x, halfpel_y, dir, data);                  return (uint8_t *) GetReference(halfpel_x, halfpel_y, dir, data);
196          case 1: // x halfpel, y qpel - top or bottom during qpel refinement          case 1: // x halfpel, y qpel - top or bottom during qpel refinement
197                  ref2 = GetReference(halfpel_x, y - halfpel_y, dir, data);                  ref2 = GetReference(halfpel_x, y - halfpel_y, dir, data);
198                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding, 8);
199                  interpolate8x8_avg2(Reference+8, ref1+8, ref2+8, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference+8, ref1+8, ref2+8, iEdgedWidth, rounding, 8);
200                  interpolate8x8_avg2(Reference+8*iEdgedWidth, ref1+8*iEdgedWidth, ref2+8*iEdgedWidth, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference+8*iEdgedWidth, ref1+8*iEdgedWidth, ref2+8*iEdgedWidth, iEdgedWidth, rounding, 8);
201                  interpolate8x8_avg2(Reference+8*iEdgedWidth+8, ref1+8*iEdgedWidth+8, ref2+8*iEdgedWidth+8, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference+8*iEdgedWidth+8, ref1+8*iEdgedWidth+8, ref2+8*iEdgedWidth+8, iEdgedWidth, rounding, 8);
202                  break;                  break;
203    
204          case 2: // x qpel, y halfpel - left or right during qpel refinement          case 2: // x qpel, y halfpel - left or right during qpel refinement
205                  ref2 = GetReference(x - halfpel_x, halfpel_y, dir, data);                  ref2 = GetReference(x - halfpel_x, halfpel_y, dir, data);
206                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference, ref1, ref2, iEdgedWidth, rounding, 8);
207                  interpolate8x8_avg2(Reference+8, ref1+8, ref2+8, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference+8, ref1+8, ref2+8, iEdgedWidth, rounding, 8);
208                  interpolate8x8_avg2(Reference+8*iEdgedWidth, ref1+8*iEdgedWidth, ref2+8*iEdgedWidth, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference+8*iEdgedWidth, ref1+8*iEdgedWidth, ref2+8*iEdgedWidth, iEdgedWidth, rounding, 8);
209                  interpolate8x8_avg2(Reference+8*iEdgedWidth+8, ref1+8*iEdgedWidth+8, ref2+8*iEdgedWidth+8, iEdgedWidth, rounding);                  interpolate8x8_avg2(Reference+8*iEdgedWidth+8, ref1+8*iEdgedWidth+8, ref2+8*iEdgedWidth+8, iEdgedWidth, rounding, 8);
210                  break;                  break;
211    
212          default: // x and y in qpel resolution - the "corners" (top left/right and          default: // x and y in qpel resolution - the "corners" (top left/right and

Legend:
Removed from v.664  
changed lines
  Added in v.665

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