summaryrefslogtreecommitdiff
path: root/vp10/encoder/rd.c
diff options
context:
space:
mode:
authorDebargha Mukherjee <debargha@google.com>2016-01-06 11:24:57 -0800
committerDebargha Mukherjee <debargha@google.com>2016-01-08 11:13:46 -0800
commitf7dfa4ece7b4e2aef190923abe4a3f1d3ca3ece8 (patch)
tree4f775faea7fd1be5147f090025b413ed62e428ab /vp10/encoder/rd.c
parent2bd4f444092bf1902a1caca66e14e8e75189191d (diff)
downloadlibvpx-f7dfa4ece7b4e2aef190923abe4a3f1d3ca3ece8.tar
libvpx-f7dfa4ece7b4e2aef190923abe4a3f1d3ca3ece8.tar.gz
libvpx-f7dfa4ece7b4e2aef190923abe4a3f1d3ca3ece8.tar.bz2
libvpx-f7dfa4ece7b4e2aef190923abe4a3f1d3ca3ece8.zip
Modifies inter/intra coding to allow all tx types
The nominal tx_type for a given mode is used as a context to encode the actual tx_type for intra. Results: derflr: -0.241% BDRATE hevcmr: -0.366% BDRATE Change-Id: Icfe7b0a58d79bc6497a06e3441779afec6e01e21
Diffstat (limited to 'vp10/encoder/rd.c')
-rw-r--r--vp10/encoder/rd.c14
1 files changed, 14 insertions, 0 deletions
diff --git a/vp10/encoder/rd.c b/vp10/encoder/rd.c
index 5623a7202..e24b89501 100644
--- a/vp10/encoder/rd.c
+++ b/vp10/encoder/rd.c
@@ -83,6 +83,20 @@ static void fill_mode_costs(VP10_COMP *cpi) {
for (i = 0; i < SWITCHABLE_FILTER_CONTEXTS; ++i)
vp10_cost_tokens(cpi->switchable_interp_costs[i],
fc->switchable_interp_prob[i], vp10_switchable_interp_tree);
+
+#if CONFIG_EXT_TX
+ for (i = TX_4X4; i < EXT_TX_SIZES; ++i) {
+ for (j = 0; j < TX_TYPES; ++j)
+ vp10_cost_tokens(cpi->intra_tx_type_costs[i][j],
+ fc->intra_ext_tx_prob[i][j],
+ vp10_ext_tx_tree);
+ }
+ for (i = TX_4X4; i < EXT_TX_SIZES; ++i) {
+ vp10_cost_tokens(cpi->inter_tx_type_costs[i],
+ fc->inter_ext_tx_prob[i],
+ vp10_ext_tx_tree);
+ }
+#endif // CONFIG_EXT_TX
}
static void fill_token_costs(vp10_coeff_cost *c,