[svn] / trunk / xvidcore / src / motion / estimation_pvop.c Repository:
ViewVC logotype

Diff of /trunk/xvidcore/src/motion/estimation_pvop.c

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

revision 1462, Thu May 27 14:25:49 2004 UTC revision 1478, Thu Jul 8 07:12:54 2004 UTC
# Line 21  Line 21 
21   *  along with this program ; if not, write to the Free Software   *  along with this program ; if not, write to the Free Software
22   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA   *  Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307 USA
23   *   *
24   * $Id: estimation_pvop.c,v 1.7 2004-05-27 14:25:49 syskin Exp $   * $Id: estimation_pvop.c,v 1.8 2004-07-08 07:12:54 syskin Exp $
25   *   *
26   ****************************************************************************/   ****************************************************************************/
27    
# Line 530  Line 530 
530                  if(!Data->qpel) {                  if(!Data->qpel) {
531                          /* halfpel mode */                          /* halfpel mode */
532                          if (MotionFlags & XVID_ME_HALFPELREFINE8)                          if (MotionFlags & XVID_ME_HALFPELREFINE8)
533                                  xvid_me_SubpelRefine(Data, CheckCandidate, 0); /* perform halfpel refine of current best vector */                                  /* perform halfpel refine of current best vector */
534                                    xvid_me_SubpelRefine(Data->currentMV[0], Data, CheckCandidate, 0);
535                  } else {                  } else {
536                          /* qpel mode */                          /* qpel mode */
537                          Data->currentQMV->x = 2*Data->currentMV->x;                          Data->currentQMV->x = 2*Data->currentMV->x;
# Line 544  Line 545 
545                          } else if(MotionFlags & XVID_ME_QUARTERPELREFINE8) {                          } else if(MotionFlags & XVID_ME_QUARTERPELREFINE8) {
546                                  /* full */                                  /* full */
547                                  if (MotionFlags & XVID_ME_HALFPELREFINE8) {                                  if (MotionFlags & XVID_ME_HALFPELREFINE8) {
548                                          xvid_me_SubpelRefine(Data, CheckCandidate8, 0); /* hpel part */                                          xvid_me_SubpelRefine(Data->currentMV[0], Data, CheckCandidate8, 0); /* hpel part */
549                                          Data->currentQMV->x = 2*Data->currentMV->x;                                          Data->currentQMV->x = 2*Data->currentMV->x;
550                                          Data->currentQMV->y = 2*Data->currentMV->y;                                          Data->currentQMV->y = 2*Data->currentMV->y;
551                                  }                                  }
# Line 553  Line 554 
554                                          pParam->width, pParam->height, Data->iFcode, 2, 0);                                          pParam->width, pParam->height, Data->iFcode, 2, 0);
555                                  Data->qpel_precision = 1;                                  Data->qpel_precision = 1;
556    
557                                  xvid_me_SubpelRefine(Data, CheckCandidate8, 0); /* qpel part */                                  xvid_me_SubpelRefine(Data->currentQMV[0], Data, CheckCandidate8, 0); /* qpel part */
558                          }                          }
559                  }                  }
560    
# Line 722  Line 723 
723          if(!Data->qpel) {          if(!Data->qpel) {
724                  /* halfpel mode */                  /* halfpel mode */
725                  if (MotionFlags & XVID_ME_HALFPELREFINE16)                  if (MotionFlags & XVID_ME_HALFPELREFINE16)
726                                  xvid_me_SubpelRefine(Data, CheckCandidate, 0);                                  xvid_me_SubpelRefine(Data->currentMV[0], Data, CheckCandidate, 0);
727          } else {          } else {
728                  /* qpel mode */                  /* qpel mode */
729    
# Line 739  Line 740 
740                          if(MotionFlags & (XVID_ME_QUARTERPELREFINE16 | XVID_ME_QUARTERPELREFINE16_RD)) {                          if(MotionFlags & (XVID_ME_QUARTERPELREFINE16 | XVID_ME_QUARTERPELREFINE16_RD)) {
741                                  /* full */                                  /* full */
742                                  if (MotionFlags & XVID_ME_HALFPELREFINE16) {                                  if (MotionFlags & XVID_ME_HALFPELREFINE16) {
743                                          xvid_me_SubpelRefine(Data, CheckCandidate, 0); /* hpel part */                                          xvid_me_SubpelRefine(Data->currentMV[0], Data, CheckCandidate, 0); /* hpel part */
744                                          for(i = 0; i < 5; i++) {                                          for(i = 0; i < 5; i++) {
745                                                  Data->currentQMV[i].x = 2 * Data->currentMV[i].x;                                                  Data->currentQMV[i].x = 2 * Data->currentMV[i].x;
746                                                  Data->currentQMV[i].y = 2 * Data->currentMV[i].y;                                                  Data->currentQMV[i].y = 2 * Data->currentMV[i].y;
# Line 749  Line 750 
750                                                          pParam->width, pParam->height, Data->iFcode, 2, 0);                                                          pParam->width, pParam->height, Data->iFcode, 2, 0);
751                                  Data->qpel_precision = 1;                                  Data->qpel_precision = 1;
752                                  if(MotionFlags & XVID_ME_QUARTERPELREFINE16)                                  if(MotionFlags & XVID_ME_QUARTERPELREFINE16)
753                                          xvid_me_SubpelRefine(Data, CheckCandidate, 0); /* qpel part */                                          xvid_me_SubpelRefine(Data->currentQMV[0], Data, CheckCandidate, 0); /* qpel part */
754                          }                          }
755                  }                  }
756          }          }

Legend:
Removed from v.1462  
changed lines
  Added in v.1478

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