Home | History | Annotate | Download | only in common
      1 /*
      2  *  Copyright (c) 2010 The WebM project authors. All Rights Reserved.
      3  *
      4  *  Use of this source code is governed by a BSD-style license
      5  *  that can be found in the LICENSE file in the root of the source
      6  *  tree. An additional intellectual property rights grant can be found
      7  *  in the file PATENTS.  All contributing project authors may
      8  *  be found in the AUTHORS file in the root of the source tree.
      9  */
     10 
     11 #include "entropy.h"
     12 
     13 /* *** GENERATED FILE: DO NOT EDIT *** */
     14 
     15 #if 0
     16 int Contexts[vp8_coef_counter_dimen];
     17 
     18 const int default_contexts[vp8_coef_counter_dimen] =
     19 {
     20     {
     21         // Block Type ( 0 )
     22         {
     23             // Coeff Band ( 0 )
     24             {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
     25             {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
     26             {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
     27         },
     28         {
     29             // Coeff Band ( 1 )
     30             {30190, 26544, 225,  24,   4,   0,   0,   0,   0,   0,   0, 4171593,},
     31             {26846, 25157, 1241, 130,  26,   6,   1,   0,   0,   0,   0, 149987,},
     32             {10484, 9538, 1006, 160,  36,  18,   0,   0,   0,   0,   0, 15104,},
     33         },
     34         {
     35             // Coeff Band ( 2 )
     36             {25842, 40456, 1126,  83,  11,   2,   0,   0,   0,   0,   0,   0,},
     37             {9338, 8010, 512,  73,   7,   3,   2,   0,   0,   0,   0, 43294,},
     38             {1047, 751, 149,  31,  13,   6,   1,   0,   0,   0,   0, 879,},
     39         },
     40         {
     41             // Coeff Band ( 3 )
     42             {26136, 9826, 252,  13,   0,   0,   0,   0,   0,   0,   0,   0,},
     43             {8134, 5574, 191,  14,   2,   0,   0,   0,   0,   0,   0, 35302,},
     44             { 605, 677, 116,   9,   1,   0,   0,   0,   0,   0,   0, 611,},
     45         },
     46         {
     47             // Coeff Band ( 4 )
     48             {10263, 15463, 283,  17,   0,   0,   0,   0,   0,   0,   0,   0,},
     49             {2773, 2191, 128,   9,   2,   2,   0,   0,   0,   0,   0, 10073,},
     50             { 134, 125,  32,   4,   0,   2,   0,   0,   0,   0,   0,  50,},
     51         },
     52         {
     53             // Coeff Band ( 5 )
     54             {10483, 2663,  23,   1,   0,   0,   0,   0,   0,   0,   0,   0,},
     55             {2137, 1251,  27,   1,   1,   0,   0,   0,   0,   0,   0, 14362,},
     56             { 116, 156,  14,   2,   1,   0,   0,   0,   0,   0,   0, 190,},
     57         },
     58         {
     59             // Coeff Band ( 6 )
     60             {40977, 27614, 412,  28,   0,   0,   0,   0,   0,   0,   0,   0,},
     61             {6113, 5213, 261,  22,   3,   0,   0,   0,   0,   0,   0, 26164,},
     62             { 382, 312,  50,  14,   2,   0,   0,   0,   0,   0,   0, 345,},
     63         },
     64         {
     65             // Coeff Band ( 7 )
     66             {   0,  26,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
     67             {   0,  13,   0,   0,   0,   0,   0,   0,   0,   0,   0, 319,},
     68             {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   8,},
     69         },
     70     },
     71     {
     72         // Block Type ( 1 )
     73         {
     74             // Coeff Band ( 0 )
     75             {3268, 19382, 1043, 250,  93,  82,  49,  26,  17,   8,  25, 82289,},
     76             {8758, 32110, 5436, 1832, 827, 668, 420, 153,  24,   0,   3, 52914,},
     77             {9337, 23725, 8487, 3954, 2107, 1836, 1069, 399,  59,   0,   0, 18620,},
     78         },
     79         {
     80             // Coeff Band ( 1 )
     81             {12419, 8420, 452,  62,   9,   1,   0,   0,   0,   0,   0,   0,},
     82             {11715, 8705, 693,  92,  15,   7,   2,   0,   0,   0,   0, 53988,},
     83             {7603, 8585, 2306, 778, 270, 145,  39,   5,   0,   0,   0, 9136,},
     84         },
     85         {
     86             // Coeff Band ( 2 )
     87             {15938, 14335, 1207, 184,  55,  13,   4,   1,   0,   0,   0,   0,},
     88             {7415, 6829, 1138, 244,  71,  26,   7,   0,   0,   0,   0, 9980,},
     89             {1580, 1824, 655, 241,  89,  46,  10,   2,   0,   0,   0, 429,},
     90         },
     91         {
     92             // Coeff Band ( 3 )
     93             {19453, 5260, 201,  19,   0,   0,   0,   0,   0,   0,   0,   0,},
     94             {9173, 3758, 213,  22,   1,   1,   0,   0,   0,   0,   0, 9820,},
     95             {1689, 1277, 276,  51,  17,   4,   0,   0,   0,   0,   0, 679,},
     96         },
     97         {
     98             // Coeff Band ( 4 )
     99             {12076, 10667, 620,  85,  19,   9,   5,   0,   0,   0,   0,   0,},
    100             {4665, 3625, 423,  55,  19,   9,   0,   0,   0,   0,   0, 5127,},
    101             { 415, 440, 143,  34,  20,   7,   2,   0,   0,   0,   0, 101,},
    102         },
    103         {
    104             // Coeff Band ( 5 )
    105             {12183, 4846, 115,  11,   1,   0,   0,   0,   0,   0,   0,   0,},
    106             {4226, 3149, 177,  21,   2,   0,   0,   0,   0,   0,   0, 7157,},
    107             { 375, 621, 189,  51,  11,   4,   1,   0,   0,   0,   0, 198,},
    108         },
    109         {
    110             // Coeff Band ( 6 )
    111             {61658, 37743, 1203,  94,  10,   3,   0,   0,   0,   0,   0,   0,},
    112             {15514, 11563, 903, 111,  14,   5,   0,   0,   0,   0,   0, 25195,},
    113             { 929, 1077, 291,  78,  14,   7,   1,   0,   0,   0,   0, 507,},
    114         },
    115         {
    116             // Coeff Band ( 7 )
    117             {   0, 990,  15,   3,   0,   0,   0,   0,   0,   0,   0,   0,},
    118             {   0, 412,  13,   0,   0,   0,   0,   0,   0,   0,   0, 1641,},
    119             {   0,  18,   7,   1,   0,   0,   0,   0,   0,   0,   0,  30,},
    120         },
    121     },
    122     {
    123         // Block Type ( 2 )
    124         {
    125             // Coeff Band ( 0 )
    126             { 953, 24519, 628, 120,  28,  12,   4,   0,   0,   0,   0, 2248798,},
    127             {1525, 25654, 2647, 617, 239, 143,  42,   5,   0,   0,   0, 66837,},
    128             {1180, 11011, 3001, 1237, 532, 448, 239,  54,   5,   0,   0, 7122,},
    129         },
    130         {
    131             // Coeff Band ( 1 )
    132             {1356, 2220,  67,  10,   4,   1,   0,   0,   0,   0,   0,   0,},
    133             {1450, 2544, 102,  18,   4,   3,   0,   0,   0,   0,   0, 57063,},
    134             {1182, 2110, 470, 130,  41,  21,   0,   0,   0,   0,   0, 6047,},
    135         },
    136         {
    137             // Coeff Band ( 2 )
    138             { 370, 3378, 200,  30,   5,   4,   1,   0,   0,   0,   0,   0,},
    139             { 293, 1006, 131,  29,  11,   0,   0,   0,   0,   0,   0, 5404,},
    140             { 114, 387,  98,  23,   4,   8,   1,   0,   0,   0,   0, 236,},
    141         },
    142         {
    143             // Coeff Band ( 3 )
    144             { 579, 194,   4,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    145             { 395, 213,   5,   1,   0,   0,   0,   0,   0,   0,   0, 4157,},
    146             { 119, 122,   4,   0,   0,   0,   0,   0,   0,   0,   0, 300,},
    147         },
    148         {
    149             // Coeff Band ( 4 )
    150             {  38, 557,  19,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    151             {  21, 114,  12,   1,   0,   0,   0,   0,   0,   0,   0, 427,},
    152             {   0,   5,   0,   0,   0,   0,   0,   0,   0,   0,   0,   7,},
    153         },
    154         {
    155             // Coeff Band ( 5 )
    156             {  52,   7,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    157             {  18,   6,   0,   0,   0,   0,   0,   0,   0,   0,   0, 652,},
    158             {   1,   1,   0,   0,   0,   0,   0,   0,   0,   0,   0,  30,},
    159         },
    160         {
    161             // Coeff Band ( 6 )
    162             { 640, 569,  10,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    163             {  25,  77,   2,   0,   0,   0,   0,   0,   0,   0,   0, 517,},
    164             {   4,   7,   0,   0,   0,   0,   0,   0,   0,   0,   0,   3,},
    165         },
    166         {
    167             // Coeff Band ( 7 )
    168             {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    169             {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    170             {   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    171         },
    172     },
    173     {
    174         // Block Type ( 3 )
    175         {
    176             // Coeff Band ( 0 )
    177             {2506, 20161, 2707, 767, 261, 178, 107,  30,  14,   3,   0, 100694,},
    178             {8806, 36478, 8817, 3268, 1280, 850, 401, 114,  42,   0,   0, 58572,},
    179             {11003, 27214, 11798, 5716, 2482, 2072, 1048, 175,  32,   0,   0, 19284,},
    180         },
    181         {
    182             // Coeff Band ( 1 )
    183             {9738, 11313, 959, 205,  70,  18,  11,   1,   0,   0,   0,   0,},
    184             {12628, 15085, 1507, 273,  52,  19,   9,   0,   0,   0,   0, 54280,},
    185             {10701, 15846, 5561, 1926, 813, 570, 249,  36,   0,   0,   0, 6460,},
    186         },
    187         {
    188             // Coeff Band ( 2 )
    189             {6781, 22539, 2784, 634, 182, 123,  20,   4,   0,   0,   0,   0,},
    190             {6263, 11544, 2649, 790, 259, 168,  27,   5,   0,   0,   0, 20539,},
    191             {3109, 4075, 2031, 896, 457, 386, 158,  29,   0,   0,   0, 1138,},
    192         },
    193         {
    194             // Coeff Band ( 3 )
    195             {11515, 4079, 465,  73,   5,  14,   2,   0,   0,   0,   0,   0,},
    196             {9361, 5834, 650,  96,  24,   8,   4,   0,   0,   0,   0, 22181,},
    197             {4343, 3974, 1360, 415, 132,  96,  14,   1,   0,   0,   0, 1267,},
    198         },
    199         {
    200             // Coeff Band ( 4 )
    201             {4787, 9297, 823, 168,  44,  12,   4,   0,   0,   0,   0,   0,},
    202             {3619, 4472, 719, 198,  60,  31,   3,   0,   0,   0,   0, 8401,},
    203             {1157, 1175, 483, 182,  88,  31,   8,   0,   0,   0,   0, 268,},
    204         },
    205         {
    206             // Coeff Band ( 5 )
    207             {8299, 1226,  32,   5,   1,   0,   0,   0,   0,   0,   0,   0,},
    208             {3502, 1568,  57,   4,   1,   1,   0,   0,   0,   0,   0, 9811,},
    209             {1055, 1070, 166,  29,   6,   1,   0,   0,   0,   0,   0, 527,},
    210         },
    211         {
    212             // Coeff Band ( 6 )
    213             {27414, 27927, 1989, 347,  69,  26,   0,   0,   0,   0,   0,   0,},
    214             {5876, 10074, 1574, 341,  91,  24,   4,   0,   0,   0,   0, 21954,},
    215             {1571, 2171, 778, 324, 124,  65,  16,   0,   0,   0,   0, 979,},
    216         },
    217         {
    218             // Coeff Band ( 7 )
    219             {   0,  29,   0,   0,   0,   0,   0,   0,   0,   0,   0,   0,},
    220             {   0,  23,   0,   0,   0,   0,   0,   0,   0,   0,   0, 459,},
    221             {   0,   1,   0,   0,   0,   0,   0,   0,   0,   0,   0,  13,},
    222         },
    223     },
    224 };
    225 
    226 //Update probabilities for the nodes in the token entropy tree.
    227 const vp8_prob tree_update_probs[vp8_coef_tree_dimen] =
    228 {
    229     {
    230         {
    231             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    232             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    233             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    234         },
    235         {
    236             {176, 246, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    237             {223, 241, 252, 255, 255, 255, 255, 255, 255, 255, 255, },
    238             {249, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, },
    239         },
    240         {
    241             {255, 244, 252, 255, 255, 255, 255, 255, 255, 255, 255, },
    242             {234, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    243             {253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    244         },
    245         {
    246             {255, 246, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    247             {239, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    248             {254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    249         },
    250         {
    251             {255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    252             {251, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    253             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    254         },
    255         {
    256             {255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    257             {251, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    258             {254, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    259         },
    260         {
    261             {255, 254, 253, 255, 254, 255, 255, 255, 255, 255, 255, },
    262             {250, 255, 254, 255, 254, 255, 255, 255, 255, 255, 255, },
    263             {254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    264         },
    265         {
    266             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    267             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    268             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    269         },
    270     },
    271     {
    272         {
    273             {217, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    274             {225, 252, 241, 253, 255, 255, 254, 255, 255, 255, 255, },
    275             {234, 250, 241, 250, 253, 255, 253, 254, 255, 255, 255, },
    276         },
    277         {
    278             {255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    279             {223, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    280             {238, 253, 254, 254, 255, 255, 255, 255, 255, 255, 255, },
    281         },
    282         {
    283             {255, 248, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    284             {249, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    285             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    286         },
    287         {
    288             {255, 253, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    289             {247, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    290             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    291         },
    292         {
    293             {255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    294             {252, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    295             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    296         },
    297         {
    298             {255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    299             {253, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    300             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    301         },
    302         {
    303             {255, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255, },
    304             {250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    305             {254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    306         },
    307         {
    308             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    309             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    310             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    311         },
    312     },
    313     {
    314         {
    315             {186, 251, 250, 255, 255, 255, 255, 255, 255, 255, 255, },
    316             {234, 251, 244, 254, 255, 255, 255, 255, 255, 255, 255, },
    317             {251, 251, 243, 253, 254, 255, 254, 255, 255, 255, 255, },
    318         },
    319         {
    320             {255, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    321             {236, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    322             {251, 253, 253, 254, 254, 255, 255, 255, 255, 255, 255, },
    323         },
    324         {
    325             {255, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    326             {254, 254, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    327             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    328         },
    329         {
    330             {255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    331             {254, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    332             {254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    333         },
    334         {
    335             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    336             {254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    337             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    338         },
    339         {
    340             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    341             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    342             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    343         },
    344         {
    345             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    346             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    347             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    348         },
    349         {
    350             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    351             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    352             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    353         },
    354     },
    355     {
    356         {
    357             {248, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    358             {250, 254, 252, 254, 255, 255, 255, 255, 255, 255, 255, },
    359             {248, 254, 249, 253, 255, 255, 255, 255, 255, 255, 255, },
    360         },
    361         {
    362             {255, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, },
    363             {246, 253, 253, 255, 255, 255, 255, 255, 255, 255, 255, },
    364             {252, 254, 251, 254, 254, 255, 255, 255, 255, 255, 255, },
    365         },
    366         {
    367             {255, 254, 252, 255, 255, 255, 255, 255, 255, 255, 255, },
    368             {248, 254, 253, 255, 255, 255, 255, 255, 255, 255, 255, },
    369             {253, 255, 254, 254, 255, 255, 255, 255, 255, 255, 255, },
    370         },
    371         {
    372             {255, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    373             {245, 251, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    374             {253, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    375         },
    376         {
    377             {255, 251, 253, 255, 255, 255, 255, 255, 255, 255, 255, },
    378             {252, 253, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    379             {255, 254, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    380         },
    381         {
    382             {255, 252, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    383             {249, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    384             {255, 255, 254, 255, 255, 255, 255, 255, 255, 255, 255, },
    385         },
    386         {
    387             {255, 255, 253, 255, 255, 255, 255, 255, 255, 255, 255, },
    388             {250, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    389             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    390         },
    391         {
    392             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    393             {254, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    394             {255, 255, 255, 255, 255, 255, 255, 255, 255, 255, 255, },
    395         },
    396     },
    397 };
    398 #endif
    399