Remove full-pixel-related code.

This is a VP8-only feature (part of profile 3) that is unsupported in
VP9.

Change-Id: I78016eede8d9c834d44d4c517f3e8b8fc2a378b1
This commit is contained in:
Ronald S. Bultje 2013-04-05 12:50:19 -07:00
Родитель 61834f7325
Коммит 36c3a67c20
7 изменённых файлов: 15 добавлений и 37 удалений

Просмотреть файл

@ -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;

Просмотреть файл

@ -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;

Просмотреть файл

@ -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 */

Просмотреть файл

@ -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);
}

Просмотреть файл

@ -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

Просмотреть файл

@ -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) {

Просмотреть файл

@ -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;