Skip to content
GitLab
Projects
Groups
Snippets
/
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
Menu
Open sidebar
Xiph.Org
aom-rav1e
Commits
167a4efb
Commit
167a4efb
authored
Aug 25, 2016
by
Yunqing Wang
Committed by
Gerrit Code Review
Aug 25, 2016
Browse files
Merge "Fix motion vector out of range bugs" into nextgenv2
parents
c6918644
90e12eae
Changes
1
Hide whitespace changes
Inline
Side-by-side
vp10/encoder/rdopt.c
View file @
167a4efb
...
...
@@ -4978,6 +4978,10 @@ static int64_t rd_pick_best_sub8x8_mode(
MV mvp_full;
int max_mv;
int cost_list[5];
int tmp_col_min = x->mv_col_min;
int tmp_col_max = x->mv_col_max;
int tmp_row_min = x->mv_row_min;
int tmp_row_max = x->mv_row_max;
/* Is the best so far sufficiently good that we cant justify doing
* and new motion search. */
...
...
@@ -5041,6 +5045,11 @@ static int64_t rd_pick_best_sub8x8_mode(
cpi->sf.mv.subpel_search_method != SUBPEL_TREE ? cost_list : NULL,
&bsi->ref_mv[0]->as_mv, INT_MAX, 1);
x->mv_col_min = tmp_col_min;
x->mv_col_max = tmp_col_max;
x->mv_row_min = tmp_row_min;
x->mv_row_max = tmp_row_max;
if (bestsme < INT_MAX) {
int distortion;
if (cpi->sf.use_upsampled_references) {
...
...
@@ -5722,8 +5731,6 @@ static void single_motion_search(VP10_COMP *cpi, MACROBLOCK *x,
vp10_setup_pre_planes(xd, ref_idx, scaled_ref_frame, mi_row, mi_col, NULL);
}
vp10_set_mv_search_range(x, &ref_mv);
// Work out the size of the first step in the mv step search.
// 0 here is maximum length first step. 1 is VPXMAX >> 1 etc.
if (cpi->sf.mv.auto_mv_step_size && cm->show_frame) {
...
...
@@ -5771,6 +5778,8 @@ static void single_motion_search(VP10_COMP *cpi, MACROBLOCK *x,
}
}
vp10_set_mv_search_range(x, &ref_mv);
mvp_full = pred_mv[x->mv_best_ref_index[ref]];
mvp_full.col >>= 3;
...
...
@@ -5918,8 +5927,6 @@ static void single_motion_search_obmc(VP10_COMP *cpi, MACROBLOCK *x,
vp10_setup_pre_planes(xd, ref_idx, scaled_ref_frame, mi_row, mi_col, NULL);
}
vp10_set_mv_search_range(x, &ref_mv);
// Work out the size of the first step in the mv step search.
// 0 here is maximum length first step. 1 is VPXMAX >> 1 etc.
if (cpi->sf.mv.auto_mv_step_size && cm->show_frame) {
...
...
@@ -5967,6 +5974,8 @@ static void single_motion_search_obmc(VP10_COMP *cpi, MACROBLOCK *x,
}
}
vp10_set_mv_search_range(x, &ref_mv);
mvp_full = pred_mv.as_mv;
mvp_full.col >>= 3;
mvp_full.row >>= 3;
...
...
Write
Preview
Supports
Markdown
0%
Try again
or
attach a new file
.
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment