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

Diff of /xvidcore/src/decoder.c

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

revision 1.51.2.2, Mon Apr 19 12:33:34 2004 UTC revision 1.51.2.6, Sat Jul 3 09:18:35 2004 UTC
# Line 339  Line 339 
339                  stop_coding_timer();                  stop_coding_timer();
340    
341                  start_timer();                  start_timer();
342                  add_acdc(pMB, i, &block[i * 64], iDcScaler, predictors);                  add_acdc(pMB, i, &block[i * 64], iDcScaler, predictors, dec->bs_version);
343                  stop_prediction_timer();                  stop_prediction_timer();
344    
345                  start_timer();                  start_timer();
# Line 1215  Line 1215 
1215          uint32_t x, y;          uint32_t x, y;
1216          VECTOR mv;          VECTOR mv;
1217          const VECTOR zeromv = {0,0};          const VECTOR zeromv = {0,0};
         const int64_t TRB = dec->time_pp - dec->time_bp, TRD = dec->time_pp;  
1218          int i;          int i;
1219    
1220          start_timer();          start_timer();
# Line 1310  Line 1309 
1309    
1310                          case MODE_DIRECT_NONE_MV:                          case MODE_DIRECT_NONE_MV:
1311                                  for (i = 0; i < 4; i++) {                                  for (i = 0; i < 4; i++) {
1312                                          mb->mvs[i].x = (int32_t) ((TRB * last_mb->mvs[i].x) / TRD + mv.x);                                          mb->mvs[i].x = last_mb->mvs[i].x*dec->time_bp/dec->time_pp + mv.x;
1313                                          mb->b_mvs[i].x = (int32_t) ((mv.x == 0)                                          mb->mvs[i].y = last_mb->mvs[i].y*dec->time_bp/dec->time_pp + mv.y;
1314                                                                          ? ((TRB - TRD) * last_mb->mvs[i].x) / TRD  
1315                                                                          : mb->mvs[i].x - last_mb->mvs[i].x);                                          mb->b_mvs[i].x = (mv.x)
1316                                          mb->mvs[i].y = (int32_t) ((TRB * last_mb->mvs[i].y) / TRD + mv.y);                                                  ?  mb->mvs[i].x - last_mb->mvs[i].x
1317                                          mb->b_mvs[i].y = (int32_t) ((mv.y == 0)                                                  : last_mb->mvs[i].x*(dec->time_bp - dec->time_pp)/dec->time_pp;
1318                                                                          ? ((TRB - TRD) * last_mb->mvs[i].y) / TRD                                          mb->b_mvs[i].y = (mv.y)
1319                                                                          : mb->mvs[i].y - last_mb->mvs[i].y);                                                  ? mb->mvs[i].y - last_mb->mvs[i].y
1320                                                    : last_mb->mvs[i].y*(dec->time_bp - dec->time_pp)/dec->time_pp;
1321                                  }                                  }
1322    
1323                                  decoder_bf_interpolate_mbinter(dec, dec->refn[1], dec->refn[0],                                  decoder_bf_interpolate_mbinter(dec, dec->refn[1], dec->refn[0],
# Line 1556  Line 1556 
1556    
1557                  if (dec->low_delay) {                  if (dec->low_delay) {
1558                          DPRINTF(XVID_DEBUG_ERROR, "warning: bvop found in low_delay==1 stream\n");                          DPRINTF(XVID_DEBUG_ERROR, "warning: bvop found in low_delay==1 stream\n");
1559                          dec->low_delay = 1;                          dec->low_delay = 0;
1560                  }                  }
1561    
1562                  if (dec->frames < 2) {                  if (dec->frames < 2) {

Legend:
Removed from v.1.51.2.2  
changed lines
  Added in v.1.51.2.6

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