chromium/third_party/libvpx/source/libvpx/vp9/common/vp9_entropy.c

/*
 *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
 *
 *  Use of this source code is governed by a BSD-style license
 *  that can be found in the LICENSE file in the root of the source
 *  tree. An additional intellectual property rights grant can be found
 *  in the file PATENTS.  All contributing project authors may
 *  be found in the AUTHORS file in the root of the source tree.
 */

#include "vp9/common/vp9_entropy.h"
#include "vp9/common/vp9_blockd.h"
#include "vp9/common/vp9_onyxc_int.h"
#include "vp9/common/vp9_entropymode.h"
#include "vpx_mem/vpx_mem.h"
#include "vpx/vpx_integer.h"

// Unconstrained Node Tree
/* clang-format off */
const vpx_tree_index vp9_coef_con_tree[TREE_SIZE(ENTROPY_TOKENS)] =;
/* clang-format on */

const vpx_prob vp9_cat1_prob[] =;
const vpx_prob vp9_cat2_prob[] =;
const vpx_prob vp9_cat3_prob[] =;
const vpx_prob vp9_cat4_prob[] =;
const vpx_prob vp9_cat5_prob[] =;
const vpx_prob vp9_cat6_prob[] =;
#if CONFIG_VP9_HIGHBITDEPTH
const vpx_prob vp9_cat6_prob_high12[] =;
#endif

/* clang-format off */
const uint8_t vp9_coefband_trans_8x8plus[1024] =;
/* clang-format on */

const uint8_t vp9_coefband_trans_4x4[16] =;

const uint8_t vp9_pt_energy_class[ENTROPY_TOKENS] =;

// Model obtained from a 2-sided zero-centerd distribuition derived
// from a Pareto distribution. The cdf of the distribution is:
// cdf(x) = 0.5 + 0.5 * sgn(x) * [1 - {alpha/(alpha + |x|)} ^ beta]
//
// For a given beta and a given probablity of the 1-node, the alpha
// is first solved, and then the {alpha, beta} pair is used to generate
// the probabilities for the rest of the nodes.

// beta = 8

// Every odd line in this table can be generated from the even lines
// by averaging :
// vp9_pareto8_full[l][node] = (vp9_pareto8_full[l-1][node] +
//                              vp9_pareto8_full[l+1][node] ) >> 1;
const vpx_prob vp9_pareto8_full[COEFF_PROB_MODELS][MODEL_NODES] =;

static const vp9_coeff_probs_model default_coef_probs_4x4[PLANE_TYPES] =;

static const vp9_coeff_probs_model default_coef_probs_8x8[PLANE_TYPES] =;

static const vp9_coeff_probs_model default_coef_probs_16x16[PLANE_TYPES] =;

static const vp9_coeff_probs_model default_coef_probs_32x32[PLANE_TYPES] =;

static void extend_to_full_distribution(vpx_prob *probs, vpx_prob p) {}

void vp9_model_to_full_probs(const vpx_prob *model, vpx_prob *full) {}

void vp9_default_coef_probs(VP9_COMMON *cm) {}

#define COEF_COUNT_SAT
#define COEF_MAX_UPDATE_FACTOR
#define COEF_COUNT_SAT_KEY
#define COEF_MAX_UPDATE_FACTOR_KEY
#define COEF_COUNT_SAT_AFTER_KEY
#define COEF_MAX_UPDATE_FACTOR_AFTER_KEY

static void adapt_coef_probs(VP9_COMMON *cm, TX_SIZE tx_size,
                             unsigned int count_sat,
                             unsigned int update_factor) {}

void vp9_adapt_coef_probs(VP9_COMMON *cm) {}