[svn] / branches / release-1_3-branch / xvidcore / src / image / image.c Repository:
ViewVC logotype

Diff of /branches/release-1_3-branch/xvidcore/src/image/image.c

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

revision 315, Fri Jul 19 11:15:21 2002 UTC revision 389, Wed Sep 4 03:45:45 2002 UTC
# Line 165  Line 165 
165          src = image->y;          src = image->y;
166    
167          for (i = 0; i < EDGE_SIZE; i++) {          for (i = 0; i < EDGE_SIZE; i++) {
168                  // if interlacing, edges contain top-most data from each field  /*              // if interlacing, edges contain top-most data from each field
169                  if (interlacing && (i & 1)) {                  if (interlacing && (i & 1)) {
170                          memset(dst, *(src + edged_width), EDGE_SIZE);                          memset(dst, *(src + edged_width), EDGE_SIZE);
171                          memcpy(dst + EDGE_SIZE, src + edged_width, width);                          memcpy(dst + EDGE_SIZE, src + edged_width, width);
172                          memset(dst + edged_width - EDGE_SIZE,                          memset(dst + edged_width - EDGE_SIZE,
173                                     *(src + edged_width + width - 1), EDGE_SIZE);                                     *(src + edged_width + width - 1), EDGE_SIZE);
174                  } else {                  } else {*/
175                          memset(dst, *src, EDGE_SIZE);                          memset(dst, *src, EDGE_SIZE);
176                          memcpy(dst + EDGE_SIZE, src, width);                          memcpy(dst + EDGE_SIZE, src, width);
177                          memset(dst + edged_width - EDGE_SIZE, *(src + width - 1),                          memset(dst + edged_width - EDGE_SIZE, *(src + width - 1),
178                                     EDGE_SIZE);                                     EDGE_SIZE);
179                  }                  /*}*/
180                  dst += edged_width;                  dst += edged_width;
181          }          }
182    
# Line 189  Line 189 
189    
190          src -= edged_width;          src -= edged_width;
191          for (i = 0; i < EDGE_SIZE; i++) {          for (i = 0; i < EDGE_SIZE; i++) {
192                  // if interlacing, edges contain bottom-most data from each field  /*              // if interlacing, edges contain bottom-most data from each field
193                  if (interlacing && !(i & 1)) {                  if (interlacing && !(i & 1)) {
194                          memset(dst, *(src - edged_width), EDGE_SIZE);                          memset(dst, *(src - edged_width), EDGE_SIZE);
195                          memcpy(dst + EDGE_SIZE, src - edged_width, width);                          memcpy(dst + EDGE_SIZE, src - edged_width, width);
196                          memset(dst + edged_width - EDGE_SIZE,                          memset(dst + edged_width - EDGE_SIZE,
197                                     *(src - edged_width + width - 1), EDGE_SIZE);                                     *(src - edged_width + width - 1), EDGE_SIZE);
198                  } else {                  } else {*/
199                          memset(dst, *src, EDGE_SIZE);                          memset(dst, *src, EDGE_SIZE);
200                          memcpy(dst + EDGE_SIZE, src, width);                          memcpy(dst + EDGE_SIZE, src, width);
201                          memset(dst + edged_width - EDGE_SIZE, *(src + width - 1),                          memset(dst + edged_width - EDGE_SIZE, *(src + width - 1),
202                                     EDGE_SIZE);                                     EDGE_SIZE);
203                  }                  /*}*/
204                  dst += edged_width;                  dst += edged_width;
205          }          }
206    
# Line 751  Line 751 
751    if(w > width)    if(w > width)
752      w = width;      w = width;
753    w2 = w >> 1;    w2 = w >> 1;
754  void __inline  
755    dY = (uint8_t*)out_frm->y + (mby << 4) * out_frm->stride_y + (mbx << 4);    dY = (uint8_t*)out_frm->y + (mby << 4) * out_frm->stride_y + (mbx << 4);
756    dU = (uint8_t*)out_frm->u + (mby << 3) * out_frm->stride_u + (mbx << 3);    dU = (uint8_t*)out_frm->u + (mby << 3) * out_frm->stride_u + (mbx << 3);
757    dV = (uint8_t*)out_frm->v + (mby << 3) * out_frm->stride_v + (mbx << 3);    dV = (uint8_t*)out_frm->v + (mby << 3) * out_frm->stride_v + (mbx << 3);
# Line 761  Line 761 
761    
762    for(i = 0 ; i < 16 ; i++) {    for(i = 0 ; i < 16 ; i++) {
763      memcpy(dY,sY,w);      memcpy(dY,sY,w);
764    dY = out_frm->y + (mby << 4) * out_frm->stride_y + (mbx << 4);      dY += out_frm->stride_y;
765    dU = out_frm->u + (mby << 3) * out_frm->stride_u + (mbx << 3);      sY += std;
766    dV = out_frm->v + (mby << 3) * out_frm->stride_v + (mbx << 3);    }
767    for(i = 0 ; i < 8 ; i++) {    for(i = 0 ; i < 8 ; i++) {
768      memcpy(dU,sU,w2);      memcpy(dU,sU,w2);
769      dU += out_frm->stride_u;      dU += out_frm->stride_u;

Legend:
Removed from v.315  
changed lines
  Added in v.389

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