Merge remote branch 'origin/master' into experimental
Change-Id: I9dab62c24d71f71cdc36732ed8ed469bee67d7e1
This commit is contained in:
commit
ffc4587a47
@ -42,9 +42,7 @@ extern unsigned int cnt_pm;
|
||||
extern const MV_REFERENCE_FRAME vp8_ref_frame_order[MAX_MODES];
|
||||
extern const MB_PREDICTION_MODE vp8_mode_order[MAX_MODES];
|
||||
|
||||
|
||||
extern unsigned int (*vp8_get4x4sse_cs)(unsigned char *src_ptr, int source_stride, unsigned char *ref_ptr, int recon_stride);
|
||||
extern int vp8_rd_pick_best_mbsegmentation(VP8_COMP *cpi, MACROBLOCK *x, MV *best_ref_mv, int best_rd, int *, int *, int *, int, int *mvcost[2], int, int fullpixel);
|
||||
extern int vp8_cost_mv_ref(MB_PREDICTION_MODE m, const int near_mv_ref_ct[4]);
|
||||
|
||||
|
||||
@ -575,18 +573,6 @@ void vp8_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset,
|
||||
continue;
|
||||
}
|
||||
|
||||
if(cpi->sf.improved_mv_pred && x->e_mbd.mode_info_context->mbmi.mode == NEWMV)
|
||||
{
|
||||
if(!saddone)
|
||||
{
|
||||
vp8_cal_sad(cpi,xd,x, recon_yoffset ,&near_sadidx[0] );
|
||||
saddone = 1;
|
||||
}
|
||||
|
||||
vp8_mv_pred(cpi, &x->e_mbd, x->e_mbd.mode_info_context, &mvp,
|
||||
x->e_mbd.mode_info_context->mbmi.ref_frame, cpi->common.ref_frame_sign_bias, &sr, &near_sadidx[0]);
|
||||
}
|
||||
|
||||
switch (this_mode)
|
||||
{
|
||||
case B_PRED:
|
||||
@ -666,6 +652,15 @@ void vp8_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset,
|
||||
|
||||
if(cpi->sf.improved_mv_pred)
|
||||
{
|
||||
if(!saddone)
|
||||
{
|
||||
vp8_cal_sad(cpi,xd,x, recon_yoffset ,&near_sadidx[0] );
|
||||
saddone = 1;
|
||||
}
|
||||
|
||||
vp8_mv_pred(cpi, &x->e_mbd, x->e_mbd.mode_info_context, &mvp,
|
||||
x->e_mbd.mode_info_context->mbmi.ref_frame, cpi->common.ref_frame_sign_bias, &sr, &near_sadidx[0]);
|
||||
|
||||
sr += speed_adjust;
|
||||
//adjust search range according to sr from mv prediction
|
||||
if(sr > step_param)
|
||||
|
@ -1932,18 +1932,6 @@ void vp8_rd_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset, int
|
||||
lf_or_gf = frame_lf_or_gf[x->e_mbd.mode_info_context->mbmi.ref_frame];
|
||||
}
|
||||
|
||||
if(x->e_mbd.mode_info_context->mbmi.mode == NEWMV)
|
||||
{
|
||||
if(!saddone)
|
||||
{
|
||||
vp8_cal_sad(cpi,xd,x, recon_yoffset ,&near_sadidx[0] );
|
||||
saddone = 1;
|
||||
}
|
||||
|
||||
vp8_mv_pred(cpi, &x->e_mbd, x->e_mbd.mode_info_context, &mvp,
|
||||
x->e_mbd.mode_info_context->mbmi.ref_frame, cpi->common.ref_frame_sign_bias, &sr, &near_sadidx[0]);
|
||||
}
|
||||
|
||||
// Check to see if the testing frequency for this mode is at its max
|
||||
// If so then prevent it from being tested and increase the threshold for its testing
|
||||
if (cpi->mode_test_hit_counts[mode_index] && (cpi->mode_check_freq[mode_index] > 1))
|
||||
@ -2084,6 +2072,15 @@ void vp8_rd_pick_inter_mode(VP8_COMP *cpi, MACROBLOCK *x, int recon_yoffset, int
|
||||
int tmp_row_min = x->mv_row_min;
|
||||
int tmp_row_max = x->mv_row_max;
|
||||
|
||||
if(!saddone)
|
||||
{
|
||||
vp8_cal_sad(cpi,xd,x, recon_yoffset ,&near_sadidx[0] );
|
||||
saddone = 1;
|
||||
}
|
||||
|
||||
vp8_mv_pred(cpi, &x->e_mbd, x->e_mbd.mode_info_context, &mvp,
|
||||
x->e_mbd.mode_info_context->mbmi.ref_frame, cpi->common.ref_frame_sign_bias, &sr, &near_sadidx[0]);
|
||||
|
||||
mvp_full.as_mv.col = mvp.as_mv.col>>3;
|
||||
mvp_full.as_mv.row = mvp.as_mv.row>>3;
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user