From: Ronald S. Bultje Date: Fri, 5 Apr 2013 19:50:19 +0000 (-0700) Subject: Remove full-pixel-related code. X-Git-Tag: v1.3.0~1106^2~304^2 X-Git-Url: https://granicus.if.org/sourcecode?a=commitdiff_plain;h=36c3a67c201703f02736173fc5780b867b17e56b;p=libvpx Remove full-pixel-related code. This is a VP8-only feature (part of profile 3) that is unsupported in VP9. Change-Id: I78016eede8d9c834d44d4c517f3e8b8fc2a378b1 --- diff --git a/vp9/common/vp9_alloccommon.c b/vp9/common/vp9_alloccommon.c index eb4d19672..48f9be1b3 100644 --- a/vp9/common/vp9_alloccommon.c +++ b/vp9/common/vp9_alloccommon.c @@ -157,28 +157,18 @@ void vp9_setup_version(VP9_COMMON *cm) { cm->no_lpf = 0; cm->filter_type = NORMAL_LOOPFILTER; cm->use_bilinear_mc_filter = 0; - cm->full_pixel = 0; break; case 1: cm->no_lpf = 0; cm->filter_type = SIMPLE_LOOPFILTER; cm->use_bilinear_mc_filter = 1; - cm->full_pixel = 0; break; case 2: case 3: cm->no_lpf = 1; cm->filter_type = NORMAL_LOOPFILTER; cm->use_bilinear_mc_filter = 1; - cm->full_pixel = 0; break; - // Full pel only code deprecated in experimental code base - // case 3: - // cm->no_lpf = 1; - // cm->filter_type = SIMPLE_LOOPFILTER; - // cm->use_bilinear_mc_filter = 1; - // cm->full_pixel = 1; - // break; } } void vp9_create_common(VP9_COMMON *oci) { @@ -194,7 +184,6 @@ void vp9_create_common(VP9_COMMON *oci) { oci->no_lpf = 0; oci->filter_type = NORMAL_LOOPFILTER; oci->use_bilinear_mc_filter = 0; - oci->full_pixel = 0; oci->clr_type = REG_YUV; oci->clamp_type = RECON_CLAMP_REQUIRED; diff --git a/vp9/common/vp9_blockd.h b/vp9/common/vp9_blockd.h index 62b95ade9..3a5824ada 100644 --- a/vp9/common/vp9_blockd.h +++ b/vp9/common/vp9_blockd.h @@ -296,7 +296,6 @@ typedef struct macroblockd { /* 16 Y blocks, 4 U, 4 V, each with 16 entries. */ BLOCKD block[24]; - int fullpixel_mask; YV12_BUFFER_CONFIG pre; /* Filtered copy of previous frame reconstruction */ YV12_BUFFER_CONFIG second_pre; diff --git a/vp9/common/vp9_onyxc_int.h b/vp9/common/vp9_onyxc_int.h index 26c0b8f83..700a08671 100644 --- a/vp9/common/vp9_onyxc_int.h +++ b/vp9/common/vp9_onyxc_int.h @@ -215,7 +215,6 @@ typedef struct VP9Common { COMPPREDMODE_TYPE comp_pred_mode; int no_lpf; int use_bilinear_mc_filter; - int full_pixel; int base_qindex; int last_kf_gf_q; /* Q used on the last GF or KF */ diff --git a/vp9/common/vp9_reconinter.c b/vp9/common/vp9_reconinter.c index 75b4e7cae..19c2e968a 100644 --- a/vp9/common/vp9_reconinter.c +++ b/vp9/common/vp9_reconinter.c @@ -974,9 +974,6 @@ static void build_inter16x16_predictors_mbuv_w(MACROBLOCKD *xd, _16x16mv.as_mv.row /= 2; _16x16mv.as_mv.col /= 2; - _16x16mv.as_mv.row &= xd->fullpixel_mask; - _16x16mv.as_mv.col &= xd->fullpixel_mask; - uptr = (which_mv ? xd->second_pre.u_buffer : xd->pre.u_buffer); vptr = (which_mv ? xd->second_pre.v_buffer : xd->pre.v_buffer); @@ -1051,9 +1048,6 @@ void vp9_build_inter16x16_predictors_mbuv(MACROBLOCKD *xd, _16x16mv.as_mv.row /= 2; _16x16mv.as_mv.col /= 2; - _16x16mv.as_mv.row &= xd->fullpixel_mask; - _16x16mv.as_mv.col &= xd->fullpixel_mask; - uptr = (which_mv ? xd->second_pre.u_buffer : xd->pre.u_buffer); vptr = (which_mv ? xd->second_pre.v_buffer : xd->pre.v_buffer); @@ -1617,7 +1611,7 @@ static int mi_mv_pred_row(MACROBLOCKD *mb, int off, int idx) { mb->mode_info_context->bmi[off + 1].as_mv[idx].as_mv.row + mb->mode_info_context->bmi[off + 4].as_mv[idx].as_mv.row + mb->mode_info_context->bmi[off + 5].as_mv[idx].as_mv.row; - return round_mv_comp(temp) & mb->fullpixel_mask; + return round_mv_comp(temp); } static int mi_mv_pred_col(MACROBLOCKD *mb, int off, int idx) { @@ -1625,7 +1619,7 @@ static int mi_mv_pred_col(MACROBLOCKD *mb, int off, int idx) { mb->mode_info_context->bmi[off + 1].as_mv[idx].as_mv.col + mb->mode_info_context->bmi[off + 4].as_mv[idx].as_mv.col + mb->mode_info_context->bmi[off + 5].as_mv[idx].as_mv.col; - return round_mv_comp(temp) & mb->fullpixel_mask; + return round_mv_comp(temp); } static int b_mv_pred_row(MACROBLOCKD *mb, int off, int idx) { @@ -1634,7 +1628,7 @@ static int b_mv_pred_row(MACROBLOCKD *mb, int off, int idx) { blockd[off + 1].bmi.as_mv[idx].as_mv.row + blockd[off + 4].bmi.as_mv[idx].as_mv.row + blockd[off + 5].bmi.as_mv[idx].as_mv.row; - return round_mv_comp(temp) & mb->fullpixel_mask; + return round_mv_comp(temp); } static int b_mv_pred_col(MACROBLOCKD *mb, int off, int idx) { @@ -1643,7 +1637,7 @@ static int b_mv_pred_col(MACROBLOCKD *mb, int off, int idx) { blockd[off + 1].bmi.as_mv[idx].as_mv.col + blockd[off + 4].bmi.as_mv[idx].as_mv.col + blockd[off + 5].bmi.as_mv[idx].as_mv.col; - return round_mv_comp(temp) & mb->fullpixel_mask; + return round_mv_comp(temp); } diff --git a/vp9/decoder/vp9_decodframe.c b/vp9/decoder/vp9_decodframe.c index f6f87efae..7277b5f96 100644 --- a/vp9/decoder/vp9_decodframe.c +++ b/vp9/decoder/vp9_decodframe.c @@ -1113,7 +1113,6 @@ static void init_frame(VP9D_COMP *pbi) { xd->mode_info_context->mbmi.mode = DC_PRED; xd->mode_info_stride = pc->mode_info_stride; xd->corrupted = 0; - xd->fullpixel_mask = pc->full_pixel ? 0xfffffff8 : 0xffffffff; } #if CONFIG_CODE_NONZEROCOUNT diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c index d35a9db99..d82706060 100644 --- a/vp9/encoder/vp9_encodeframe.c +++ b/vp9/encoder/vp9_encodeframe.c @@ -1210,8 +1210,6 @@ static void init_encode_frame_mb_context(VP9_COMP *cpi) { vpx_memset(cm->above_context, 0, sizeof(ENTROPY_CONTEXT_PLANES) * cm->mb_cols); - - xd->fullpixel_mask = cm->full_pixel ? 0xfffffff8 : 0xffffffff; } static void switch_lossless_mode(VP9_COMP *cpi, int lossless) { diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 34adc9915..3e44b21fc 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -1765,7 +1765,7 @@ static int rd_cost_mbuv_4x4(VP9_COMMON *const cm, MACROBLOCK *mb, int backup) { static int64_t rd_inter16x16_uv_4x4(VP9_COMP *cpi, MACROBLOCK *x, int *rate, - int *distortion, int fullpixel, int *skip, + int *distortion, int *skip, int do_ctx_backup) { vp9_transform_mbuv_4x4(x); vp9_quantize_mbuv_4x4(x); @@ -1804,7 +1804,7 @@ static int rd_cost_mbuv_8x8(VP9_COMMON *const cm, MACROBLOCK *mb, int backup) { } static int64_t rd_inter16x16_uv_8x8(VP9_COMP *cpi, MACROBLOCK *x, int *rate, - int *distortion, int fullpixel, int *skip, + int *distortion, int *skip, int do_ctx_backup) { vp9_transform_mbuv_8x8(x); vp9_quantize_mbuv_8x8(x); @@ -1857,7 +1857,7 @@ static void rd_inter32x32_uv_16x16(VP9_COMMON *const cm, MACROBLOCK *x, } static int64_t rd_inter32x32_uv(VP9_COMP *cpi, MACROBLOCK *x, int *rate, - int *distortion, int fullpixel, int *skip) { + int *distortion, int *skip) { MACROBLOCKD *xd = &x->e_mbd; MB_MODE_INFO *const mbmi = &xd->mode_info_context->mbmi; const uint8_t *usrc = x->src.u_buffer, *udst = xd->dst.u_buffer; @@ -1894,9 +1894,9 @@ static int64_t rd_inter32x32_uv(VP9_COMP *cpi, MACROBLOCK *x, int *rate, dst_uv_stride); if (mbmi->txfm_size == TX_4X4) { - rd_inter16x16_uv_4x4(cpi, x, &r_tmp, &d_tmp, fullpixel, &s_tmp, 0); + rd_inter16x16_uv_4x4(cpi, x, &r_tmp, &d_tmp, &s_tmp, 0); } else { - rd_inter16x16_uv_8x8(cpi, x, &r_tmp, &d_tmp, fullpixel, &s_tmp, 0); + rd_inter16x16_uv_8x8(cpi, x, &r_tmp, &d_tmp, &s_tmp, 0); } r += r_tmp; @@ -1919,7 +1919,7 @@ static int64_t rd_inter32x32_uv(VP9_COMP *cpi, MACROBLOCK *x, int *rate, static void super_block_64_uvrd(VP9_COMMON *const cm, MACROBLOCK *x, int *rate, int *distortion, int *skip); static int64_t rd_inter64x64_uv(VP9_COMP *cpi, MACROBLOCK *x, int *rate, - int *distortion, int fullpixel, int *skip) { + int *distortion, int *skip) { super_block_64_uvrd(&cpi->common, x, rate, distortion, skip); return RDCOST(x->rdmult, x->rddiv, *rate, *distortion); } @@ -3406,10 +3406,10 @@ static void inter_mode_cost(VP9_COMP *cpi, MACROBLOCK *x, x->e_mbd.mode_info_context->mbmi.mode != I8X8_PRED && x->e_mbd.mode_info_context->mbmi.mode != SPLITMV) rd_inter16x16_uv_8x8(cpi, x, rate_uv, distortion_uv, - cpi->common.full_pixel, &uv_skippable, 1); + &uv_skippable, 1); else rd_inter16x16_uv_4x4(cpi, x, rate_uv, distortion_uv, - cpi->common.full_pixel, &uv_skippable, 1); + &uv_skippable, 1); *rate2 += *rate_uv; *distortion2 += *distortion_uv; @@ -4067,7 +4067,7 @@ static int64_t handle_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, *distortion += *distortion_y; rd_inter64x64_uv(cpi, x, rate_uv, distortion_uv, - cm->full_pixel, &skippable_uv); + &skippable_uv); *rate2 += *rate_uv; *distortion += *distortion_uv; @@ -4082,7 +4082,7 @@ static int64_t handle_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, *distortion += *distortion_y; rd_inter32x32_uv(cpi, x, rate_uv, distortion_uv, - cm->full_pixel, &skippable_uv); + &skippable_uv); *rate2 += *rate_uv; *distortion += *distortion_uv; @@ -4584,7 +4584,7 @@ static void rd_pick_inter_mode(VP9_COMP *cpi, MACROBLOCK *x, vp9_subtract_mbuv(x->src_diff, x->src.u_buffer, x->src.v_buffer, x->e_mbd.predictor, x->src.uv_stride); rd_inter16x16_uv_4x4(cpi, x, &rate_uv, &distortion_uv, - cpi->common.full_pixel, &uv_skippable, 1); + &uv_skippable, 1); rate2 += rate_uv; distortion2 += distortion_uv; skippable = skippable && uv_skippable;