Home | History | Annotate | Download | only in src
      1 /*
      2  * Copyright (C) 2007-2008 ARM Limited
      3  *
      4  * Licensed under the Apache License, Version 2.0 (the "License");
      5  * you may not use this file except in compliance with the License.
      6  * You may obtain a copy of the License at
      7  *
      8  *      http://www.apache.org/licenses/LICENSE-2.0
      9  *
     10  * Unless required by applicable law or agreed to in writing, software
     11  * distributed under the License is distributed on an "AS IS" BASIS,
     12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
     13  * See the License for the specific language governing permissions and
     14  * limitations under the License.
     15  *
     16  */
     17 /* ----------------------------------------------------------------
     18  *
     19  *
     20  * File Name:  armVCM4P10_CAVLCTables.c
     21  * OpenMAX DL: v1.0.2
     22  * Revision:   9641
     23  * Date:       Thursday, February 7, 2008
     24  *
     25  *
     26  *
     27  *
     28  * CAVLC tables for H.264
     29  *
     30  */
     31 
     32 #include "omxtypes.h"
     33 #include "armOMX.h"
     34 #include "omxVC.h"
     35 
     36 #include "armCOMM_Bitstream.h"
     37 #include "armVC.h"
     38 #include "armVCM4P10_CAVLCTables.h"
     39 
     40 /* Tables mapping a code to TrailingOnes and TotalCoeff */
     41 
     42 const OMX_U8 armVCM4P10_CAVLCTrailingOnes[62] = {
     43  0,
     44  0, 1,
     45  0, 1, 2,
     46  0, 1, 2, 3,
     47  0, 1, 2, 3,
     48  0, 1, 2, 3,
     49  0, 1, 2, 3,
     50  0, 1, 2, 3,
     51  0, 1, 2, 3,
     52  0, 1, 2, 3,
     53  0, 1, 2, 3,
     54  0, 1, 2, 3,
     55  0, 1, 2, 3,
     56  0, 1, 2, 3,
     57  0, 1, 2, 3,
     58  0, 1, 2, 3,
     59  0, 1, 2, 3
     60 };
     61 
     62 const OMX_U8 armVCM4P10_CAVLCTotalCoeff[62] = {
     63  0,
     64  1, 1,
     65  2, 2, 2,
     66  3, 3, 3, 3,
     67  4, 4, 4, 4,
     68  5, 5, 5, 5,
     69  6, 6, 6, 6,
     70  7, 7, 7, 7,
     71  8, 8, 8, 8,
     72  9, 9, 9, 9,
     73  10, 10, 10, 10,
     74  11, 11, 11, 11,
     75  12, 12, 12, 12,
     76  13, 13, 13, 13,
     77  14, 14, 14, 14,
     78  15, 15, 15, 15,
     79  16, 16, 16, 16
     80 };
     81 
     82 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken0[63] = {
     83     {  1, 0x0001 },
     84     {  6, 0x0005 },
     85     {  2, 0x0001 },
     86     {  8, 0x0007 },
     87     {  6, 0x0004 },
     88     {  3, 0x0001 },
     89     {  9, 0x0007 },
     90     {  8, 0x0006 },
     91     {  7, 0x0005 },
     92     {  5, 0x0003 },
     93     { 10, 0x0007 },
     94     {  9, 0x0006 },
     95     {  8, 0x0005 },
     96     {  6, 0x0003 },
     97     { 11, 0x0007 },
     98     { 10, 0x0006 },
     99     {  9, 0x0005 },
    100     {  7, 0x0004 },
    101     { 13, 0x000f },
    102     { 11, 0x0006 },
    103     { 10, 0x0005 },
    104     {  8, 0x0004 },
    105     { 13, 0x000b },
    106     { 13, 0x000e },
    107     { 11, 0x0005 },
    108     {  9, 0x0004 },
    109     { 13, 0x0008 },
    110     { 13, 0x000a },
    111     { 13, 0x000d },
    112     { 10, 0x0004 },
    113     { 14, 0x000f },
    114     { 14, 0x000e },
    115     { 13, 0x0009 },
    116     { 11, 0x0004 },
    117     { 14, 0x000b },
    118     { 14, 0x000a },
    119     { 14, 0x000d },
    120     { 13, 0x000c },
    121     { 15, 0x000f },
    122     { 15, 0x000e },
    123     { 14, 0x0009 },
    124     { 14, 0x000c },
    125     { 15, 0x000b },
    126     { 15, 0x000a },
    127     { 15, 0x000d },
    128     { 14, 0x0008 },
    129     { 16, 0x000f },
    130     { 15, 0x0001 },
    131     { 15, 0x0009 },
    132     { 15, 0x000c },
    133     { 16, 0x000b },
    134     { 16, 0x000e },
    135     { 16, 0x000d },
    136     { 15, 0x0008 },
    137     { 16, 0x0007 },
    138     { 16, 0x000a },
    139     { 16, 0x0009 },
    140     { 16, 0x000c },
    141     { 16, 0x0004 },
    142     { 16, 0x0006 },
    143     { 16, 0x0005 },
    144     { 16, 0x0008 },
    145     {  0, 0x0000 }
    146 };
    147 
    148 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken1[63] = {
    149     {  2, 0x0003 },
    150     {  6, 0x000b },
    151     {  2, 0x0002 },
    152     {  6, 0x0007 },
    153     {  5, 0x0007 },
    154     {  3, 0x0003 },
    155     {  7, 0x0007 },
    156     {  6, 0x000a },
    157     {  6, 0x0009 },
    158     {  4, 0x0005 },
    159     {  8, 0x0007 },
    160     {  6, 0x0006 },
    161     {  6, 0x0005 },
    162     {  4, 0x0004 },
    163     {  8, 0x0004 },
    164     {  7, 0x0006 },
    165     {  7, 0x0005 },
    166     {  5, 0x0006 },
    167     {  9, 0x0007 },
    168     {  8, 0x0006 },
    169     {  8, 0x0005 },
    170     {  6, 0x0008 },
    171     { 11, 0x000f },
    172     {  9, 0x0006 },
    173     {  9, 0x0005 },
    174     {  6, 0x0004 },
    175     { 11, 0x000b },
    176     { 11, 0x000e },
    177     { 11, 0x000d },
    178     {  7, 0x0004 },
    179     { 12, 0x000f },
    180     { 11, 0x000a },
    181     { 11, 0x0009 },
    182     {  9, 0x0004 },
    183     { 12, 0x000b },
    184     { 12, 0x000e },
    185     { 12, 0x000d },
    186     { 11, 0x000c },
    187     { 12, 0x0008 },
    188     { 12, 0x000a },
    189     { 12, 0x0009 },
    190     { 11, 0x0008 },
    191     { 13, 0x000f },
    192     { 13, 0x000e },
    193     { 13, 0x000d },
    194     { 12, 0x000c },
    195     { 13, 0x000b },
    196     { 13, 0x000a },
    197     { 13, 0x0009 },
    198     { 13, 0x000c },
    199     { 13, 0x0007 },
    200     { 14, 0x000b },
    201     { 13, 0x0006 },
    202     { 13, 0x0008 },
    203     { 14, 0x0009 },
    204     { 14, 0x0008 },
    205     { 14, 0x000a },
    206     { 13, 0x0001 },
    207     { 14, 0x0007 },
    208     { 14, 0x0006 },
    209     { 14, 0x0005 },
    210     { 14, 0x0004 },
    211     {  0, 0x0000 }
    212 };
    213 
    214 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken2[63] = {
    215     {  4, 0x000f },
    216     {  6, 0x000f },
    217     {  4, 0x000e },
    218     {  6, 0x000b },
    219     {  5, 0x000f },
    220     {  4, 0x000d },
    221     {  6, 0x0008 },
    222     {  5, 0x000c },
    223     {  5, 0x000e },
    224     {  4, 0x000c },
    225     {  7, 0x000f },
    226     {  5, 0x000a },
    227     {  5, 0x000b },
    228     {  4, 0x000b },
    229     {  7, 0x000b },
    230     {  5, 0x0008 },
    231     {  5, 0x0009 },
    232     {  4, 0x000a },
    233     {  7, 0x0009 },
    234     {  6, 0x000e },
    235     {  6, 0x000d },
    236     {  4, 0x0009 },
    237     {  7, 0x0008 },
    238     {  6, 0x000a },
    239     {  6, 0x0009 },
    240     {  4, 0x0008 },
    241     {  8, 0x000f },
    242     {  7, 0x000e },
    243     {  7, 0x000d },
    244     {  5, 0x000d },
    245     {  8, 0x000b },
    246     {  8, 0x000e },
    247     {  7, 0x000a },
    248     {  6, 0x000c },
    249     {  9, 0x000f },
    250     {  8, 0x000a },
    251     {  8, 0x000d },
    252     {  7, 0x000c },
    253     {  9, 0x000b },
    254     {  9, 0x000e },
    255     {  8, 0x0009 },
    256     {  8, 0x000c },
    257     {  9, 0x0008 },
    258     {  9, 0x000a },
    259     {  9, 0x000d },
    260     {  8, 0x0008 },
    261     { 10, 0x000d },
    262     {  9, 0x0007 },
    263     {  9, 0x0009 },
    264     {  9, 0x000c },
    265     { 10, 0x0009 },
    266     { 10, 0x000c },
    267     { 10, 0x000b },
    268     { 10, 0x000a },
    269     { 10, 0x0005 },
    270     { 10, 0x0008 },
    271     { 10, 0x0007 },
    272     { 10, 0x0006 },
    273     { 10, 0x0001 },
    274     { 10, 0x0004 },
    275     { 10, 0x0003 },
    276     { 10, 0x0002 },
    277     {  0, 0x0000 }
    278 };
    279 
    280 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken3[63] = {
    281     {  6, 0x0003 },
    282     {  6, 0x0000 },
    283     {  6, 0x0001 },
    284     {  6, 0x0004 },
    285     {  6, 0x0005 },
    286     {  6, 0x0006 },
    287     {  6, 0x0008 },
    288     {  6, 0x0009 },
    289     {  6, 0x000a },
    290     {  6, 0x000b },
    291     {  6, 0x000c },
    292     {  6, 0x000d },
    293     {  6, 0x000e },
    294     {  6, 0x000f },
    295     {  6, 0x0010 },
    296     {  6, 0x0011 },
    297     {  6, 0x0012 },
    298     {  6, 0x0013 },
    299     {  6, 0x0014 },
    300     {  6, 0x0015 },
    301     {  6, 0x0016 },
    302     {  6, 0x0017 },
    303     {  6, 0x0018 },
    304     {  6, 0x0019 },
    305     {  6, 0x001a },
    306     {  6, 0x001b },
    307     {  6, 0x001c },
    308     {  6, 0x001d },
    309     {  6, 0x001e },
    310     {  6, 0x001f },
    311     {  6, 0x0020 },
    312     {  6, 0x0021 },
    313     {  6, 0x0022 },
    314     {  6, 0x0023 },
    315     {  6, 0x0024 },
    316     {  6, 0x0025 },
    317     {  6, 0x0026 },
    318     {  6, 0x0027 },
    319     {  6, 0x0028 },
    320     {  6, 0x0029 },
    321     {  6, 0x002a },
    322     {  6, 0x002b },
    323     {  6, 0x002c },
    324     {  6, 0x002d },
    325     {  6, 0x002e },
    326     {  6, 0x002f },
    327     {  6, 0x0030 },
    328     {  6, 0x0031 },
    329     {  6, 0x0032 },
    330     {  6, 0x0033 },
    331     {  6, 0x0034 },
    332     {  6, 0x0035 },
    333     {  6, 0x0036 },
    334     {  6, 0x0037 },
    335     {  6, 0x0038 },
    336     {  6, 0x0039 },
    337     {  6, 0x003a },
    338     {  6, 0x003b },
    339     {  6, 0x003c },
    340     {  6, 0x003d },
    341     {  6, 0x003e },
    342     {  6, 0x003f },
    343     {  0, 0x0000 }
    344 };
    345 
    346 static const ARM_VLC32 armVCM4P10_CAVLCCoeffToken4[15] = {
    347     {  2, 0x0001 },
    348     {  6, 0x0007 },
    349     {  1, 0x0001 },
    350     {  6, 0x0004 },
    351     {  6, 0x0006 },
    352     {  3, 0x0001 },
    353     {  6, 0x0003 },
    354     {  7, 0x0003 },
    355     {  7, 0x0002 },
    356     {  6, 0x0005 },
    357     {  6, 0x0002 },
    358     {  8, 0x0003 },
    359     {  8, 0x0002 },
    360     {  7, 0x0000 },
    361     {  0, 0x0000 }
    362 };
    363 
    364 
    365 const ARM_VLC32 *armVCM4P10_CAVLCCoeffTokenTables[5] = {
    366      armVCM4P10_CAVLCCoeffToken0,
    367      armVCM4P10_CAVLCCoeffToken1,
    368      armVCM4P10_CAVLCCoeffToken2,
    369      armVCM4P10_CAVLCCoeffToken3,
    370      armVCM4P10_CAVLCCoeffToken4
    371 };
    372 
    373 /* Table for level_prefix */
    374 
    375 const ARM_VLC32 armVCM4P10_CAVLCLevelPrefix[17] = {
    376     {  1, 1},
    377     {  2, 1},
    378     {  3, 1},
    379     {  4, 1},
    380     {  5, 1},
    381     {  6, 1},
    382     {  7, 1},
    383     {  8, 1},
    384     {  9, 1},
    385     { 10, 1},
    386     { 11, 1},
    387     { 12, 1},
    388     { 13, 1},
    389     { 14, 1},
    390     { 15, 1},
    391     { 16, 1},
    392     {  0, 0}
    393 };
    394 
    395 /* Tables for total_zeros */
    396 
    397 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros1[17] = {
    398     {  1, 0x0001 },
    399     {  3, 0x0003 },
    400     {  3, 0x0002 },
    401     {  4, 0x0003 },
    402     {  4, 0x0002 },
    403     {  5, 0x0003 },
    404     {  5, 0x0002 },
    405     {  6, 0x0003 },
    406     {  6, 0x0002 },
    407     {  7, 0x0003 },
    408     {  7, 0x0002 },
    409     {  8, 0x0003 },
    410     {  8, 0x0002 },
    411     {  9, 0x0003 },
    412     {  9, 0x0002 },
    413     {  9, 0x0001 },
    414     {  0, 0x0000 }
    415 };
    416 
    417 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2[16] = {
    418     {  3, 0x0007 },
    419     {  3, 0x0006 },
    420     {  3, 0x0005 },
    421     {  3, 0x0004 },
    422     {  3, 0x0003 },
    423     {  4, 0x0005 },
    424     {  4, 0x0004 },
    425     {  4, 0x0003 },
    426     {  4, 0x0002 },
    427     {  5, 0x0003 },
    428     {  5, 0x0002 },
    429     {  6, 0x0003 },
    430     {  6, 0x0002 },
    431     {  6, 0x0001 },
    432     {  6, 0x0000 },
    433     {  0, 0x0000 }
    434 };
    435 
    436 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros3[15] = {
    437     {  4, 0x0005 },
    438     {  3, 0x0007 },
    439     {  3, 0x0006 },
    440     {  3, 0x0005 },
    441     {  4, 0x0004 },
    442     {  4, 0x0003 },
    443     {  3, 0x0004 },
    444     {  3, 0x0003 },
    445     {  4, 0x0002 },
    446     {  5, 0x0003 },
    447     {  5, 0x0002 },
    448     {  6, 0x0001 },
    449     {  5, 0x0001 },
    450     {  6, 0x0000 },
    451     {  0, 0x0000 }
    452 };
    453 
    454 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros4[14] = {
    455     {  5, 0x0003 },
    456     {  3, 0x0007 },
    457     {  4, 0x0005 },
    458     {  4, 0x0004 },
    459     {  3, 0x0006 },
    460     {  3, 0x0005 },
    461     {  3, 0x0004 },
    462     {  4, 0x0003 },
    463     {  3, 0x0003 },
    464     {  4, 0x0002 },
    465     {  5, 0x0002 },
    466     {  5, 0x0001 },
    467     {  5, 0x0000 },
    468     {  0, 0x0000 }
    469 };
    470 
    471 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros5[13] = {
    472     {  4, 0x0005 },
    473     {  4, 0x0004 },
    474     {  4, 0x0003 },
    475     {  3, 0x0007 },
    476     {  3, 0x0006 },
    477     {  3, 0x0005 },
    478     {  3, 0x0004 },
    479     {  3, 0x0003 },
    480     {  4, 0x0002 },
    481     {  5, 0x0001 },
    482     {  4, 0x0001 },
    483     {  5, 0x0000 },
    484     {  0, 0x0000 }
    485 };
    486 
    487 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros6[12] = {
    488     {  6, 0x0001 },
    489     {  5, 0x0001 },
    490     {  3, 0x0007 },
    491     {  3, 0x0006 },
    492     {  3, 0x0005 },
    493     {  3, 0x0004 },
    494     {  3, 0x0003 },
    495     {  3, 0x0002 },
    496     {  4, 0x0001 },
    497     {  3, 0x0001 },
    498     {  6, 0x0000 },
    499     {  0, 0x0000 }
    500 };
    501 
    502 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros7[11] = {
    503     {  6, 0x0001 },
    504     {  5, 0x0001 },
    505     {  3, 0x0005 },
    506     {  3, 0x0004 },
    507     {  3, 0x0003 },
    508     {  2, 0x0003 },
    509     {  3, 0x0002 },
    510     {  4, 0x0001 },
    511     {  3, 0x0001 },
    512     {  6, 0x0000 },
    513     {  0, 0x0000 }
    514 };
    515 
    516 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros8[10] = {
    517     {  6, 0x0001 },
    518     {  4, 0x0001 },
    519     {  5, 0x0001 },
    520     {  3, 0x0003 },
    521     {  2, 0x0003 },
    522     {  2, 0x0002 },
    523     {  3, 0x0002 },
    524     {  3, 0x0001 },
    525     {  6, 0x0000 },
    526     {  0, 0x0000 }
    527 };
    528 
    529 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros9[9] = {
    530     {  6, 0x0001 },
    531     {  6, 0x0000 },
    532     {  4, 0x0001 },
    533     {  2, 0x0003 },
    534     {  2, 0x0002 },
    535     {  3, 0x0001 },
    536     {  2, 0x0001 },
    537     {  5, 0x0001 },
    538     {  0, 0x0000 }
    539 };
    540 
    541 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros10[8] = {
    542     {  5, 0x0001 },
    543     {  5, 0x0000 },
    544     {  3, 0x0001 },
    545     {  2, 0x0003 },
    546     {  2, 0x0002 },
    547     {  2, 0x0001 },
    548     {  4, 0x0001 },
    549     {  0, 0x0000 }
    550 };
    551 
    552 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros11[7] = {
    553     {  4, 0x0000 },
    554     {  4, 0x0001 },
    555     {  3, 0x0001 },
    556     {  3, 0x0002 },
    557     {  1, 0x0001 },
    558     {  3, 0x0003 },
    559     {  0, 0x0000 }
    560 };
    561 
    562 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros12[6] = {
    563     {  4, 0x0000 },
    564     {  4, 0x0001 },
    565     {  2, 0x0001 },
    566     {  1, 0x0001 },
    567     {  3, 0x0001 },
    568     {  0, 0x0000 }
    569 };
    570 
    571 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros13[5] = {
    572     {  3, 0x0000 },
    573     {  3, 0x0001 },
    574     {  1, 0x0001 },
    575     {  2, 0x0001 },
    576     {  0, 0x0000 }
    577 };
    578 
    579 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros14[4] = {
    580     {  2, 0x0000 },
    581     {  2, 0x0001 },
    582     {  1, 0x0001 },
    583     {  0, 0x0000 }
    584 };
    585 
    586 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros15[3] = {
    587     {  1, 0x0000 },
    588     {  1, 0x0001 },
    589     {  0, 0x0000 }
    590 };
    591 
    592 const ARM_VLC32 *armVCM4P10_CAVLCTotalZeroTables[15] = {
    593      armVCM4P10_CAVLCTotalZeros1,
    594      armVCM4P10_CAVLCTotalZeros2,
    595      armVCM4P10_CAVLCTotalZeros3,
    596      armVCM4P10_CAVLCTotalZeros4,
    597      armVCM4P10_CAVLCTotalZeros5,
    598      armVCM4P10_CAVLCTotalZeros6,
    599      armVCM4P10_CAVLCTotalZeros7,
    600      armVCM4P10_CAVLCTotalZeros8,
    601      armVCM4P10_CAVLCTotalZeros9,
    602      armVCM4P10_CAVLCTotalZeros10,
    603      armVCM4P10_CAVLCTotalZeros11,
    604      armVCM4P10_CAVLCTotalZeros12,
    605      armVCM4P10_CAVLCTotalZeros13,
    606      armVCM4P10_CAVLCTotalZeros14,
    607      armVCM4P10_CAVLCTotalZeros15
    608 };
    609 
    610 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2x2_1[5] = {
    611     {  1, 1 },
    612     {  2, 1 },
    613     {  3, 1 },
    614     {  3, 0 },
    615     {  0, 0 }
    616 };
    617 
    618 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2x2_2[4] = {
    619     {  1, 1 },
    620     {  2, 1 },
    621     {  2, 0 },
    622     {  0, 0 }
    623 };
    624 
    625 static const ARM_VLC32 armVCM4P10_CAVLCTotalZeros2x2_3[3] = {
    626     {  1, 1 },
    627     {  1, 0 },
    628     {  0, 0 }
    629 };
    630 
    631 const ARM_VLC32 *armVCM4P10_CAVLCTotalZeros2x2Tables[3] = {
    632      armVCM4P10_CAVLCTotalZeros2x2_1,
    633      armVCM4P10_CAVLCTotalZeros2x2_2,
    634      armVCM4P10_CAVLCTotalZeros2x2_3
    635 };
    636 
    637 
    638 /* Tables for run_before */
    639 
    640 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore1[3] = {
    641     {  1, 0x0001 },
    642     {  1, 0x0000 },
    643     {  0, 0x0000 }
    644 };
    645 
    646 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore2[4] = {
    647     {  1, 0x0001 },
    648     {  2, 0x0001 },
    649     {  2, 0x0000 },
    650     {  0, 0x0000 }
    651 };
    652 
    653 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore3[5] = {
    654     {  2, 0x0003 },
    655     {  2, 0x0002 },
    656     {  2, 0x0001 },
    657     {  2, 0x0000 },
    658     {  0, 0x0000 }
    659 };
    660 
    661 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore4[6] = {
    662     {  2, 0x0003 },
    663     {  2, 0x0002 },
    664     {  2, 0x0001 },
    665     {  3, 0x0001 },
    666     {  3, 0x0000 },
    667     {  0, 0x0000 }
    668 };
    669 
    670 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore5[7] = {
    671     {  2, 0x0003 },
    672     {  2, 0x0002 },
    673     {  3, 0x0003 },
    674     {  3, 0x0002 },
    675     {  3, 0x0001 },
    676     {  3, 0x0000 },
    677     {  0, 0x0000 }
    678 };
    679 
    680 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore6[8] = {
    681     {  2, 0x0003 },
    682     {  3, 0x0000 },
    683     {  3, 0x0001 },
    684     {  3, 0x0003 },
    685     {  3, 0x0002 },
    686     {  3, 0x0005 },
    687     {  3, 0x0004 },
    688     {  0, 0x0000 }
    689 };
    690 
    691 static const ARM_VLC32 armVCM4P10_CAVLCRunBefore7[16] = {
    692     {  3, 0x0007 },
    693     {  3, 0x0006 },
    694     {  3, 0x0005 },
    695     {  3, 0x0004 },
    696     {  3, 0x0003 },
    697     {  3, 0x0002 },
    698     {  3, 0x0001 },
    699     {  4, 0x0001 },
    700     {  5, 0x0001 },
    701     {  6, 0x0001 },
    702     {  7, 0x0001 },
    703     {  8, 0x0001 },
    704     {  9, 0x0001 },
    705     { 10, 0x0001 },
    706     { 11, 0x0001 },
    707     {  0, 0x0000 }
    708 };
    709 
    710 const ARM_VLC32 *armVCM4P10_CAVLCRunBeforeTables[7] = {
    711      armVCM4P10_CAVLCRunBefore1,
    712      armVCM4P10_CAVLCRunBefore2,
    713      armVCM4P10_CAVLCRunBefore3,
    714      armVCM4P10_CAVLCRunBefore4,
    715      armVCM4P10_CAVLCRunBefore5,
    716      armVCM4P10_CAVLCRunBefore6,
    717      armVCM4P10_CAVLCRunBefore7
    718 };
    719