diff options
author | Alex Converse <aconverse@google.com> | 2015-10-28 20:48:52 +0000 |
---|---|---|
committer | Gerrit Code Review <noreply-gerritcodereview@google.com> | 2015-10-28 20:48:52 +0000 |
commit | e765969971170118fe65e379c483d6414c9c89b3 (patch) | |
tree | 3b0500aaebb30671501a317cee6509008ca50062 | |
parent | bb0bc06fa5b9f39436458ef53071bfb4c99c156d (diff) | |
parent | 663960e7579d30b46a298f5236324b07daac4799 (diff) | |
download | libvpx-e765969971170118fe65e379c483d6414c9c89b3.tar libvpx-e765969971170118fe65e379c483d6414c9c89b3.tar.gz libvpx-e765969971170118fe65e379c483d6414c9c89b3.tar.bz2 libvpx-e765969971170118fe65e379c483d6414c9c89b3.zip |
Merge "Revert "Replace the zero handling in extend_to_full_distribution.""
-rw-r--r-- | vp10/common/entropy.c | 9 | ||||
-rw-r--r-- | vp10/common/entropy.h | 2 | ||||
-rw-r--r-- | vp9/common/vp9_entropy.c | 9 | ||||
-rw-r--r-- | vp9/common/vp9_entropy.h | 2 |
4 files changed, 10 insertions, 12 deletions
diff --git a/vp10/common/entropy.c b/vp10/common/entropy.c index 16765061b..56dd73a4a 100644 --- a/vp10/common/entropy.c +++ b/vp10/common/entropy.c @@ -403,6 +403,7 @@ const vpx_prob vp10_pareto8_full[COEFF_PROB_MODELS][MODEL_NODES] = { {255, 241, 243, 255, 236, 255, 252, 254}, {255, 243, 245, 255, 237, 255, 252, 254}, {255, 246, 247, 255, 239, 255, 253, 255}, + {255, 246, 247, 255, 239, 255, 253, 255}, }; static const vp10_coeff_probs_model default_coef_probs_4x4[PLANE_TYPES] = { @@ -742,16 +743,14 @@ static const vp10_coeff_probs_model default_coef_probs_32x32[PLANE_TYPES] = { }; static void extend_to_full_distribution(vpx_prob *probs, vpx_prob p) { - memcpy(probs, vp10_pareto8_full[p - 1], MODEL_NODES * sizeof(vpx_prob)); + memcpy(probs, vp10_pareto8_full[p = 0 ? 0 : p - 1], + MODEL_NODES * sizeof(vpx_prob)); } void vp10_model_to_full_probs(const vpx_prob *model, vpx_prob *full) { if (full != model) memcpy(full, model, sizeof(vpx_prob) * UNCONSTRAINED_NODES); - // TODO(aconverse): model[PIVOT_NODE] should never be zero. - // https://code.google.com/p/webm/issues/detail?id=1089 - if (model[PIVOT_NODE] != 0) - extend_to_full_distribution(&full[UNCONSTRAINED_NODES], model[PIVOT_NODE]); + extend_to_full_distribution(&full[UNCONSTRAINED_NODES], model[PIVOT_NODE]); } void vp10_default_coef_probs(VP10_COMMON *cm) { diff --git a/vp10/common/entropy.h b/vp10/common/entropy.h index 2f93cb31c..fba7020a5 100644 --- a/vp10/common/entropy.h +++ b/vp10/common/entropy.h @@ -153,7 +153,7 @@ static INLINE const uint8_t *get_band_translate(TX_SIZE tx_size) { // 1, 3, 5, 7, ..., 253, 255 // In between probabilities are interpolated linearly -#define COEFF_PROB_MODELS 255 +#define COEFF_PROB_MODELS 256 #define UNCONSTRAINED_NODES 3 diff --git a/vp9/common/vp9_entropy.c b/vp9/common/vp9_entropy.c index 719e542ce..579857bc9 100644 --- a/vp9/common/vp9_entropy.c +++ b/vp9/common/vp9_entropy.c @@ -403,6 +403,7 @@ const vpx_prob vp9_pareto8_full[COEFF_PROB_MODELS][MODEL_NODES] = { {255, 241, 243, 255, 236, 255, 252, 254}, {255, 243, 245, 255, 237, 255, 252, 254}, {255, 246, 247, 255, 239, 255, 253, 255}, + {255, 246, 247, 255, 239, 255, 253, 255}, }; static const vp9_coeff_probs_model default_coef_probs_4x4[PLANE_TYPES] = { @@ -742,16 +743,14 @@ static const vp9_coeff_probs_model default_coef_probs_32x32[PLANE_TYPES] = { }; static void extend_to_full_distribution(vpx_prob *probs, vpx_prob p) { - memcpy(probs, vp9_pareto8_full[p - 1], MODEL_NODES * sizeof(vpx_prob)); + memcpy(probs, vp9_pareto8_full[p = 0 ? 0 : p - 1], + MODEL_NODES * sizeof(vpx_prob)); } void vp9_model_to_full_probs(const vpx_prob *model, vpx_prob *full) { if (full != model) memcpy(full, model, sizeof(vpx_prob) * UNCONSTRAINED_NODES); - // TODO(aconverse): model[PIVOT_NODE] should never be zero. - // https://code.google.com/p/webm/issues/detail?id=1089 - if (model[PIVOT_NODE] != 0) - extend_to_full_distribution(&full[UNCONSTRAINED_NODES], model[PIVOT_NODE]); + extend_to_full_distribution(&full[UNCONSTRAINED_NODES], model[PIVOT_NODE]); } void vp9_default_coef_probs(VP9_COMMON *cm) { diff --git a/vp9/common/vp9_entropy.h b/vp9/common/vp9_entropy.h index 63b3bff5d..21611ed6d 100644 --- a/vp9/common/vp9_entropy.h +++ b/vp9/common/vp9_entropy.h @@ -138,7 +138,7 @@ static INLINE const uint8_t *get_band_translate(TX_SIZE tx_size) { // 1, 3, 5, 7, ..., 253, 255 // In between probabilities are interpolated linearly -#define COEFF_PROB_MODELS 255 +#define COEFF_PROB_MODELS 256 #define UNCONSTRAINED_NODES 3 |