libg722_1  0.0.1
huff_tab.c File Reference
#include <inttypes.h>
#include <stdlib.h>
#include "g722_1/g722_1.h"
#include "defs.h"
#include "huff_tab.h"

Variables

const int16_t differential_region_power_bits [MAX_NUMBER_OF_REGIONS][DIFF_REGION_POWER_LEVELS]
const uint16_t differential_region_power_codes [MAX_NUMBER_OF_REGIONS][DIFF_REGION_POWER_LEVELS]
const int16_t differential_region_power_decoder_tree [MAX_NUMBER_OF_REGIONS][DIFF_REGION_POWER_LEVELS-1][2]
const float mlt_quant_centroid [NUM_CATEGORIES-1][MAX_NUM_BINS]
const int16_t expected_bits_table [NUM_CATEGORIES]
const int16_t mlt_sqvh_bitcount_category_0 [196]
const uint16_t mlt_sqvh_code_category_0 [196]
const int16_t mlt_sqvh_bitcount_category_1 [100]
const uint16_t mlt_sqvh_code_category_1 [100]
const int16_t mlt_sqvh_bitcount_category_2 [49]
const uint16_t mlt_sqvh_code_category_2 [49]
const int16_t mlt_sqvh_bitcount_category_3 [625]
const uint16_t mlt_sqvh_code_category_3 [625]
const int16_t mlt_sqvh_bitcount_category_4 [256]
const uint16_t mlt_sqvh_code_category_4 [256]
const int16_t mlt_sqvh_bitcount_category_5 [243]
const uint16_t mlt_sqvh_code_category_5 [243]
const int16_t mlt_sqvh_bitcount_category_6 [32]
const uint16_t mlt_sqvh_code_category_6 [32]
const int16_t * table_of_bitcount_tables [NUM_CATEGORIES-1]
const uint16_t * table_of_code_tables [NUM_CATEGORIES-1]
const int16_t mlt_decoder_tree_category_0 [180][2]
const int16_t mlt_decoder_tree_category_1 [93][2]
const int16_t mlt_decoder_tree_category_2 [47][2]
const int16_t mlt_decoder_tree_category_3 [519][2]
const int16_t mlt_decoder_tree_category_4 [208][2]
const int16_t mlt_decoder_tree_category_5 [191][2]
const int16_t mlt_decoder_tree_category_6 [31][2]
const int16_t * table_of_decoder_tables [NUM_CATEGORIES-1]

Detailed Description


Variable Documentation

