Add av1_predict_intra_block_facade
A simpler interface for intra block prediction
Change-Id: I97e3f385746928d87999e6862b1d71a197df0302
diff --git a/av1/encoder/rdopt.c b/av1/encoder/rdopt.c
index 76857af..72575c3 100644
--- a/av1/encoder/rdopt.c
+++ b/av1/encoder/rdopt.c
@@ -2401,14 +2401,15 @@
const int max_blocks_high = max_block_high(xd, bsize, 0);
mbmi->tx_size = tx_size;
// Prediction.
+ const int step = stepr * stepc;
+ int block = 0;
for (row = 0; row < max_blocks_high; row += stepr) {
for (col = 0; col < max_blocks_wide; col += stepc) {
- struct macroblockd_plane *const pd = &xd->plane[0];
- uint8_t *dst =
- &pd->dst.buf[(row * pd->dst.stride + col) << tx_size_wide_log2[0]];
- av1_predict_intra_block(xd, pd->width, pd->height,
- txsize_to_bsize[tx_size], mbmi->mode, dst,
- pd->dst.stride, dst, pd->dst.stride, col, row, 0);
+ const int block_raster_idx =
+ av1_block_index_to_raster_order(tx_size, block);
+ av1_predict_intra_block_facade(xd, 0, block_raster_idx, col, row,
+ tx_size);
+ block += step;
}
}
// RD estimation.