From fd96deb06c7ab78f0f66ee43786bb912c67e17eb Mon Sep 17 00:00:00 2001 From: Jim Bankoski Date: Wed, 17 Dec 2014 11:41:06 -0800 Subject: [PATCH] remove static initializers for partition tree Could have problem with 2 encoders. Change-Id: I92d326933c00fee688f77b54acf467ca5a8516bc see: https://code.google.com/p/webm/issues/detail?id=900&thanks=900&ts=1418843841 --- vp9/encoder/vp9_bitstream.c | 20 +++++++++----------- vp9/encoder/vp9_bitstream.h | 2 -- vp9/encoder/vp9_encoder.c | 1 - 3 files changed, 9 insertions(+), 14 deletions(-) diff --git a/vp9/encoder/vp9_bitstream.c b/vp9/encoder/vp9_bitstream.c index 20368f0..019d5b9 100644 --- a/vp9/encoder/vp9_bitstream.c +++ b/vp9/encoder/vp9_bitstream.c @@ -34,17 +34,15 @@ #include "vp9/encoder/vp9_tokenize.h" #include "vp9/encoder/vp9_write_bit_buffer.h" -static struct vp9_token intra_mode_encodings[INTRA_MODES]; -static struct vp9_token switchable_interp_encodings[SWITCHABLE_FILTERS]; -static struct vp9_token partition_encodings[PARTITION_TYPES]; -static struct vp9_token inter_mode_encodings[INTER_MODES]; - -void vp9_entropy_mode_init() { - vp9_tokens_from_tree(intra_mode_encodings, vp9_intra_mode_tree); - vp9_tokens_from_tree(switchable_interp_encodings, vp9_switchable_interp_tree); - vp9_tokens_from_tree(partition_encodings, vp9_partition_tree); - vp9_tokens_from_tree(inter_mode_encodings, vp9_inter_mode_tree); -} +static const struct vp9_token intra_mode_encodings[INTRA_MODES] = { + {0, 1}, {6, 3}, {28, 5}, {30, 5}, {58, 6}, {59, 6}, {126, 7}, {127, 7}, + {62, 6}, {2, 2}}; +static const struct vp9_token switchable_interp_encodings[SWITCHABLE_FILTERS] = + {{0, 1}, {2, 2}, {3, 2}}; +static const struct vp9_token partition_encodings[PARTITION_TYPES] = + {{0, 1}, {2, 2}, {6, 3}, {7, 3}}; +static const struct vp9_token inter_mode_encodings[INTER_MODES] = + {{2, 2}, {6, 3}, {0, 1}, {7, 3}}; static void write_intra_mode(vp9_writer *w, PREDICTION_MODE mode, const vp9_prob *probs) { diff --git a/vp9/encoder/vp9_bitstream.h b/vp9/encoder/vp9_bitstream.h index 4f0e46f..da6b414 100644 --- a/vp9/encoder/vp9_bitstream.h +++ b/vp9/encoder/vp9_bitstream.h @@ -18,8 +18,6 @@ extern "C" { #include "vp9/encoder/vp9_encoder.h" -void vp9_entropy_mode_init(); - void vp9_pack_bitstream(VP9_COMP *cpi, uint8_t *dest, size_t *size); static INLINE int vp9_preserve_existing_gf(VP9_COMP *cpi) { diff --git a/vp9/encoder/vp9_encoder.c b/vp9/encoder/vp9_encoder.c index aaa6b23..620027e 100644 --- a/vp9/encoder/vp9_encoder.c +++ b/vp9/encoder/vp9_encoder.c @@ -192,7 +192,6 @@ void vp9_initialize_enc() { vp9_init_me_luts(); vp9_rc_init_minq_luts(); vp9_entropy_mv_init(); - vp9_entropy_mode_init(); vp9_temporal_filter_init(); init_done = 1; } -- 2.7.4