const int16_t expected_bits_table[NUM_CATEGORIES]
Initial value:
{
    52, 47, 43, 37, 29, 22, 16,  0
}
const int16_t mlt_decoder_tree_category_0[180][2]
Initial value:
{
    {   1,   0}, {   2,   3}, {   4,   5}, {   6,   7}, {   8,   9}, {  -1, -14}, {  10,  11}, {  12,  13},
    {  14,  15}, {  16,  17}, {  18,  19}, { -15,  20}, {  21,  22}, {  23, -28}, {  24,  -2}, {  25,  26},
    {  27,  28}, {  29,  30}, {  31,  32}, { -29,  33}, { -16,  34}, {  -3,  35}, {  36,  37}, { -42,  38},
    {  39,  40}, {  41,  42}, {  43,  44}, { -17,  45}, { -43,  46}, {  47,  48}, {  -4,  49}, { -56,  50},
    {  51,  52}, {  53,  54}, {  55,  56}, { -57,  -5}, { -30,  57}, {  58,  59}, { -18,  60}, {  61, -70},
    {  62,  63}, {  64,  -6}, {  65,  66}, { -44,  67}, { -71,  68}, {  69,  70}, { -19, -31}, { -84,  71},
    {  72,  73}, {  74,  75}, {  76,  77}, {  -7,  78}, {  79, -20}, {  80,  81}, { -85,  82}, { -98,  83},
    { -58,  84}, {  85, -32}, { -99,  86}, {  -8,  87}, {  88,  89}, { -72, -45}, {  90, -33}, {  91,-112},
    { -21,  92}, { -59,-113}, { -46,  93}, {  -9,  94}, { -22,  95}, {  96,  97}, {  98,  99}, { -23, -86},
    { 100, 101}, { -34, -73}, { 102,-126}, {-127, -35}, { 103, -47}, { 104, 105}, { 106, 107}, {-140,-100},
    {-114, -87}, { 108, 109}, { 110, 111}, {-141, -60}, { 112, -48}, { 113, -24}, { -10, -61}, { 114,-101},
    { 115, 116}, { -74, -36}, { 117,-128}, { 118, -62}, { 119, 120}, { -37, 121}, { -11, -49}, { -88, 122},
    { 123,-115}, {-154, -25}, {-142, 124}, {-155,-129}, { 125, -50}, { 126, 127}, { -76, -75}, { 128, 129},
    { -63, -77}, {-102, -39}, { -38, 130}, { -51, 131}, { -89,-116}, {-117,-156}, { 132, -52}, { -78, 133},
    { 134,-103}, { 135, 136}, {-143, -65}, { 137, -64}, {-130,-131}, { -90, 138}, {-104, -91}, { -92, 139},
    {-169,-183}, { -26,-118}, { 140, 141}, {-144, -66}, { -12, 142}, {-168, 143}, {-105,-157}, { 144,-182},
    { 145, 146}, { -79, 147}, { -53,-170}, { 148, 149}, { -27,-145}, { 150, -80}, {-106, -13}, {-132, -67},
    {-158, -40}, {-119, 151}, { 152,-107}, { 153, 154}, { -41,-184}, { 155, 156}, { -54, 157}, {-171, 158},
    { -94, 159}, {-134,-146}, { -93,-133}, {-159,-108}, { 160, -81}, { 161,-160}, { 162, -68}, {-120,-122},
    {-172, 163}, { -55, -95}, { 164,-109}, {-161, -82}, {-173,-185}, { 165, -69}, {-147,-186}, { 166, 167},
    {-121, -96}, { 168,-148}, {-174, 169}, { 170,-136}, { -83, 171}, { 172, 173}, {-135,-110}, {-187, 174},
    {-149,-150}, { 175,-123}, {-162,-163}, { -97,-175}, {-188, 176}, { 177, 178}, { 179,-111}, {-151,-124},
    {-137,-177}, {-176,-125}, {-164,-138}, {-189,-190},
}
const int16_t mlt_decoder_tree_category_1[93][2]
Initial value:
{
    {   1,   0}, {   2,   3}, {   4,   5}, {   6,   7}, {   8, -10}, {  -1,   9}, {  10,  11}, {  12,  13},
    { -11,  14}, {  15,  16}, {  17,  18}, { -20,  -2}, {  19,  20}, { -21,  21}, {  22,  23}, { -12,  24},
    {  25,  26}, {  27,  28}, {  29,  30}, { -30,  31}, { -31,  -3}, {  32, -22}, {  33, -13}, {  34,  35},
    {  36,  37}, {  38,  39}, {  40,  -4}, { -41, -14}, {  41, -40}, { -32,  42}, {  43, -23}, {  44,  45},
    {  46,  47}, {  48,  -5}, { -51, -50}, { -42,  49}, { -33,  50}, { -15,  51}, {  52,  53}, {  54, -24},
    {  55, -43}, {  56, -52}, {  57, -61}, { -60,  58}, { -25,  59}, { -16, -34}, {  -6,  60}, { -62,  61},
    { -71,  62}, { -35,  -7}, {  63, -72}, { -53, -17}, {  64, -44}, { -26, -70}, {  65, -45}, { -36,  66},
    { -63,  67}, { -80, -54}, { -81,  68}, { -27,  69}, {  70, -82}, { -18,  71}, {  72, -55}, {  73, -64},
    {  74, -73}, {  75, -46}, { -37,  76}, { -91,  -8}, {  -9,  77}, { -90, -83}, {  78, -28}, {  79, -56},
    { -65, -38}, { -74,  80}, { -19, -57}, { -92,  81}, { -47, -48}, {  82, -66}, {  83, -29}, { -84,  84},
    { -75, -85}, { -67, -93}, { -39,  85}, { -76,  86}, { -58,  87}, {  88, -49}, { -94,  89}, {  90, -68},
    {  91, -78}, { -86, -59}, { -77, -95}, {  92, -69}, { -87, -96},
}
const int16_t mlt_decoder_tree_category_2[47][2]
Initial value:
{
    {   1,   0}, {   2,   3}, {   4,   5}, {   6,  -7}, {  -1,   7}, {  -8,   8}, {   9,  10}, {  11,  12},
    {  13, -14}, { -15,  -9}, {  -2,  14}, {  15,  16}, {  17,  18}, {  19, -16}, {  20, -22}, { -10,  21},
    { -21,  -3}, {  22,  23}, {  24,  25}, { -23, -17}, {  26,  27}, {  28, -29}, { -11, -28}, {  29,  30},
    {  -4, -24}, { -30,  31}, {  32, -18}, {  33, -35}, { -36,  34}, { -31, -12}, {  35, -25}, {  -5, -37},
    {  36,  37}, { -42,  38}, { -19, -43}, { -32,  39}, { -13, -38}, { -26, -20}, {  40,  -6}, { -44,  41},
    {  42, -39}, { -33, -45}, {  43, -27}, {  44, -46}, {  45, -34}, { -40,  46}, { -41, -47},
}
const int16_t mlt_decoder_tree_category_4[208][2]
Initial value:
{
    {   1,   2}, {   3,   0}, {   4,   5}, {   6,   7}, {   8,   9}, {  10,  11}, {  12, -64}, {  -1,  13},
    {  14, -16}, {  -4,  15}, {  16,  17}, {  18, -80}, {  -5,  19}, {  20,  21}, { -20,  22}, {  23, -65},
    { -84, -21}, { -68,  24}, { -17,  25}, {  26,  27}, {  28, -81}, { -69, -85}, {  29,  30}, {  31,  32},
    {-128,  33}, {  34,  35}, {  -2,  36}, {  37,  38}, {-144,  39}, {  40,  -6}, {  41,  42}, { -32,  43},
    {  44,  -8}, {  45, -25}, { -96,  46}, {  47,-100}, {  -9,  48}, {  49, -36}, {  50, -24}, {  51,  52},
    {  53,-148}, {  54,  55}, { -22,  56}, {  57,  58}, {-132, -89}, {  59,  60}, {-101,  61}, { -37,  62},
    { -18,  63}, { -88,-129}, { -66, -70}, { -97,  64}, { -72, -73}, {  65,-145}, {-149, -86}, {  66, -33},
    {  67,-133}, {  68,  69}, {  70,  71}, {-192,  72}, {  73,-160}, { -82,  74}, {-164,  75}, { -10,  76},
    {  77,-208}, {  78, -40}, {  79,  80}, {  -3,  81}, {  -7,  82}, {  83,  84}, {-104,  85}, {  86, -26},
    {  87,-105}, {  88,-112}, {  89,  90}, {  91, -41}, {  92,  93}, {  94,  95}, { -48,  96}, { -90,  97},
    {  98, -28}, { -52,  99}, { -12, 100}, { 101, -74}, { -13,-116}, {-161, 102}, { 103, -29}, {-102, 104},
    {-152,-165}, { 105, 106}, { 107, 108}, { 109, 110}, { 111,-212}, { 112, 113}, {-136, 114}, { 115,-137},
    { 116, -23}, { -19,-153}, { -98,-134}, {-196, 117}, { 118, 119}, { -38,-193}, {-113,-150}, {-209, 120},
    { 121, -93}, { -83, 122}, { 123, 124}, { 125, 126}, { 127, 128}, { 129, 130}, { 131, -34}, {-146, -53},
    { 132, 133}, { 134, 135}, { 136, 137}, { 138,-130}, { -49, 139}, { 140, 141}, {-117, -42}, { -67, -92},
    { 142, -87}, { -77,-197}, { -71, 143}, { 144, 145}, { 146, 147}, { 148, 149}, { 150, 151}, { 152, 153},
    { 154, 155}, { 156, 157}, { 158, 159}, { 160, 161}, { 162, 163}, { 164, 165}, { 166, 167}, { 168, 169},
    {-108, -76}, {-168,-169}, {-176, -44}, {-224, -56}, { -45,-180}, { -11,-106}, {-213, 170}, { 171, 172},
    { 173, 174}, { 175, 176}, { 177, 178}, { 179, 180}, { 181, 182}, { 183, 184}, { 185, 186}, { 187, 188},
    { 189, 190}, { 191, 192}, { 193, 194}, { 195, 196}, { 197, 198}, { 199, 200}, { 201, 202}, { 203, 204},
    { 205, 206}, { 207,-131}, { -30, -27}, { -43,-151}, { -75,-154}, {-156,-162}, {-109,-194}, {-198,-201},
    {-114,-225}, {-228,-229}, {-141,-142}, { -94,-124}, { -95,-147}, {-115,-125}, { -54, -55}, {-107, -58},
    { -39,-155}, {-121,-157}, {-158,-103}, { -14,-122}, {-163, -51}, { -57,-166}, {-167, -46}, {-110,-170},
    {-172,-173}, { -61,-177}, {-178, -99}, {-181,-182}, {-184,-185}, {-118, -35}, { -15,-195}, { -31, -60},
    {-135,-199}, {-200, -79}, {-202,-204}, {-205,-119}, { -91,-210}, {-211, -78}, {-120,-214}, {-215,-216},
    {-217,-218}, {-220,-221}, { -50,-138}, {-226,-139}, {-140,-230}, {-232,-233}, {-240,-241}, {-244,-245},
}
const int16_t mlt_decoder_tree_category_5[191][2]
Initial value:
{
    {   1,   2}, {   0,   3}, {   4,   5}, {   6,   7}, {   8,   9}, {  10,  11}, { -81,  -1}, {  12,  13},
    {  14, -27}, {  -3,  -9}, {  15,  16}, {  17,  18}, {  19,  20}, {-108,  21}, {  -4,  22}, {  23, -36},
    { -12,  24}, { -82,  25}, {  26, -84}, {  27, -90}, { -10, -30}, {  28,  29}, {  30, -28}, {  31,-117},
    { -13,  32}, { -39,  33}, {  34,-109}, {  35, -93}, { -85,-111}, { -37,  36}, { -31,  37}, { -91,  38},
    {  39,  40}, { -40,-120}, {  41,  42}, {-118,  43}, { -94,  44}, {-112,-162}, {  45,  46}, {  -2,  47},
    {  48,  49}, {-121,-189}, {  50, -54}, {  51,  52}, {  53, -18}, {  54,  55}, {  -6,  56}, {  57,  -5},
    {-135,  58}, {  59,  60}, {  61,  62}, { -63,  63}, {  64,  -7}, { -15,  65}, {  66,  67}, { -45,  68},
    {  69,  70}, {  71, -21}, {  72,  73}, {  74,  75}, {  76,  77}, {-163,  78}, {  79,-171}, {-144,  80},
    { -48,  81}, { -57,  82}, {  83,  84}, {-165,  85}, { -16,-198}, {  86,  87}, { -11,  88}, {  89, -99},
    {  90, -83}, { -19,  91}, {  92,  93}, {  94,  95}, {  96,  97}, {  98,  99}, { -87, 100}, { 101, 102},
    {-190, -66}, { -33,-192}, { 103, 104}, { 105, 106}, {-102, -42}, { 107,-126}, { 108, -29}, {-129, -46},
    { -86, -14}, {-114, -32}, {-172, 109}, { 110, -58}, { -34,-138}, { 111, 112}, { 113, 114}, { 115, 116},
    { 117, 118}, { 119, 120}, {-127,-166}, {-174, 121}, { 122, 123}, { 124, 125}, { -88, -96}, { 126,-100},
    { -38,-110}, { -22,-136}, { -55,-139}, {-201, 127}, { -64,-193}, { 128, -49}, {-175,-199}, { 129, 130},
    { 131, 132}, { 133, 134}, { 135, 136}, { 137, 138}, { 139, 140}, { 141, 142}, { 143, 144}, { 145, 146},
    { 147, 148}, { 149, 150}, {-103, -92}, { -43,-130}, {-145,-147}, {-148, -41}, {-216,-115}, {-119,-123},
    { -95, 151}, { 152, 153}, { 154, 155}, { 156, 157}, { 158, 159}, { 160, 161}, { 162, 163}, { 164, 165},
    { 166, 167}, { 168, 169}, { 170, 171}, { 172, 173}, { 174, 175}, { 176, 177}, { 178, 179}, { 180, 181},
    { 182, 183}, { 184, 185}, { 186, 187}, { 188, 189}, { 190,-153}, {-180,  -8}, { -97, -24}, {-122,-113},
    {-124,-125}, { -67, -44}, {-128, -69}, {-106,-131}, {-132,-133}, { -61, -73}, {-137,-116}, { -89,-140},
    {-141,-142}, { -23, -25}, {-146, -17}, {-104,-149}, {-150,-151}, { -52,-154}, {-156,-157}, { -76, -70},
    {-164, -51}, { -72,-167}, {-168,-169}, { -47, -20}, {-173, -59}, {-101,-176}, {-177,-178}, { -68,-181},
    {-183,-184}, { -35, -60}, {-191, -98}, { -56,-194}, {-195,-196}, { -75, -65}, {-200,-105}, {-202,-203},
    {-204,-205}, {-207,-208}, {-210,-211}, { -50,-217}, {-219,-220}, {-225,-226}, {-228,-229},
}
const int16_t mlt_decoder_tree_category_6[31][2]
Initial value:
{
    {   1,   0}, {   2,   3}, {   4,   5}, {   6,   7}, {   8, -16}, {  -1,  -8}, {  -2,  -4}, {   9,  10},
    {  11,  12}, {  13,  14}, {  15,  16}, {  17, -24}, {  -3, -12}, {  -6,  18}, {  19, -20}, { -10,  -5},
    { -17,  -9}, { -18,  20}, {  21,  22}, {  23,  24}, {  25, -28}, {  26,  -7}, { -14, -22}, { -26, -11},
    {  27, -19}, { -25, -13}, { -21,  28}, {  29, -30}, { -27,  30}, { -15, -29}, { -23, -31},
}
const float mlt_quant_centroid[NUM_CATEGORIES-1][MAX_NUM_BINS]
Initial value:
{
    {  0.0f, 0.392f, 0.761f, 1.120f, 1.477f, 1.832f, 2.183f, 2.541f, 2.893f, 3.245f, 3.598f, 3.942f, 4.288f, 4.724f,   0.0f,   0.0f},
    {  0.0f, 0.544f, 1.060f, 1.563f, 2.068f, 2.571f, 3.072f, 3.562f, 4.070f, 4.620f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f},
    {  0.0f, 0.746f, 1.464f, 2.180f, 2.882f, 3.584f, 4.316f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f},
    {  0.0f, 1.006f, 2.000f, 2.993f, 3.985f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f},
    {  0.0f, 1.321f, 2.703f, 3.983f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f},
    {  0.0f, 1.657f, 3.491f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f},
    {  0.0f, 1.964f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f,   0.0f}
}
const int16_t mlt_sqvh_bitcount_category_0[196]
Initial value:
{
     1,  4,  6,  6,  7,  7,  8,  8,  8,  9,  9, 10, 11, 11,  4,  5, 
     6,  7,  7,  8,  8,  9,  9,  9,  9, 10, 11, 11,  5,  6,  7,  8, 
     8,  9,  9,  9,  9, 10, 10, 10, 11, 12,  6,  7,  8,  9,  9,  9, 
     9, 10, 10, 10, 10, 11, 12, 13,  7,  7,  8,  9,  9,  9, 10, 10, 
    10, 10, 11, 11, 12, 13,  8,  8,  9,  9,  9, 10, 10, 10, 10, 11, 
    11, 12, 13, 14,  8,  8,  9,  9, 10, 10, 11, 11, 11, 12, 12, 13, 
    13, 15,  8,  8,  9,  9, 10, 10, 11, 11, 11, 12, 12, 13, 14, 15, 
     9,  9,  9, 10, 10, 10, 11, 11, 12, 13, 12, 14, 15, 16,  9,  9, 
    10, 10, 10, 10, 11, 12, 12, 14, 14, 16, 16, 16,  9,  9, 10, 10, 
    11, 11, 12, 13, 13, 14, 14, 15, 15, 16, 10, 10, 10, 11, 11, 12, 
    12, 13, 15, 15, 16, 14, 15, 15, 11, 11, 11, 12, 13, 13, 13, 15, 
    16, 16, 16, 16, 14, 15, 11, 11, 12, 13, 13, 14, 15, 16, 16, 16, 
    16, 16, 16, 14
}
const int16_t mlt_sqvh_bitcount_category_1[100]
Initial value:
{
     1,  4,  5,  6,  7,  8,  8,  9, 10, 10,  4,  5,  6,  7,  7,  8, 
     8,  9,  9, 11,  5,  5,  6,  7,  8,  8,  9,  9, 10, 11,  6,  6, 
     7,  8,  8,  9,  9, 10, 11, 12,  7,  7,  8,  8,  9,  9, 10, 11, 
    11, 13,  8,  8,  8,  9,  9, 10, 10, 11, 12, 14,  8,  8,  8,  9, 
    10, 11, 11, 12, 13, 15,  9,  9,  9, 10, 11, 12, 12, 14, 14, 14, 
     9,  9,  9, 10, 11, 12, 14, 16, 14, 14, 10, 10, 11, 12, 13, 14, 
    16, 16, 16, 14
}
const int16_t mlt_sqvh_bitcount_category_2[49]
Initial value:
{
     1,  4,  5,  7,  8,  9, 10,  3,  4,  5,  7,  8,  9, 10,  5,  5,
     6,  7,  8, 10, 10,  7,  6,  7,  8,  9, 10, 12,  8,  8,  8,  9,
    10, 12, 14,  8,  9,  9, 10, 11, 15, 16,  9, 10, 11, 12, 13, 16,
    15
}
const int16_t mlt_sqvh_bitcount_category_4[256]
Initial value:
{
     2,  4,  7, 10,  4,  5,  7, 10,  7,  8, 10, 14, 11, 11, 15, 15, 
     4,  5,  9, 12,  5,  5,  8, 12,  8,  7, 10, 15, 11, 11, 15, 15, 
     7,  9, 12, 15,  8,  8, 12, 15, 10, 10, 13, 15, 14, 14, 15, 13, 
    11, 13, 15, 15, 11, 13, 15, 15, 14, 15, 15, 13, 15, 15, 13, 13, 
     4,  5,  9, 13,  5,  6,  9, 13,  9,  9, 11, 15, 14, 13, 15, 15, 
     4,  6,  9, 12,  5,  6,  9, 13,  9,  8, 11, 15, 13, 12, 15, 15, 
     7,  9, 12, 15,  7,  8, 11, 15, 10, 10, 14, 15, 14, 15, 15, 14, 
    10, 12, 15, 15, 11, 13, 15, 15, 15, 15, 15, 14, 15, 15, 14, 14, 
     6,  9, 13, 14,  8,  9, 12, 15, 12, 12, 15, 15, 15, 15, 15, 15, 
     7,  9, 13, 15,  8,  9, 12, 15, 11, 12, 15, 15, 15, 15, 15, 15, 
     9, 11, 15, 15,  9, 11, 15, 15, 14, 14, 15, 15, 15, 15, 15, 15, 
    14, 15, 15, 15, 14, 15, 15, 15, 15, 15, 15, 15, 14, 14, 15, 15, 
     9, 12, 15, 15, 12, 13, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 
    10, 12, 15, 15, 12, 14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 
    14, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 15, 15, 
    15, 15, 15, 15, 15, 15, 15, 15, 14, 14, 15, 15, 14, 14, 15, 15
}
const int16_t mlt_sqvh_bitcount_category_5[243]
Initial value:
{
     2,  4,  8,  4,  5,  9,  9, 10, 14,  4,  6, 11,  5,  6, 12, 10, 
    11, 15,  9, 11, 15, 10, 13, 15, 14, 15,  6,  4,  6, 12,  6,  7, 
    12, 12, 12, 15,  5,  7, 13,  6,  7, 13, 12, 13, 15, 10, 12, 15, 
    11, 13, 15, 15, 15,  7,  8, 13, 15, 11, 12, 15, 15, 15,  7, 10, 
    13, 15, 12, 15, 15, 15, 15,  7, 15, 15,  7, 15, 15,  7,  6,  7, 
     7,  4,  5, 11,  5,  7, 12, 11, 12, 15,  6,  7, 13,  7,  8, 14, 
    12, 14, 15, 11, 13, 15, 12, 13, 15, 15, 15,  8,  5,  6, 13,  7, 
     8, 15, 12, 14, 15,  6,  8, 14,  7,  8, 15, 14, 15, 15, 12, 12, 
    15, 12, 13, 15, 15, 15,  8,  9, 13, 15, 12, 13, 15, 15, 15,  8, 
    11, 13, 15, 13, 13, 15, 15, 15,  8, 14, 15,  8, 15, 15,  8,  7, 
     8,  8,  8, 10, 15, 11, 12, 15, 15, 15,  7, 10, 12, 15, 12, 13, 
    15, 15, 15,  8, 14, 15,  7, 15, 15,  8,  7,  8,  8,  8, 12, 15, 
    12, 13, 15, 15, 15,  8, 11, 13, 15, 13, 15, 15, 15, 15,  8, 15, 
    15,  8, 15, 15,  8,  7,  8,  8, 14, 15,  6, 15, 15,  8,  7,  8, 
     8, 15, 15,  8, 15, 15,  8,  7,  8,  8,  6,  8,  8,  7,  8,  8, 
     7,  8,  8
}
const int16_t mlt_sqvh_bitcount_category_6[32]
Initial value:
{
    1,  4,  4,  6,  4,  6,  6,  8,  4,  6,  6,  8,  6,  9,  8, 10, 
    4,  6,  7,  8,  6,  9,  8, 11,  6,  9,  8, 10,  8, 10,  9, 11
}
const uint16_t mlt_sqvh_code_category_0[196]
Initial value:
{
       1,     2,     1,    24,    14,    51,     9,    68,   110,    26,   218,    54,   154,   761,     3,    10, 
      22,     8,    58,    22,    71,    16,    30,    50,   213,    75,    94,   632,    15,    18,    52,    23, 
     107,     5,    54,    63,   239,    46,   276,   271,   851,   252,    28,    10,    12,     1,    22,   133, 
     191,    55,   105,   278,   317,   554,   310,   276,    32,    50,    94,    20,   187,   219,    13,   268, 
     473,   445,   145,   849,  1277,   623,     1,    14,     0,    55,   238,   121,   120,   269,   318,   530, 
     639,  1117,   509,   556,    24,    78,    51,   153,    62,   308,    16,    25,    68,  1058,   428,   277, 
    2233,  1114,    92,   108,   141,   223,   270,   381,    24,   212,   760,    35,  1063,   279,  1717,  3439, 
       7,    21,   152,    73,   309,   310,    95,   944,  1890,  2232,  1891,  5107, 10213,  4981,    61,    62, 
       9,    79,   474,   475,   848,  1059,  1056,  1716,   139,  4978,  4983,  4983,   140,   186,    76,   444, 
     144,   633,  1057,   838,  2237,  4472,  4473, 10212, 10212,  4983,    74,    78,   311,   213,   850,  1062, 
    1119,   508,   276,   277,  4982,  4473, 10212, 10212,   208,    70,   555,   418,    68,   510,  2552,  1115, 
    4980,  4979,  4982,  4982,  4473, 10212,   215,    71,   253,   511,   839,  1718,  2488,  6876,  6877,  4979, 
    4979,  4982,  4982,  4473
}
const uint16_t mlt_sqvh_code_category_1[100]
Initial value:
{
        1,    2,   11,   27,   31,    9,  120,   31,  275,  310,    1,    0,   12,    5,   33,   54,
      102,  111,  246,  448,   10,   14,   31,   39,   59,  100,  114,  202,  485,  969,   24,   26,
       36,   52,  103,   30,  120,  242,   69, 1244,   35,   32,   14,   61,  113,  117,  233,  486,
      487, 2491,   13,   12,   69,  110,  149,   35,  495,  449, 1978, 7751,   76,   75,  122,  136,
      213,   68,  623,  930, 3959, 9961,  115,   16,  107,  225,  424,  850, 1936, 7916, 4981, 4981,
      148,  154,  243,  407,  988,  851, 7750,19920, 7916, 4981,  406,  274,  464,  931, 3874, 7917,
    19921,19920,19920, 7916
}
const uint16_t mlt_sqvh_code_category_2[49]
Initial value:
{
        1,     0,    10,    11,    28,    62,   363,     3,     2,     9,     8,    24,    53,   352,     7,     8, 
       13,    25,    89,    74,   355,    10,    23,    24,    29,    55,   354,  1449,    25,    19,    30,    52, 
      108,   438,  5793,    91,    36,    63,   353,   725, 11584, 23170,   180,    75,   218,   439,  2897, 23171, 
    11584
}
const uint16_t mlt_sqvh_code_category_4[256]
Initial value:
{
        1,     2,     4,   572,    10,     0,    69,   712,    91,    10,    46,  9182,  1426,  1430, 30172, 30194, 
        9,    28,    22,  2258,    16,    25,   142,  2179,    15,   111,   719,  1521,  1131,  1437,  1520, 30196, 
       88,   283,  3803, 30193,    13,   236,  2856, 30166,   545,   951,  5709,  1522,  3241,  9180, 30179,  5709, 
     1088,  4356, 30410, 30175,  1146,   377, 30162, 30163,  8715, 30176, 30165,  5709, 30197, 30184,  5709,  5709, 
        1,    23,    28,  5710,    26,    14,    29,  7538,   102,   103,  1429,  1524,  3237,  7060, 30401, 30201, 
       15,    13,   470,  3768,    24,    15,   281,  5747,    24,   181,  1128, 30206,  5711,  3531, 30156, 30158, 
      116,   100,  2260, 30187,   119,   234,  1764, 30171,   716,   883,  9183, 30164,  3236,  1528, 30180,  9183, 
      885,  2870,  1532, 30160,  1431,  5708, 30192, 30205, 30402, 30168, 30173,  9183, 30157, 30161,  9183,  9183, 
       54,    25,  1621, 15211,   180,   287,  2261, 30198,   808,   811, 30411, 30413, 30414, 22986, 22987, 30411, 
       24,   273,   376, 30159,   137,   280,  2871,  1523,  1768,  2259,  1525, 30167,  1526, 30169, 30170,  1525, 
      443,  1434,  1527, 30174,   474,  1769, 30177, 30178,  3238,  3239, 30181, 30181, 30182, 30183, 30181, 30181, 
     3240, 30185, 30186,  1527,  9181, 30188, 30189, 30177, 30190, 30191, 30181, 30181,  3238,  3239, 30181, 30181, 
      440,  2857,  1529, 30195,  2294,  7061,  1530, 30199, 30200,  1531, 30202, 30411, 30203, 30204, 30411, 30411, 
      203,  2872, 30207, 30400,   189, 11492, 30403, 30404, 30405, 30406, 30407,  1525, 30408, 30409,  1525,  1525, 
     8714,  1533, 30412,  1527,  1534,  1535, 30415, 30177, 30416, 30417, 30181, 30181,  3238,  3239, 30181, 30181, 
    30418, 30419,  1527,  1527, 30420, 30421, 30177, 30177,  3238,  3239, 30181, 30181,  3238,  3239, 30181, 30181
}
const uint16_t mlt_sqvh_code_category_5[243]
Initial value:
{
        0,     5,   220,    10,    16,   443,   390,   391, 14333,    11,    26,  1566,    26,    54,  3135,   508, 
     1558, 28581,   255,  1782, 28599,   885,  6208, 28578, 14335, 28579,    54,     9,    35,  3129,    27,    68, 
     3537,  1562,  3568, 28610,    25,    62,  4078,    58,   118,  7763,  3107,  7758, 28563,   778,  3131, 28598, 
      780,  7123, 28630, 28593, 28586,   118,   243,  6210, 28614,  1018,  3567, 28601, 28611, 28570,    68,   388, 
     6256, 28619,  1559, 28562, 28606, 28565, 28591,   118, 28594, 28571,    62, 28618, 28590,   118,    58,   118, 
      118,     4,    28,  1781,    31,    60,  3134,  1938,  3882, 28574,    25,    96,  7757,    49,   126, 14244, 
     3883, 14334, 28613,  1769,  4077, 28602,  3106,  7756, 28582, 28621, 28566,   126,    14,    61,  4079,    61, 
      138, 28491,  3536,  8153, 28573,    49,    96, 12442,   119,   240, 28490, 12443, 28560, 28561,  3111,  3580, 
    28564,  3130,  7759, 28567, 28568, 28569,   240,   444,  6209, 28572,  3569,  6211, 28575, 28576, 28577,   138, 
      778,  7760, 28580,  7761,  7762, 28583, 28584, 28585,   240, 14319, 28587,    96, 28588, 28589,   240,   119, 
      240,   240,   139,   968, 28592,  1554,  3581, 28595, 28596, 28597,    60,   971,  3560, 28600,  3582,  7132, 
    28603, 28604, 28605,   126, 14332, 28607,    96, 28608, 28609,   126,    49,   126,   126,   241,  1558, 28612, 
     1563,  6257, 28615, 28616, 28617,   138,  1559,  7133, 28620,  6220, 28622, 28623, 28624, 28625,   240, 28626, 
    28627,    96, 28628, 28629,   240,   119,   240,   240,  8152, 28631,    61, 28632, 28633,   138,    61,   138, 
      138, 28634, 28635,    96, 28636, 28637,   240,   119,   240,   240,    49,    96,    96,   119,   240,   240, 
      119,   240,   240
}
const uint16_t mlt_sqvh_code_category_6[32]
Initial value:
{
    1,    2,    4,    2,    5,   29,   24,  101,    3,   31,   28,  105,    3,    5,  102,  424,
    1,   30,    0,  107,   27,  200,  103,  806,    1,    4,  104,  402,    3,  425,  213,  807
}
const int16_t* table_of_bitcount_tables[NUM_CATEGORIES-1]
Initial value:
{
    mlt_sqvh_bitcount_category_0,
    mlt_sqvh_bitcount_category_1,
    mlt_sqvh_bitcount_category_2,
    mlt_sqvh_bitcount_category_3,
    mlt_sqvh_bitcount_category_4,
    mlt_sqvh_bitcount_category_5,
    mlt_sqvh_bitcount_category_6
}
const uint16_t* table_of_code_tables[NUM_CATEGORIES-1]
Initial value:
{
    mlt_sqvh_code_category_0,
    mlt_sqvh_code_category_1,
    mlt_sqvh_code_category_2,
    mlt_sqvh_code_category_3,
    mlt_sqvh_code_category_4,
    mlt_sqvh_code_category_5,
    mlt_sqvh_code_category_6
}
const int16_t* table_of_decoder_tables[NUM_CATEGORIES-1]
Initial value:
{
    (const int16_t *) mlt_decoder_tree_category_0,
    (const int16_t *) mlt_decoder_tree_category_1,
    (const int16_t *) mlt_decoder_tree_category_2,
    (const int16_t *) mlt_decoder_tree_category_3,
    (const int16_t *) mlt_decoder_tree_category_4,
    (const int16_t *) mlt_decoder_tree_category_5,
    (const int16_t *) mlt_decoder_tree_category_6
}