Code class0 using aom_read() / aom_write().
The av1_mv_class0_tree is a balanced tree with two leafs and can
simply be coded as a boolean with probability class0[0].
If CLASS0_SIZE is ever changed from 1, this change will need to be
reverted.
Change-Id: If294dac825a5f945371092c74aa8e3f84cd962b6
diff --git a/av1/encoder/encodemv.c b/av1/encoder/encodemv.c
index da6f35c..7276fee 100644
--- a/av1/encoder/encodemv.c
+++ b/av1/encoder/encodemv.c
@@ -23,12 +23,10 @@
static struct av1_token mv_joint_encodings[MV_JOINTS];
static struct av1_token mv_class_encodings[MV_CLASSES];
static struct av1_token mv_fp_encodings[MV_FP_SIZE];
-static struct av1_token mv_class0_encodings[CLASS0_SIZE];
void av1_entropy_mv_init(void) {
av1_tokens_from_tree(mv_joint_encodings, av1_mv_joint_tree);
av1_tokens_from_tree(mv_class_encodings, av1_mv_class_tree);
- av1_tokens_from_tree(mv_class0_encodings, av1_mv_class0_tree);
av1_tokens_from_tree(mv_fp_encodings, av1_mv_fp_tree);
}
@@ -53,8 +51,7 @@
// Integer bits
if (mv_class == MV_CLASS_0) {
- av1_write_token(w, av1_mv_class0_tree, mvcomp->class0,
- &mv_class0_encodings[d]);
+ aom_write(w, d, mvcomp->class0[0]);
} else {
int i;
const int n = mv_class + CLASS0_BITS - 1; // number of bits