summaryrefslogtreecommitdiff
path: root/vp9
diff options
context:
space:
mode:
authorJames Zern <jzern@google.com>2019-04-16 14:59:22 -0700
committerJames Zern <jzern@google.com>2019-04-16 18:18:34 -0700
commite232dc86e561cc03a0b576381c156c26b1ee7015 (patch)
tree23f1c9ded71cdeff6e9da5025d883563f7edf9c2 /vp9
parentd310225c19d52d26241399fc7d67753f9eac0944 (diff)
downloadlibvpx-e232dc86e561cc03a0b576381c156c26b1ee7015.tar
libvpx-e232dc86e561cc03a0b576381c156c26b1ee7015.tar.gz
libvpx-e232dc86e561cc03a0b576381c156c26b1ee7015.tar.bz2
libvpx-e232dc86e561cc03a0b576381c156c26b1ee7015.zip
Revert "Refactor tile boundary condition for intra prediction"
This reverts commit 14208ab41e114f5779d106ae54a7cc8fd9d43820. This causes test vectors failures with --row-mt=1. BUG=webm:1617 Change-Id: Icb14bbbb6f38608a73dde0370ad874c0b1b0af8a
Diffstat (limited to 'vp9')
-rw-r--r--vp9/common/vp9_blockd.h3
-rw-r--r--vp9/common/vp9_reconintra.c4
-rw-r--r--vp9/decoder/vp9_decodeframe.c2
-rw-r--r--vp9/encoder/vp9_encodeframe.c2
-rw-r--r--vp9/encoder/vp9_encoder.c5
-rw-r--r--vp9/encoder/vp9_firstpass.c3
6 files changed, 2 insertions, 17 deletions
diff --git a/vp9/common/vp9_blockd.h b/vp9/common/vp9_blockd.h
index 2ceb5dbb4..504342fdf 100644
--- a/vp9/common/vp9_blockd.h
+++ b/vp9/common/vp9_blockd.h
@@ -165,9 +165,6 @@ typedef struct macroblockd {
unsigned int max_blocks_wide;
unsigned int max_blocks_high;
- int mi_row;
- int mi_col;
-
const vpx_prob (*partition_probs)[PARTITION_TYPES - 1];
/* Distance of MB away from frame edges */
diff --git a/vp9/common/vp9_reconintra.c b/vp9/common/vp9_reconintra.c
index 7d3eec1c5..3e5ed616d 100644
--- a/vp9/common/vp9_reconintra.c
+++ b/vp9/common/vp9_reconintra.c
@@ -408,8 +408,8 @@ void vp9_predict_intra_block(const MACROBLOCKD *xd, int bwl_in, TX_SIZE tx_size,
int aoff, int loff, int plane) {
const int bw = (1 << bwl_in);
const int txw = (1 << tx_size);
- const int have_top = loff || xd->mi_row > 0;
- const int have_left = aoff || xd->mi_col > xd->tile.mi_col_start;
+ const int have_top = loff || (xd->above_mi != NULL);
+ const int have_left = aoff || (xd->left_mi != NULL);
const int have_right = (aoff + txw) < bw;
const int x = aoff * 4;
const int y = loff * 4;
diff --git a/vp9/decoder/vp9_decodeframe.c b/vp9/decoder/vp9_decodeframe.c
index 8873c3c17..c75c3d9a4 100644
--- a/vp9/decoder/vp9_decodeframe.c
+++ b/vp9/decoder/vp9_decodeframe.c
@@ -815,8 +815,6 @@ static MODE_INFO *set_offsets(VP9_COMMON *const cm, MACROBLOCKD *const xd,
// TODO(slavarnway): Generate sb_type based on bwl and bhl, instead of
// passing bsize from decode_partition().
xd->mi[0]->sb_type = bsize;
- xd->mi_row = mi_row;
- xd->mi_col = mi_col;
for (y = 0; y < y_mis; ++y)
for (x = !y; x < x_mis; ++x) {
xd->mi[y * cm->mi_stride + x] = xd->mi[0];
diff --git a/vp9/encoder/vp9_encodeframe.c b/vp9/encoder/vp9_encodeframe.c
index 084552eba..73cf561a0 100644
--- a/vp9/encoder/vp9_encodeframe.c
+++ b/vp9/encoder/vp9_encodeframe.c
@@ -254,8 +254,6 @@ static INLINE void set_mode_info_offsets(VP9_COMMON *const cm,
const int idx_str = xd->mi_stride * mi_row + mi_col;
xd->mi = cm->mi_grid_visible + idx_str;
xd->mi[0] = cm->mi + idx_str;
- xd->mi_row = mi_row;
- xd->mi_col = mi_col;
x->mbmi_ext = x->mbmi_ext_base + (mi_row * cm->mi_cols + mi_col);
}
diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c
index fd87e8670..4f103ff26 100644
--- a/vp9/encoder/vp9_encoder.c
+++ b/vp9/encoder/vp9_encoder.c
@@ -6143,8 +6143,6 @@ static void mode_estimation(VP9_COMP *cpi, MACROBLOCK *x, MACROBLOCKD *xd,
xd->mb_to_right_edge = ((cm->mi_cols - 1 - mi_col) * MI_SIZE) * 8;
xd->above_mi = (mi_row > 0) ? &mi_above : NULL;
xd->left_mi = (mi_col > 0) ? &mi_left : NULL;
- xd->mi_row = mi_row;
- xd->mi_col = mi_col;
// Intra prediction search
for (mode = DC_PRED; mode <= TM_PRED; ++mode) {
@@ -6909,9 +6907,6 @@ static void mc_flow_dispenser(VP9_COMP *cpi, GF_PICTURE *gf_picture,
xd->mi[0] = cm->mi;
xd->cur_buf = this_frame;
- xd->tile.mi_row_start = 0;
- xd->tile.mi_col_start = 0;
-
// Get rd multiplier set up.
rdmult = vp9_compute_rd_mult_based_on_qindex(cpi, tpl_frame->base_qindex);
set_error_per_bit(&cpi->td.mb, rdmult);
diff --git a/vp9/encoder/vp9_firstpass.c b/vp9/encoder/vp9_firstpass.c
index 911d4a6ef..ae84dd5f1 100644
--- a/vp9/encoder/vp9_firstpass.c
+++ b/vp9/encoder/vp9_firstpass.c
@@ -850,7 +850,6 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td,
xd->mi = cm->mi_grid_visible + xd->mi_stride * (mb_row << 1) + mb_col_start;
xd->mi[0] = cm->mi + xd->mi_stride * (mb_row << 1) + mb_col_start;
- xd->tile = tile;
for (i = 0; i < MAX_MB_PLANE; ++i) {
p[i].coeff = ctx->coeff_pbuf[i][1];
@@ -915,8 +914,6 @@ void vp9_first_pass_encode_tile_mb_row(VP9_COMP *cpi, ThreadData *td,
// are available. Required by vp9_predict_intra_block().
xd->above_mi = (mb_row != 0) ? &mi_above : NULL;
xd->left_mi = ((mb_col << 1) > tile.mi_col_start) ? &mi_left : NULL;
- xd->mi_row = mb_row << 1;
- xd->mi_col = mb_col << 1;
// Do intra 16x16 prediction.
x->skip_encode = 0;