x->mbmi_ext = x->mbmi_ext_base + (mi_row * cm->mi_cols + mi_col);
}
-static void set_ssim_rdmult(VP9_COMP *const cpi, int mi_row, int mi_col,
- int *rdmult) {
+static void set_ssim_rdmult(VP9_COMP *const cpi, MACROBLOCK *const x,
+ int mi_row, int mi_col, int *rdmult) {
const VP9_COMMON *const cm = &cpi->common;
// SSIM rdmult scaling factors are currently 64x64 based.
*rdmult =
(int)((double)(*rdmult) * cpi->mi_ssim_rdmult_scaling_factors[index]);
*rdmult = VPXMAX(*rdmult, 1);
+ set_error_per_bit(x, *rdmult);
vpx_clear_system_state();
}
x->rddiv = cpi->rd.RDDIV;
x->rdmult = cpi->rd.RDMULT;
if (oxcf->tuning == VP8_TUNE_SSIM) {
- set_ssim_rdmult(cpi, mi_row, mi_col, &x->rdmult);
+ set_ssim_rdmult(cpi, x, mi_row, mi_col, &x->rdmult);
}
// required by vp9_append_sub8x8_mvs_for_idx() and vp9_find_best_ref_mvs()
}
if (oxcf->tuning == VP8_TUNE_SSIM) {
- set_ssim_rdmult(cpi, mi_row, mi_col, &x->rdmult);
+ set_ssim_rdmult(cpi, x, mi_row, mi_col, &x->rdmult);
}
}
const VP9EncoderConfig *const oxcf = &cpi->oxcf;
x->rdmult = x->cb_rdmult;
if (oxcf->tuning == VP8_TUNE_SSIM) {
- set_ssim_rdmult(cpi, mi_row, mi_col, &x->rdmult);
+ set_ssim_rdmult(cpi, x, mi_row, mi_col, &x->rdmult);
}
}
int partition_mul = x->cb_rdmult;
if (oxcf->tuning == VP8_TUNE_SSIM) {
- set_ssim_rdmult(cpi, mi_row, mi_col, &partition_mul);
+ set_ssim_rdmult(cpi, x, mi_row, mi_col, &partition_mul);
}
(void)*tp_orig;