541 |
b_dx = (b_dx >> 3) + roundtab_76[b_dx & 0xf]; |
b_dx = (b_dx >> 3) + roundtab_76[b_dx & 0xf]; |
542 |
|
|
543 |
sum = sad8bi(Data->CurU, |
sum = sad8bi(Data->CurU, |
544 |
Data->RefP[4] + (dy/2) * stride + dx/2, |
Data->RefP[4] + (dy/2) * (int)stride + dx/2, |
545 |
Data->b_RefP[4] + (b_dy/2) * stride + b_dx/2, |
Data->b_RefP[4] + (b_dy/2) * (int)stride + b_dx/2, |
546 |
stride); |
stride); |
547 |
|
|
548 |
if (sum >= MAX_CHROMA_SAD_FOR_SKIP * (int)Data->iQuant) return; /* no skip */ |
if (sum >= MAX_CHROMA_SAD_FOR_SKIP * (int)Data->iQuant) return; /* no skip */ |
549 |
|
|
550 |
sum += sad8bi(Data->CurV, |
sum += sad8bi(Data->CurV, |
551 |
Data->RefP[5] + (dy/2) * stride + dx/2, |
Data->RefP[5] + (dy/2) * (int)stride + dx/2, |
552 |
Data->b_RefP[5] + (b_dy/2) * stride + b_dx/2, |
Data->b_RefP[5] + (b_dy/2) * (int)stride + b_dx/2, |
553 |
stride); |
stride); |
554 |
|
|
555 |
if (sum >= MAX_CHROMA_SAD_FOR_SKIP * (int)Data->iQuant) return; /* no skip */ |
if (sum >= MAX_CHROMA_SAD_FOR_SKIP * (int)Data->iQuant) return; /* no skip */ |
643 |
Data->directmvB[0].y |
Data->directmvB[0].y |
644 |
: Data->currentMV[1].y - Data->referencemv[0].y); |
: Data->currentMV[1].y - Data->referencemv[0].y); |
645 |
|
|
646 |
|
*best_sad = Data->iMinSAD[0]; |
647 |
|
|
648 |
return skip_sad; |
return skip_sad; |
649 |
} |
} |
650 |
|
|
939 |
const IMAGE * const b_refHV) |
const IMAGE * const b_refHV) |
940 |
{ |
{ |
941 |
uint32_t i, j; |
uint32_t i, j; |
942 |
int32_t best_sad, sad2; |
int32_t best_sad = 256*4096; |
943 |
|
int32_t sad2; |
944 |
uint32_t skip_sad; |
uint32_t skip_sad; |
945 |
|
|
946 |
const MACROBLOCK * const b_mbs = b_reference->mbs; |
const MACROBLOCK * const b_mbs = b_reference->mbs; |