From 204ff1c868097b41ce95465970cd81bce52ae2b2 Mon Sep 17 00:00:00 2001 From: Dmitry Kovalev Date: Mon, 25 Nov 2013 12:44:05 -0800 Subject: [PATCH] Removing vp9_modecosts.{c, h} files. Renaming vp9_init_mode_costs() to fill_mode_costs() and moving it to vp9_rdopt.c. Change-Id: Ib2542d216458f6dced9f4b7ccbdd2cd98176aa5a --- vp9/encoder/vp9_modecosts.c | 43 ------------------------------------- vp9/encoder/vp9_modecosts.h | 17 --------------- vp9/encoder/vp9_rdopt.c | 27 +++++++++++++++++++++-- vp9/vp9cx.mk | 2 -- 4 files changed, 25 insertions(+), 64 deletions(-) delete mode 100644 vp9/encoder/vp9_modecosts.c delete mode 100644 vp9/encoder/vp9_modecosts.h diff --git a/vp9/encoder/vp9_modecosts.c b/vp9/encoder/vp9_modecosts.c deleted file mode 100644 index 7eb659232..000000000 --- a/vp9/encoder/vp9_modecosts.c +++ /dev/null @@ -1,43 +0,0 @@ -/* - * Copyright (c) 2010 The WebM project authors. All Rights Reserved. - * - * Use of this source code is governed by a BSD-style license - * that can be found in the LICENSE file in the root of the source - * tree. An additional intellectual property rights grant can be found - * in the file PATENTS. All contributing project authors may - * be found in the AUTHORS file in the root of the source tree. - */ - - -#include "vp9/common/vp9_blockd.h" -#include "vp9/encoder/vp9_onyx_int.h" -#include "vp9/encoder/vp9_treewriter.h" -#include "vp9/common/vp9_entropymode.h" - - -void vp9_init_mode_costs(VP9_COMP *c) { - VP9_COMMON *const cm = &c->common; - const vp9_tree_index *KT = vp9_intra_mode_tree; - int i, j; - - for (i = 0; i < INTRA_MODES; i++) { - for (j = 0; j < INTRA_MODES; j++) { - vp9_cost_tokens((int *)c->mb.y_mode_costs[i][j], vp9_kf_y_mode_prob[i][j], - KT); - } - } - - // TODO(rbultje) separate tables for superblock costing? - vp9_cost_tokens(c->mb.mbmode_cost, cm->fc.y_mode_prob[1], - vp9_intra_mode_tree); - vp9_cost_tokens(c->mb.intra_uv_mode_cost[1], - cm->fc.uv_mode_prob[INTRA_MODES - 1], vp9_intra_mode_tree); - vp9_cost_tokens(c->mb.intra_uv_mode_cost[0], - vp9_kf_uv_mode_prob[INTRA_MODES - 1], - vp9_intra_mode_tree); - - for (i = 0; i < SWITCHABLE_FILTER_CONTEXTS; ++i) - vp9_cost_tokens((int *)c->mb.switchable_interp_costs[i], - cm->fc.switchable_interp_prob[i], - vp9_switchable_interp_tree); -} diff --git a/vp9/encoder/vp9_modecosts.h b/vp9/encoder/vp9_modecosts.h deleted file mode 100644 index f43033e5f..000000000 --- a/vp9/encoder/vp9_modecosts.h +++ /dev/null @@ -1,17 +0,0 @@ -/* - * Copyright (c) 2010 The WebM project authors. All Rights Reserved. - * - * Use of this source code is governed by a BSD-style license - * that can be found in the LICENSE file in the root of the source - * tree. An additional intellectual property rights grant can be found - * in the file PATENTS. All contributing project authors may - * be found in the AUTHORS file in the root of the source tree. - */ - - -#ifndef VP9_ENCODER_VP9_MODECOSTS_H_ -#define VP9_ENCODER_VP9_MODECOSTS_H_ - -void vp9_init_mode_costs(VP9_COMP *x); - -#endif // VP9_ENCODER_VP9_MODECOSTS_H_ diff --git a/vp9/encoder/vp9_rdopt.c b/vp9/encoder/vp9_rdopt.c index 9fed2006e..43b7d6b7c 100644 --- a/vp9/encoder/vp9_rdopt.c +++ b/vp9/encoder/vp9_rdopt.c @@ -17,7 +17,6 @@ #include "vp9/encoder/vp9_tokenize.h" #include "vp9/encoder/vp9_treewriter.h" #include "vp9/encoder/vp9_onyx_int.h" -#include "vp9/encoder/vp9_modecosts.h" #include "vp9/common/vp9_entropymode.h" #include "vp9/common/vp9_reconinter.h" #include "vp9/common/vp9_reconintra.h" @@ -114,6 +113,30 @@ static int rd_thresh_block_size_factor[BLOCK_SIZES] = #define MV_COST_WEIGHT 108 #define MV_COST_WEIGHT_SUB 120 +static void fill_mode_costs(VP9_COMP *c) { + VP9_COMMON *const cm = &c->common; + int i, j; + + for (i = 0; i < INTRA_MODES; i++) + for (j = 0; j < INTRA_MODES; j++) + vp9_cost_tokens((int *)c->mb.y_mode_costs[i][j], vp9_kf_y_mode_prob[i][j], + vp9_intra_mode_tree); + + // TODO(rbultje) separate tables for superblock costing? + vp9_cost_tokens(c->mb.mbmode_cost, cm->fc.y_mode_prob[1], + vp9_intra_mode_tree); + vp9_cost_tokens(c->mb.intra_uv_mode_cost[1], + cm->fc.uv_mode_prob[INTRA_MODES - 1], vp9_intra_mode_tree); + vp9_cost_tokens(c->mb.intra_uv_mode_cost[0], + vp9_kf_uv_mode_prob[INTRA_MODES - 1], + vp9_intra_mode_tree); + + for (i = 0; i < SWITCHABLE_FILTER_CONTEXTS; ++i) + vp9_cost_tokens((int *)c->mb.switchable_interp_costs[i], + cm->fc.switchable_interp_prob[i], + vp9_switchable_interp_tree); +} + static void fill_token_costs(vp9_coeff_cost *c, vp9_coeff_probs_model (*p)[BLOCK_TYPES]) { int i, j, k, l; @@ -258,7 +281,7 @@ void vp9_initialize_rd_consts(VP9_COMP *cpi) { vp9_partition_tree); /*rough estimate for costing*/ - vp9_init_mode_costs(cpi); + fill_mode_costs(cpi); if (!frame_is_intra_only(cm)) { vp9_build_nmv_cost_table( diff --git a/vp9/vp9cx.mk b/vp9/vp9cx.mk index bd13518f5..74727848e 100644 --- a/vp9/vp9cx.mk +++ b/vp9/vp9cx.mk @@ -38,7 +38,6 @@ VP9_CX_SRCS-yes += encoder/vp9_firstpass.h VP9_CX_SRCS-yes += encoder/vp9_lookahead.c VP9_CX_SRCS-yes += encoder/vp9_lookahead.h VP9_CX_SRCS-yes += encoder/vp9_mcomp.h -VP9_CX_SRCS-yes += encoder/vp9_modecosts.h VP9_CX_SRCS-yes += encoder/vp9_onyx_int.h VP9_CX_SRCS-yes += encoder/vp9_psnr.h VP9_CX_SRCS-yes += encoder/vp9_quantize.h @@ -49,7 +48,6 @@ VP9_CX_SRCS-yes += encoder/vp9_tokenize.h VP9_CX_SRCS-yes += encoder/vp9_treewriter.h VP9_CX_SRCS-yes += encoder/vp9_variance.h VP9_CX_SRCS-yes += encoder/vp9_mcomp.c -VP9_CX_SRCS-yes += encoder/vp9_modecosts.c VP9_CX_SRCS-yes += encoder/vp9_onyx_if.c VP9_CX_SRCS-yes += encoder/vp9_picklpf.c VP9_CX_SRCS-yes += encoder/vp9_picklpf.h