summaryrefslogtreecommitdiff
path: root/vp8/encoder/encodeframe.c
diff options
context:
space:
mode:
authorDeb Mukherjee <debargha@google.com>2012-09-09 22:42:35 -0700
committerDeb Mukherjee <debargha@google.com>2012-09-27 11:21:39 -0700
commit3f5d60b38442e7f0ba37883c4b636150305dfae0 (patch)
tree0987351ddb373538b16073599e3f8bde1fa9a6ce /vp8/encoder/encodeframe.c
parent70e21afb3fac6bb5cdfa4c8063521f5b634c0379 (diff)
downloadlibvpx-3f5d60b38442e7f0ba37883c4b636150305dfae0.tar
libvpx-3f5d60b38442e7f0ba37883c4b636150305dfae0.tar.gz
libvpx-3f5d60b38442e7f0ba37883c4b636150305dfae0.tar.bz2
libvpx-3f5d60b38442e7f0ba37883c4b636150305dfae0.zip
Entropy coding for hybrid transform
Separates the entropy coding context models for 4x4, 8x8 and 16x16 ADST variants. There is a small improvement for HD (hd/std-hd) by about 0.1-0.2%. Results on derf/yt are about the same, probably because there is not enough statistics. Results may improve somewhat once the initial probability tables are updated for the hybrid transforms which is coming soon. Change-Id: Ic7c0c62dacc68ef551054fdb575be8b8507d32a8
Diffstat (limited to 'vp8/encoder/encodeframe.c')
-rw-r--r--vp8/encoder/encodeframe.c13
1 files changed, 12 insertions, 1 deletions
diff --git a/vp8/encoder/encodeframe.c b/vp8/encoder/encodeframe.c
index 9b793e20a..584570da9 100644
--- a/vp8/encoder/encodeframe.c
+++ b/vp8/encoder/encodeframe.c
@@ -1297,6 +1297,8 @@ static void encode_frame_internal(VP8_COMP *cpi) {
TOKENEXTRA *tp = cpi->tok;
int totalrate;
+ //printf("encode_frame_internal\n");
+
// Compute a modified set of reference frame probabilities to use when
// prediction fails. These are based on the current general estimates for
// this frame which may be updated with each iteration of the recode loop.
@@ -1360,9 +1362,18 @@ static void encode_frame_internal(VP8_COMP *cpi) {
vp8_zero(cpi->MVcount_hp);
#endif
vp8_zero(cpi->coef_counts);
+#if CONFIG_HYBRIDTRANSFORM
+ vp8_zero(cpi->hybrid_coef_counts);
+#endif
vp8_zero(cpi->coef_counts_8x8);
-#if CONFIG_TX16X16 || CONFIG_HYBRIDTRANSFORM16X16
+#if CONFIG_HYBRIDTRANSFORM8X8
+ vp8_zero(cpi->hybrid_coef_counts_8x8);
+#endif
+#if CONFIG_TX16X16
vp8_zero(cpi->coef_counts_16x16);
+#if CONFIG_HYBRIDTRANSFORM16X16
+ vp8_zero(cpi->hybrid_coef_counts_16x16);
+#endif
#endif
vp8cx_frame_init_quantizer(cpi);