summaryrefslogtreecommitdiff
path: root/vp9/encoder
diff options
context:
space:
mode:
authorScott LaVarnway <slavarnway@google.com>2015-06-16 13:40:21 +0000
committerGerrit Code Review <noreply-gerritcodereview@google.com>2015-06-16 13:40:23 +0000
commit5fe0e55ca4f1c88b0d87448be4bafa4b700125ab (patch)
tree9058da7c8b387c0b3f22b86656f8f323ec7eb79e /vp9/encoder
parenta41fe749a87a7359b054eae37eb441263e15c794 (diff)
parentb2658ec3218950d1089b0147c2489ee286a0571c (diff)
downloadlibvpx-5fe0e55ca4f1c88b0d87448be4bafa4b700125ab.tar
libvpx-5fe0e55ca4f1c88b0d87448be4bafa4b700125ab.tar.gz
libvpx-5fe0e55ca4f1c88b0d87448be4bafa4b700125ab.tar.bz2
libvpx-5fe0e55ca4f1c88b0d87448be4bafa4b700125ab.zip
Merge "Eliminated frame_type check in get_partition_probs()"
Diffstat (limited to 'vp9/encoder')
-rw-r--r--vp9/encoder/vp9_bitstream.c5
-rw-r--r--vp9/encoder/vp9_rd.c4
2 files changed, 7 insertions, 2 deletions
diff --git a/vp9/encoder/vp9_bitstream.c b/vp9/encoder/vp9_bitstream.c
index 092d265a3..1ebdd066b 100644
--- a/vp9/encoder/vp9_bitstream.c
+++ b/vp9/encoder/vp9_bitstream.c
@@ -403,7 +403,7 @@ static void write_partition(const VP9_COMMON *const cm,
int hbs, int mi_row, int mi_col,
PARTITION_TYPE p, BLOCK_SIZE bsize, vp9_writer *w) {
const int ctx = partition_plane_context(xd, mi_row, mi_col, bsize);
- const vp9_prob *const probs = get_partition_probs(cm, ctx);
+ const vp9_prob *const probs = xd->partition_probs[ctx];
const int has_rows = (mi_row + hbs) < cm->mi_rows;
const int has_cols = (mi_col + hbs) < cm->mi_cols;
@@ -481,9 +481,12 @@ static void write_modes_sb(VP9_COMP *cpi,
static void write_modes(VP9_COMP *cpi,
const TileInfo *const tile, vp9_writer *w,
TOKENEXTRA **tok, const TOKENEXTRA *const tok_end) {
+ const VP9_COMMON *const cm = &cpi->common;
MACROBLOCKD *const xd = &cpi->td.mb.e_mbd;
int mi_row, mi_col;
+ set_partition_probs(cm, xd);
+
for (mi_row = tile->mi_row_start; mi_row < tile->mi_row_end;
mi_row += MI_BLOCK_SIZE) {
vp9_zero(xd->left_seg_context);
diff --git a/vp9/encoder/vp9_rd.c b/vp9/encoder/vp9_rd.c
index bbcbfe929..90ee1e44a 100644
--- a/vp9/encoder/vp9_rd.c
+++ b/vp9/encoder/vp9_rd.c
@@ -265,6 +265,7 @@ static void set_block_thresholds(const VP9_COMMON *cm, RD_OPT *rd) {
void vp9_initialize_rd_consts(VP9_COMP *cpi) {
VP9_COMMON *const cm = &cpi->common;
MACROBLOCK *const x = &cpi->td.mb;
+ MACROBLOCKD *const xd = &cpi->td.mb.e_mbd;
RD_OPT *const rd = &cpi->rd;
int i;
@@ -280,6 +281,7 @@ void vp9_initialize_rd_consts(VP9_COMP *cpi) {
cm->frame_type != KEY_FRAME) ? 0 : 1;
set_block_thresholds(cm, rd);
+ set_partition_probs(cm, xd);
if (!cpi->sf.use_nonrd_pick_mode || cm->frame_type == KEY_FRAME)
fill_token_costs(x->token_costs, cm->fc->coef_probs);
@@ -287,7 +289,7 @@ void vp9_initialize_rd_consts(VP9_COMP *cpi) {
if (cpi->sf.partition_search_type != VAR_BASED_PARTITION ||
cm->frame_type == KEY_FRAME) {
for (i = 0; i < PARTITION_CONTEXTS; ++i)
- vp9_cost_tokens(cpi->partition_cost[i], get_partition_probs(cm, i),
+ vp9_cost_tokens(cpi->partition_cost[i], get_partition_probs(xd, i),
vp9_partition_tree);
}