comparison cavs.c @ 3459:9ccc2eb20012 libavcodec

avoid redundant local variables
author michael
date Sun, 09 Jul 2006 15:35:06 +0000
parents 9bb2734f65d7
children 7a321f1b9eda
comparison
equal deleted inserted replaced
3458:9bb2734f65d7 3459:9ccc2eb20012
574 enum mv_pred_t mode, enum block_t size, int ref) { 574 enum mv_pred_t mode, enum block_t size, int ref) {
575 vector_t *mvP = &h->mv[nP]; 575 vector_t *mvP = &h->mv[nP];
576 vector_t *mvA = &h->mv[nP-1]; 576 vector_t *mvA = &h->mv[nP-1];
577 vector_t *mvB = &h->mv[nP-4]; 577 vector_t *mvB = &h->mv[nP-4];
578 vector_t *mvC = &h->mv[nC]; 578 vector_t *mvC = &h->mv[nC];
579 int mvAref = mvA->ref;
580 int mvBref = mvB->ref;
581 int mvCref;
582 579
583 mvP->ref = ref; 580 mvP->ref = ref;
584 mvP->dist = h->dist[mvP->ref]; 581 mvP->dist = h->dist[mvP->ref];
585 if(mvC->ref == NOT_AVAIL) 582 if(mvC->ref == NOT_AVAIL)
586 mvC = &h->mv[nP-5]; // set to top-left (mvD) 583 mvC = &h->mv[nP-5]; // set to top-left (mvD)
587 mvCref = mvC->ref;
588 if(mode == MV_PRED_PSKIP) { 584 if(mode == MV_PRED_PSKIP) {
589 if((mvAref == NOT_AVAIL) || (mvBref == NOT_AVAIL) || 585 if((mvA->ref == NOT_AVAIL) || (mvB->ref == NOT_AVAIL) ||
590 ((mvA->x | mvA->y | mvA->ref) == 0) || 586 ((mvA->x | mvA->y | mvA->ref) == 0) ||
591 ((mvB->x | mvB->y | mvB->ref) == 0) ) { 587 ((mvB->x | mvB->y | mvB->ref) == 0) ) {
592 mvP->x = mvP->y = 0; 588 mvP->x = mvP->y = 0;
593 set_mvs(mvP,size); 589 set_mvs(mvP,size);
594 return; 590 return;
595 } 591 }
596 } 592 }
597 /* if there is only one suitable candidate, take it */ 593 /* if there is only one suitable candidate, take it */
598 if((mvAref >= 0) && (mvBref < 0) && (mvCref < 0)) { 594 if((mvA->ref >= 0) && (mvB->ref < 0) && (mvC->ref < 0)) {
599 mvP->x = mvA->x; 595 mvP->x = mvA->x;
600 mvP->y = mvA->y; 596 mvP->y = mvA->y;
601 } else if((mvAref < 0) && (mvBref >= 0) && (mvCref < 0)) { 597 } else if((mvA->ref < 0) && (mvB->ref >= 0) && (mvC->ref < 0)) {
602 mvP->x = mvB->x; 598 mvP->x = mvB->x;
603 mvP->y = mvB->y; 599 mvP->y = mvB->y;
604 } else if((mvAref < 0) && (mvBref < 0) && (mvCref >= 0)) { 600 } else if((mvA->ref < 0) && (mvB->ref < 0) && (mvC->ref >= 0)) {
605 mvP->x = mvC->x; 601 mvP->x = mvC->x;
606 mvP->y = mvC->y; 602 mvP->y = mvC->y;
607 } else { 603 } else {
608 switch(mode) { 604 switch(mode) {
609 case MV_PRED_LEFT: 605 case MV_PRED_LEFT:
610 if(mvAref == mvP->ref) { 606 if(mvA->ref == mvP->ref) {
611 mvP->x = mvA->x; 607 mvP->x = mvA->x;
612 mvP->y = mvA->y; 608 mvP->y = mvA->y;
613 } else 609 } else
614 mv_pred_median(h, mvP, mvA, mvB, mvC); 610 mv_pred_median(h, mvP, mvA, mvB, mvC);
615 break; 611 break;
616 case MV_PRED_TOP: 612 case MV_PRED_TOP:
617 if(mvBref == mvP->ref) { 613 if(mvB->ref == mvP->ref) {
618 mvP->x = mvB->x; 614 mvP->x = mvB->x;
619 mvP->y = mvB->y; 615 mvP->y = mvB->y;
620 } else 616 } else
621 mv_pred_median(h, mvP, mvA, mvB, mvC); 617 mv_pred_median(h, mvP, mvA, mvB, mvC);
622 break; 618 break;
623 case MV_PRED_TOPRIGHT: 619 case MV_PRED_TOPRIGHT:
624 if(mvCref == mvP->ref) { 620 if(mvC->ref == mvP->ref) {
625 mvP->x = mvC->x; 621 mvP->x = mvC->x;
626 mvP->y = mvC->y; 622 mvP->y = mvC->y;
627 } else 623 } else
628 mv_pred_median(h, mvP, mvA, mvB, mvC); 624 mv_pred_median(h, mvP, mvA, mvB, mvC);
629 break; 625 break;