Commit 500ade24 authored by Dmitry Kovalev's avatar Dmitry Kovalev
Browse files

Removing unused "ishp" arguments.

Using different variable names "allow_hp" and "use_hp" instead of "usehp".

Change-Id: I0cd5996ddeb46bd754473b680a993c0aaf8eb879
parent ac7bab75
...@@ -228,16 +228,16 @@ static int read_mv_component(vp9_reader *r, ...@@ -228,16 +228,16 @@ static int read_mv_component(vp9_reader *r,
static INLINE void read_mv(vp9_reader *r, MV *mv, const MV *ref, static INLINE void read_mv(vp9_reader *r, MV *mv, const MV *ref,
const nmv_context *ctx, const nmv_context *ctx,
nmv_context_counts *counts, int usehp) { nmv_context_counts *counts, int allow_hp) {
const MV_JOINT_TYPE j = treed_read(r, vp9_mv_joint_tree, ctx->joints); const MV_JOINT_TYPE j = treed_read(r, vp9_mv_joint_tree, ctx->joints);
const int use_hp = allow_hp && vp9_use_mv_hp(ref);
MV diff = {0, 0}; MV diff = {0, 0};
usehp = usehp && vp9_use_mv_hp(ref);
if (mv_joint_vertical(j)) if (mv_joint_vertical(j))
diff.row = read_mv_component(r, &ctx->comps[0], usehp); diff.row = read_mv_component(r, &ctx->comps[0], use_hp);
if (mv_joint_horizontal(j)) if (mv_joint_horizontal(j))
diff.col = read_mv_component(r, &ctx->comps[1], usehp); diff.col = read_mv_component(r, &ctx->comps[1], use_hp);
vp9_inc_mv(&diff, counts); vp9_inc_mv(&diff, counts);
...@@ -250,7 +250,7 @@ static void update_mv(vp9_reader *r, vp9_prob *p, vp9_prob upd_p) { ...@@ -250,7 +250,7 @@ static void update_mv(vp9_reader *r, vp9_prob *p, vp9_prob upd_p) {
*p = (vp9_read_literal(r, 7) << 1) | 1; *p = (vp9_read_literal(r, 7) << 1) | 1;
} }
static void read_mv_probs(vp9_reader *r, nmv_context *mvc, int usehp) { static void read_mv_probs(vp9_reader *r, nmv_context *mvc, int allow_hp) {
int i, j, k; int i, j, k;
for (j = 0; j < MV_JOINTS - 1; ++j) for (j = 0; j < MV_JOINTS - 1; ++j)
...@@ -281,7 +281,7 @@ static void read_mv_probs(vp9_reader *r, nmv_context *mvc, int usehp) { ...@@ -281,7 +281,7 @@ static void read_mv_probs(vp9_reader *r, nmv_context *mvc, int usehp) {
update_mv(r, &comp->fp[j], VP9_NMV_UPDATE_PROB); update_mv(r, &comp->fp[j], VP9_NMV_UPDATE_PROB);
} }
if (usehp) { if (allow_hp) {
for (i = 0; i < 2; ++i) { for (i = 0; i < 2; ++i) {
update_mv(r, &mvc->comps[i].class0_hp, VP9_NMV_UPDATE_PROB); update_mv(r, &mvc->comps[i].class0_hp, VP9_NMV_UPDATE_PROB);
update_mv(r, &mvc->comps[i].hp, VP9_NMV_UPDATE_PROB); update_mv(r, &mvc->comps[i].hp, VP9_NMV_UPDATE_PROB);
...@@ -443,6 +443,7 @@ static void read_inter_block_mode_info(VP9D_COMP *pbi, MODE_INFO *mi, ...@@ -443,6 +443,7 @@ static void read_inter_block_mode_info(VP9D_COMP *pbi, MODE_INFO *mi,
int_mv *const mv0 = &mbmi->mv[0]; int_mv *const mv0 = &mbmi->mv[0];
int_mv *const mv1 = &mbmi->mv[1]; int_mv *const mv1 = &mbmi->mv[1];
const BLOCK_SIZE_TYPE bsize = mbmi->sb_type; const BLOCK_SIZE_TYPE bsize = mbmi->sb_type;
const int allow_hp = xd->allow_high_precision_mv;
int_mv nearest, nearby, best_mv; int_mv nearest, nearby, best_mv;
int_mv nearest_second, nearby_second, best_mv_second; int_mv nearest_second, nearby_second, best_mv_second;
...@@ -508,11 +509,11 @@ static void read_inter_block_mode_info(VP9D_COMP *pbi, MODE_INFO *mi, ...@@ -508,11 +509,11 @@ static void read_inter_block_mode_info(VP9D_COMP *pbi, MODE_INFO *mi,
switch (blockmode) { switch (blockmode) {
case NEWMV: case NEWMV:
read_mv(r, &blockmv.as_mv, &best_mv.as_mv, nmvc, read_mv(r, &blockmv.as_mv, &best_mv.as_mv, nmvc,
&cm->counts.mv, xd->allow_high_precision_mv); &cm->counts.mv, allow_hp);
if (ref1 > 0) if (ref1 > 0)
read_mv(r, &secondmv.as_mv, &best_mv_second.as_mv, nmvc, read_mv(r, &secondmv.as_mv, &best_mv_second.as_mv, nmvc,
&cm->counts.mv, xd->allow_high_precision_mv); &cm->counts.mv, allow_hp);
break; break;
case NEARESTMV: case NEARESTMV:
blockmv.as_int = nearest.as_int; blockmv.as_int = nearest.as_int;
...@@ -586,11 +587,10 @@ static void read_inter_block_mode_info(VP9D_COMP *pbi, MODE_INFO *mi, ...@@ -586,11 +587,10 @@ static void read_inter_block_mode_info(VP9D_COMP *pbi, MODE_INFO *mi,
break; break;
case NEWMV: case NEWMV:
read_mv(r, &mv0->as_mv, &best_mv.as_mv, nmvc, &cm->counts.mv, read_mv(r, &mv0->as_mv, &best_mv.as_mv, nmvc, &cm->counts.mv, allow_hp);
xd->allow_high_precision_mv);
if (ref1 > 0) if (ref1 > 0)
read_mv(r, &mv1->as_mv, &best_mv_second.as_mv, nmvc, read_mv(r, &mv1->as_mv, &best_mv_second.as_mv, nmvc, &cm->counts.mv,
&cm->counts.mv, xd->allow_high_precision_mv); allow_hp);
break; break;
default: default:
assert(!"Invalid inter mode value"); assert(!"Invalid inter mode value");
......
...@@ -406,6 +406,7 @@ static void pack_inter_mode_mvs(VP9_COMP *cpi, MODE_INFO *m, ...@@ -406,6 +406,7 @@ static void pack_inter_mode_mvs(VP9_COMP *cpi, MODE_INFO *m,
const int segment_id = mi->segment_id; const int segment_id = mi->segment_id;
int skip_coeff; int skip_coeff;
const BLOCK_SIZE_TYPE bsize = mi->sb_type; const BLOCK_SIZE_TYPE bsize = mi->sb_type;
const int allow_hp = xd->allow_high_precision_mv;
x->partition_info = x->pi + (m - pc->mi); x->partition_info = x->pi + (m - pc->mi);
...@@ -500,13 +501,13 @@ static void pack_inter_mode_mvs(VP9_COMP *cpi, MODE_INFO *m, ...@@ -500,13 +501,13 @@ static void pack_inter_mode_mvs(VP9_COMP *cpi, MODE_INFO *m,
active_section = 11; active_section = 11;
#endif #endif
vp9_encode_mv(cpi, bc, &blockmv.as_mv, &mi->best_mv.as_mv, vp9_encode_mv(cpi, bc, &blockmv.as_mv, &mi->best_mv.as_mv,
nmvc, xd->allow_high_precision_mv); nmvc, allow_hp);
if (mi->ref_frame[1] > INTRA_FRAME) if (mi->ref_frame[1] > INTRA_FRAME)
vp9_encode_mv(cpi, bc, vp9_encode_mv(cpi, bc,
&m->bmi[j].as_mv[1].as_mv, &m->bmi[j].as_mv[1].as_mv,
&mi->best_second_mv.as_mv, &mi->best_second_mv.as_mv,
nmvc, xd->allow_high_precision_mv); nmvc, allow_hp);
} }
} }
} }
...@@ -514,14 +515,12 @@ static void pack_inter_mode_mvs(VP9_COMP *cpi, MODE_INFO *m, ...@@ -514,14 +515,12 @@ static void pack_inter_mode_mvs(VP9_COMP *cpi, MODE_INFO *m,
#ifdef ENTROPY_STATS #ifdef ENTROPY_STATS
active_section = 5; active_section = 5;
#endif #endif
vp9_encode_mv(cpi, bc, vp9_encode_mv(cpi, bc, &mi->mv[0].as_mv, &mi->best_mv.as_mv,
&mi->mv[0].as_mv, &mi->best_mv.as_mv, nmvc, allow_hp);
nmvc, xd->allow_high_precision_mv);
if (mi->ref_frame[1] > INTRA_FRAME) if (mi->ref_frame[1] > INTRA_FRAME)
vp9_encode_mv(cpi, bc, vp9_encode_mv(cpi, bc, &mi->mv[1].as_mv, &mi->best_second_mv.as_mv,
&mi->mv[1].as_mv, &mi->best_second_mv.as_mv, nmvc, allow_hp);
nmvc, xd->allow_high_precision_mv);
} }
} }
} }
......
...@@ -58,7 +58,7 @@ int vp9_init_search_range(VP9_COMP *cpi, int size) { ...@@ -58,7 +58,7 @@ int vp9_init_search_range(VP9_COMP *cpi, int size) {
} }
int vp9_mv_bit_cost(int_mv *mv, int_mv *ref, int *mvjcost, int *mvcost[2], int vp9_mv_bit_cost(int_mv *mv, int_mv *ref, int *mvjcost, int *mvcost[2],
int weight, int ishp) { int weight) {
MV v; MV v;
v.row = mv->as_mv.row - ref->as_mv.row; v.row = mv->as_mv.row - ref->as_mv.row;
v.col = mv->as_mv.col - ref->as_mv.col; v.col = mv->as_mv.col - ref->as_mv.col;
...@@ -68,7 +68,7 @@ int vp9_mv_bit_cost(int_mv *mv, int_mv *ref, int *mvjcost, int *mvcost[2], ...@@ -68,7 +68,7 @@ int vp9_mv_bit_cost(int_mv *mv, int_mv *ref, int *mvjcost, int *mvcost[2],
} }
static int mv_err_cost(int_mv *mv, int_mv *ref, int *mvjcost, int *mvcost[2], static int mv_err_cost(int_mv *mv, int_mv *ref, int *mvjcost, int *mvcost[2],
int error_per_bit, int ishp) { int error_per_bit) {
if (mvcost) { if (mvcost) {
MV v; MV v;
v.row = mv->as_mv.row - ref->as_mv.row; v.row = mv->as_mv.row - ref->as_mv.row;
...@@ -300,8 +300,7 @@ int vp9_find_best_sub_pixel_step_iteratively(MACROBLOCK *x, ...@@ -300,8 +300,7 @@ int vp9_find_best_sub_pixel_step_iteratively(MACROBLOCK *x,
// calculate central point error // calculate central point error
besterr = vfp->vf(y, y_stride, z, src_stride, sse1); besterr = vfp->vf(y, y_stride, z, src_stride, sse1);
*distortion = besterr; *distortion = besterr;
besterr += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, besterr += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, error_per_bit);
error_per_bit, xd->allow_high_precision_mv);
// TODO: Each subsequent iteration checks at least one point in // TODO: Each subsequent iteration checks at least one point in
// common with the last iteration could be 2 ( if diag selected) // common with the last iteration could be 2 ( if diag selected)
...@@ -490,8 +489,7 @@ int vp9_find_best_sub_pixel_comp(MACROBLOCK *x, ...@@ -490,8 +489,7 @@ int vp9_find_best_sub_pixel_comp(MACROBLOCK *x,
comp_avg_pred(comp_pred, second_pred, w, h, y, y_stride); comp_avg_pred(comp_pred, second_pred, w, h, y, y_stride);
besterr = vfp->vf(comp_pred, w, z, src_stride, sse1); besterr = vfp->vf(comp_pred, w, z, src_stride, sse1);
*distortion = besterr; *distortion = besterr;
besterr += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, besterr += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, error_per_bit);
error_per_bit, xd->allow_high_precision_mv);
// Each subsequent iteration checks at least one point in // Each subsequent iteration checks at least one point in
// common with the last iteration could be 2 ( if diag selected) // common with the last iteration could be 2 ( if diag selected)
...@@ -654,15 +652,14 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -654,15 +652,14 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
// calculate central point error // calculate central point error
bestmse = vfp->vf(y, y_stride, z, src_stride, sse1); bestmse = vfp->vf(y, y_stride, z, src_stride, sse1);
*distortion = bestmse; *distortion = bestmse;
bestmse += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, error_per_bit, bestmse += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, error_per_bit);
xd->allow_high_precision_mv);
// go left then right and check error // go left then right and check error
this_mv.as_mv.row = startmv.as_mv.row; this_mv.as_mv.row = startmv.as_mv.row;
this_mv.as_mv.col = ((startmv.as_mv.col - 8) | 4); this_mv.as_mv.col = ((startmv.as_mv.col - 8) | 4);
thismse = vfp->svf_halfpix_h(y - 1, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_h(y - 1, y_stride, z, src_stride, &sse);
left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (left < bestmse) { if (left < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -674,7 +671,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -674,7 +671,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
this_mv.as_mv.col += 8; this_mv.as_mv.col += 8;
thismse = vfp->svf_halfpix_h(y, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_h(y, y_stride, z, src_stride, &sse);
right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
error_per_bit, xd->allow_high_precision_mv); error_per_bit);
if (right < bestmse) { if (right < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -687,8 +684,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -687,8 +684,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
this_mv.as_mv.col = startmv.as_mv.col; this_mv.as_mv.col = startmv.as_mv.col;
this_mv.as_mv.row = ((startmv.as_mv.row - 8) | 4); this_mv.as_mv.row = ((startmv.as_mv.row - 8) | 4);
thismse = vfp->svf_halfpix_v(y - y_stride, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_v(y - y_stride, y_stride, z, src_stride, &sse);
up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit);
xd->allow_high_precision_mv);
if (up < bestmse) { if (up < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -699,8 +695,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -699,8 +695,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
this_mv.as_mv.row += 8; this_mv.as_mv.row += 8;
thismse = vfp->svf_halfpix_v(y, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_v(y, y_stride, z, src_stride, &sse);
down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (down < bestmse) { if (down < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -742,8 +738,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -742,8 +738,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
break; break;
} }
diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (diag < bestmse) { if (diag < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -784,8 +780,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -784,8 +780,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
src_stride, &sse); src_stride, &sse);
} }
left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (left < bestmse) { if (left < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -799,7 +795,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -799,7 +795,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
SP(this_mv.as_mv.col), SP(this_mv.as_mv.row), SP(this_mv.as_mv.col), SP(this_mv.as_mv.row),
z, src_stride, &sse); z, src_stride, &sse);
right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
error_per_bit, xd->allow_high_precision_mv); error_per_bit);
if (right < bestmse) { if (right < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -822,8 +818,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -822,8 +818,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
z, src_stride, &sse); z, src_stride, &sse);
} }
up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit);
xd->allow_high_precision_mv);
if (up < bestmse) { if (up < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -835,8 +830,9 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -835,8 +830,9 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
this_mv.as_mv.row += 4; this_mv.as_mv.row += 4;
thismse = vfp->svf(y, y_stride, SP(this_mv.as_mv.col), SP(this_mv.as_mv.row), thismse = vfp->svf(y, y_stride, SP(this_mv.as_mv.col), SP(this_mv.as_mv.row),
z, src_stride, &sse); z, src_stride, &sse);
down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (down < bestmse) { if (down < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -923,8 +919,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -923,8 +919,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
break; break;
} }
diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (diag < bestmse) { if (diag < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -968,8 +964,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -968,8 +964,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
z, src_stride, &sse); z, src_stride, &sse);
} }
left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (left < bestmse) { if (left < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -982,7 +978,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -982,7 +978,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
thismse = vfp->svf(y, y_stride, SP(this_mv.as_mv.col), SP(this_mv.as_mv.row), thismse = vfp->svf(y, y_stride, SP(this_mv.as_mv.col), SP(this_mv.as_mv.row),
z, src_stride, &sse); z, src_stride, &sse);
right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
error_per_bit, xd->allow_high_precision_mv); error_per_bit);
if (right < bestmse) { if (right < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1005,8 +1001,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -1005,8 +1001,7 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
SP(this_mv.as_mv.col), SP(7), z, src_stride, &sse); SP(this_mv.as_mv.col), SP(7), z, src_stride, &sse);
} }
up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit);
xd->allow_high_precision_mv);
if (up < bestmse) { if (up < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1019,8 +1014,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -1019,8 +1014,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
thismse = vfp->svf(y, y_stride, thismse = vfp->svf(y, y_stride,
SP(this_mv.as_mv.col), SP(this_mv.as_mv.row), SP(this_mv.as_mv.col), SP(this_mv.as_mv.row),
z, src_stride, &sse); z, src_stride, &sse);
down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (down < bestmse) { if (down < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1107,8 +1102,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x, ...@@ -1107,8 +1102,8 @@ int vp9_find_best_sub_pixel_step(MACROBLOCK *x,
break; break;
} }
diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (diag < bestmse) { if (diag < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1153,15 +1148,14 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x, ...@@ -1153,15 +1148,14 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x,
// calculate central point error // calculate central point error
bestmse = vfp->vf(y, y_stride, z, src_stride, sse1); bestmse = vfp->vf(y, y_stride, z, src_stride, sse1);
*distortion = bestmse; *distortion = bestmse;
bestmse += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, error_per_bit, bestmse += mv_err_cost(bestmv, ref_mv, mvjcost, mvcost, error_per_bit);
xd->allow_high_precision_mv);
// go left then right and check error // go left then right and check error
this_mv.as_mv.row = startmv.as_mv.row; this_mv.as_mv.row = startmv.as_mv.row;
this_mv.as_mv.col = ((startmv.as_mv.col - 8) | 4); this_mv.as_mv.col = ((startmv.as_mv.col - 8) | 4);
thismse = vfp->svf_halfpix_h(y - 1, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_h(y - 1, y_stride, z, src_stride, &sse);
left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, left = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (left < bestmse) { if (left < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1173,7 +1167,7 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x, ...@@ -1173,7 +1167,7 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x,
this_mv.as_mv.col += 8; this_mv.as_mv.col += 8;
thismse = vfp->svf_halfpix_h(y, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_h(y, y_stride, z, src_stride, &sse);
right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, right = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
error_per_bit, xd->allow_high_precision_mv); error_per_bit);
if (right < bestmse) { if (right < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1186,8 +1180,7 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x, ...@@ -1186,8 +1180,7 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x,
this_mv.as_mv.col = startmv.as_mv.col; this_mv.as_mv.col = startmv.as_mv.col;
this_mv.as_mv.row = ((startmv.as_mv.row - 8) | 4); this_mv.as_mv.row = ((startmv.as_mv.row - 8) | 4);
thismse = vfp->svf_halfpix_v(y - y_stride, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_v(y - y_stride, y_stride, z, src_stride, &sse);
up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, up = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit);
xd->allow_high_precision_mv);
if (up < bestmse) { if (up < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1198,8 +1191,8 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x, ...@@ -1198,8 +1191,8 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x,
this_mv.as_mv.row += 8; this_mv.as_mv.row += 8;
thismse = vfp->svf_halfpix_v(y, y_stride, z, src_stride, &sse); thismse = vfp->svf_halfpix_v(y, y_stride, z, src_stride, &sse);
down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, down = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (down < bestmse) { if (down < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1238,8 +1231,8 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x, ...@@ -1238,8 +1231,8 @@ int vp9_find_best_half_pixel_step(MACROBLOCK *x,
break; break;
} }
diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost, error_per_bit, diag = thismse + mv_err_cost(&this_mv, ref_mv, mvjcost, mvcost,
xd->allow_high_precision_mv); error_per_bit);
if (diag < bestmse) { if (diag < bestmse) {
*bestmv = this_mv; *bestmv = this_mv;
...@@ -1580,11 +1573,9 @@ int vp9_diamond_search_sad_c(MACROBLOCK *x, ...@@ -1580,11 +1573,9 @@ int vp9_diamond_search_sad_c(MACROBLOCK *x,
if (bestsad == INT_MAX) if (bestsad == INT_MAX)
return INT_MAX; return INT_MAX;
return return fn_ptr->vf(what, what_stride, best_address, in_what_stride,
fn_ptr->vf(what, what_stride, best_address, in_what_stride, (unsigned int *)(&thissad)) + mv_err_cost(&this_mv, center_mv, mvjcost,
(unsigned int *)(&thissad)) + mvcost, x->errorperbit);
mv_err_cost(&this_mv, center_mv, mvjcost, mvcost, x->errorperbit,
xd->allow_high_precision_mv);
} }
int vp9_diamond_search_sadx4(MACROBLOCK *x, int vp9_diamond_search_sadx4(MACROBLOCK *x,
...@@ -1754,11 +1745,9 @@ int vp9_diamond_search_sadx4(MACROBLOCK *x, ...@@ -1754,11 +1745,9 @@ int vp9_diamond_search_sadx4(MACROBLOCK *x,
if (bestsad == INT_MAX) if (bestsad == INT_MAX)
return INT_MAX; return INT_MAX;
return return fn_ptr->vf(what, what_stride, best_address, in_what_stride,
fn_ptr->vf(what, what_stride, best_address, in_what_stride, (unsigned int *)(&thissad)) + mv_err_cost(&this_mv,
(unsigned int *)(&thissad)) + center_mv, mvjcost, mvcost, x->errorperbit);
mv_err_cost(&this_mv, center_mv, mvjcost, mvcost, x->errorperbit,
xd->allow_high_precision_mv);
} }
/* do_refine: If last step (1-away) of n-step search doesn't pick the center /* do_refine: If last step (1-away) of n-step search doesn't pick the center
...@@ -1914,8 +1903,7 @@ int vp9_full_search_sad_c(MACROBLOCK *x, int_mv *ref_mv, ...@@ -1914,8 +1903,7 @@ int vp9_full_search_sad_c(MACROBLOCK *x, int_mv *ref_mv,
return return
fn_ptr->vf(what, what_stride, bestaddress, in_what_stride, fn_ptr->vf(what, what_stride, bestaddress, in_what_stride,
(unsigned int *)(&thissad)) + (unsigned int *)(&thissad)) +
mv_err_cost(&this_mv, center_mv, mvjcost, mvcost, x->errorperbit, mv_err_cost(&this_mv, center_mv, mvjcost, mvcost, x->errorperbit);
xd->allow_high_precision_mv);
else else
return INT_MAX; return INT_MAX;