00001
00002
00003
00004
00005
00006
00007
00008
00009
00010
00011
00012
00013
00014
00015
00016
00017
00018
00019
00020
00021
00022 #ifndef AVCODEC_TSCC2_DATA_H
00023 #define AVCODEC_TSCC2_DATA_H
00024
00025 #include <stdint.h>
00026
00027 static const uint8_t tscc2_zigzag[16] = {
00028 0, 1, 4, 8,
00029 5, 2, 3, 6,
00030 9, 12, 13, 10,
00031 7, 11, 14, 15
00032 };
00033
00034 #define NUM_VLC_SETS 13
00035
00036 static const uint16_t tscc2_quants[NUM_VLC_SETS][3] = {
00037 { 655, 861, 1130 }, { 983, 1291, 1695 }, { 1311, 1721, 2260 },
00038 { 1638, 2151, 2825 }, { 1966, 2582, 3390 }, { 2294, 3012, 3955 },
00039 { 2621, 3442, 4520 }, { 2949, 3872, 5085 }, { 3277, 4303, 5650 },
00040 { 3604, 4733, 6215 }, { 3932, 5163, 6780 }, { 4260, 5593, 7345 },
00041 { 4588, 6024, 7910 },
00042 };
00043
00044 #define DC_VLC_COUNT 47
00045
00046 static const uint16_t tscc2_dc_vlc_syms[DC_VLC_COUNT] = {
00047 0x100, 0xFF, 0xFE, 0xFD, 0xFC, 0xFB, 0xFA, 0xF9,
00048 0xF8, 0xF7, 0xF6, 0xF5, 0xF4, 0xF3, 0xF2, 0xF1,
00049 0xF0, 0xEF, 0xEE, 0xED, 0xEC, 0xEB, 0xEA, 0x17,
00050 0x16, 0x15, 0x14, 0x13, 0x12, 0x11, 0x10, 0x0F,
00051 0x0E, 0x0D, 0x0C, 0x0B, 0x0A, 0x09, 0x08, 0x07,
00052 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00,
00053 };
00054
00055 static const uint16_t tscc2_dc_vlc_codes[DC_VLC_COUNT] = {
00056 0x000A, 0x0000, 0x0006, 0x002E, 0x0002, 0x000E, 0x001A, 0x007E,
00057 0x004E, 0x005A, 0x00E2, 0x01BE, 0x01BA, 0x00BA, 0x0072, 0x0022,
00058 0x02BE, 0x00BE, 0x033A, 0x03F2, 0x01F2, 0x03A2, 0x0122, 0x0322,
00059 0x01A2, 0x0172, 0x0372, 0x013A, 0x00CE, 0x02CE, 0x02FE, 0x00FE,
00060 0x00A2, 0x00F2, 0x003A, 0x01CE, 0x01FE, 0x0062, 0x00DA, 0x003E,
00061 0x0032, 0x007A, 0x0012, 0x001E, 0x0016, 0x0004, 0x0001,
00062 };
00063
00064 static const uint8_t tscc2_dc_vlc_bits[DC_VLC_COUNT] = {
00065 5, 3, 5, 6, 6, 7, 7, 8,
00066 8, 8, 8, 9, 9, 9, 9, 9,
00067 10, 10, 10, 10, 10, 10, 10, 10,
00068 10, 10, 10, 10, 10, 10, 10, 10,
00069 9, 9, 9, 9, 9, 8, 8, 8,
00070 7, 7, 6, 6, 5, 3, 1,
00071 };
00072
00073 static const uint8_t tscc2_nc_vlc_syms[16] = {
00074 0x0F, 0x0E, 0x0D, 0x0C, 0x0B, 0x0A, 0x09, 0x08,
00075 0x07, 0x06, 0x05, 0x04, 0x03, 0x02, 0x01, 0x00,
00076 };
00077
00078 static const uint16_t tscc2_nc_vlc_codes[NUM_VLC_SETS][16] = {
00079 { 0x0023, 0x0003, 0x0031, 0x0021, 0x0011, 0x0053, 0x0013, 0x0001,
00080 0x0009, 0x0029, 0x0033, 0x0019, 0x000B, 0x0005, 0x0007, 0x0000, },
00081 { 0x0030, 0x0022, 0x0028, 0x0020, 0x0008, 0x0000, 0x0032, 0x0072,
00082 0x0010, 0x0002, 0x0012, 0x0018, 0x000A, 0x0004, 0x0006, 0x0001, },
00083 { 0x0032, 0x0038, 0x0020, 0x0008, 0x0002, 0x0018, 0x0072, 0x0000,
00084 0x0028, 0x0022, 0x0012, 0x0010, 0x000A, 0x0004, 0x0006, 0x0001, },
00085 { 0x0032, 0x0010, 0x0072, 0x0030, 0x0022, 0x0038, 0x0008, 0x0028,
00086 0x0018, 0x0002, 0x0012, 0x0000, 0x000A, 0x0004, 0x0006, 0x0001, },
00087 { 0x0012, 0x0052, 0x0000, 0x0020, 0x0018, 0x0022, 0x0008, 0x0028,
00088 0x0038, 0x0002, 0x0032, 0x0010, 0x000A, 0x0004, 0x0006, 0x0001, },
00089 { 0x0016, 0x0096, 0x0006, 0x0046, 0x0056, 0x0002, 0x0036, 0x0076,
00090 0x0012, 0x0022, 0x0032, 0x0026, 0x000A, 0x000E, 0x0000, 0x0001, },
00091 { 0x001A, 0x009A, 0x0032, 0x0072, 0x005A, 0x007A, 0x003A, 0x0002,
00092 0x0012, 0x0022, 0x000A, 0x002A, 0x0006, 0x000E, 0x0000, 0x0001, },
00093 { 0x002A, 0x00AA, 0x0002, 0x0042, 0x006A, 0x003A, 0x007A, 0x0022,
00094 0x0032, 0x0012, 0x000A, 0x001A, 0x0006, 0x000E, 0x0000, 0x0001, },
00095 { 0x0042, 0x00C2, 0x0002, 0x000A, 0x004A, 0x003A, 0x007A, 0x0022,
00096 0x0012, 0x0032, 0x002A, 0x001A, 0x0006, 0x000E, 0x0000, 0x0001, },
00097 { 0x00BA, 0x01BA, 0x003A, 0x0012, 0x0052, 0x007A, 0x0002, 0x0022,
00098 0x0032, 0x000A, 0x002A, 0x001A, 0x0000, 0x0004, 0x0006, 0x0001, },
00099 { 0x00AA, 0x01AA, 0x002A, 0x0022, 0x0062, 0x006A, 0x0002, 0x0012,
00100 0x0032, 0x000A, 0x001A, 0x003A, 0x0000, 0x0004, 0x0006, 0x0001, },
00101 { 0x00AA, 0x01AA, 0x002A, 0x0022, 0x0062, 0x006A, 0x0002, 0x0012,
00102 0x0032, 0x000A, 0x003A, 0x001A, 0x0000, 0x0004, 0x0006, 0x0001, },
00103 { 0x008A, 0x018A, 0x000A, 0x0022, 0x0062, 0x004A, 0x0002, 0x0012,
00104 0x0032, 0x002A, 0x001A, 0x003A, 0x0000, 0x0004, 0x0006, 0x0001, },
00105 };
00106
00107 static const uint8_t tscc2_nc_vlc_bits[NUM_VLC_SETS][16] = {
00108 { 6, 6, 6, 6, 6, 7, 7, 6, 6, 6, 6, 5, 4, 3, 3, 1 },
00109 { 6, 6, 6, 6, 6, 6, 7, 7, 6, 6, 6, 5, 4, 3, 3, 1 },
00110 { 7, 6, 6, 6, 6, 6, 7, 6, 6, 6, 6, 5, 4, 3, 3, 1 },
00111 { 7, 6, 7, 6, 6, 6, 6, 6, 6, 6, 6, 5, 4, 3, 3, 1 },
00112 { 7, 7, 6, 6, 6, 6, 6, 6, 6, 6, 6, 5, 4, 3, 3, 1 },
00113 { 8, 8, 7, 7, 7, 6, 7, 7, 6, 6, 6, 6, 4, 4, 2, 1 },
00114 { 8, 8, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 4, 4, 2, 1 },
00115 { 8, 8, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 4, 4, 2, 1 },
00116 { 8, 8, 7, 7, 7, 7, 7, 6, 6, 6, 6, 6, 4, 4, 2, 1 },
00117 { 9, 9, 8, 7, 7, 7, 6, 6, 6, 6, 6, 6, 3, 3, 3, 1 },
00118 { 9, 9, 8, 7, 7, 7, 6, 6, 6, 6, 6, 6, 3, 3, 3, 1 },
00119 { 9, 9, 8, 7, 7, 7, 6, 6, 6, 6, 6, 6, 3, 3, 3, 1 },
00120 { 9, 9, 8, 7, 7, 7, 6, 6, 6, 6, 6, 6, 3, 3, 3, 1 },
00121 };
00122
00123 static const uint16_t ac_vlc_desc0_syms[172] = {
00124 0x1000, 0xFF8, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2, 0xFF1,
00125 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1, 0xFE0,
00126 0xFD6, 0xFD5, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC6, 0xFC5,
00127 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB5, 0xFB3, 0xFB2, 0xFB1,
00128 0xFB0, 0xFA5, 0xFA3, 0xFA1, 0xFA0, 0xF95, 0xF91, 0xF90,
00129 0xF83, 0xF81, 0xF80, 0xF73, 0xF71, 0xF70, 0xF61, 0xF60,
00130 0xF51, 0xF50, 0xF45, 0xF41, 0xF40, 0xF31, 0xF30, 0xF21,
00131 0xF20, 0xF10, 0xF00, 0xEF0, 0xEE0, 0xED5, 0xED1, 0xED0,
00132 0xEC0, 0xEB0, 0xEA0, 0xE90, 0xE80, 0xE70, 0xE60, 0xE50,
00133 0xE40, 0xE30, 0xE20, 0xE10, 0xE00, 0xDF0, 0xDE0, 0xDD0,
00134 0xDC0, 0xDB0, 0xDA0, 0xD90, 0xD80, 0xD60, 0xCD1, 0x280,
00135 0x270, 0x260, 0x250, 0x240, 0x230, 0x220, 0x210, 0x200,
00136 0x1F0, 0x1E0, 0x1D0, 0x1C0, 0x1B0, 0x1A1, 0x1A0, 0x190,
00137 0x180, 0x170, 0x160, 0x150, 0x140, 0x130, 0x121, 0x120,
00138 0x111, 0x110, 0x101, 0x100, 0x0F1, 0x0F0, 0x0E1, 0x0E0,
00139 0x0D1, 0x0D0, 0x0C1, 0x0C0, 0x0B1, 0x0B0, 0x0A5, 0x0A1,
00140 0x0A0, 0x091, 0x090, 0x081, 0x080, 0x075, 0x071, 0x070,
00141 0x065, 0x063, 0x061, 0x060, 0x055, 0x053, 0x052, 0x051,
00142 0x050, 0x046, 0x045, 0x043, 0x042, 0x041, 0x040, 0x036,
00143 0x035, 0x033, 0x032, 0x031, 0x030, 0x026, 0x025, 0x024,
00144 0x023, 0x022, 0x021, 0x020, 0x018, 0x016, 0x015, 0x014,
00145 0x013, 0x012, 0x011, 0x010,
00146 };
00147
00148 static const uint16_t ac_vlc_desc0_codes[172] = {
00149 0x001F, 0x0D71, 0x013F, 0x006C, 0x00A7, 0x0067, 0x001C, 0x0008,
00150 0x0005, 0x06F1, 0x002C, 0x04BA, 0x0072, 0x01AA, 0x0002, 0x0006,
00151 0x06AC, 0x02AF, 0x06EF, 0x018F, 0x000A, 0x0009, 0x02AC, 0x042A,
00152 0x06E1, 0x068F, 0x00B1, 0x0000, 0x0317, 0x0C17, 0x0612, 0x010F,
00153 0x0011, 0x0FBA, 0x002A, 0x0172, 0x000C, 0x05AC, 0x03D7, 0x0037,
00154 0x0E8F, 0x02F2, 0x0041, 0x0BE1, 0x057F, 0x004A, 0x00AF, 0x006F,
00155 0x06AA, 0x0097, 0x0101, 0x0012, 0x0081, 0x0571, 0x0092, 0x0EAF,
00156 0x01BF, 0x00D7, 0x0031, 0x0001, 0x01F2, 0x0F17, 0x053A, 0x00BF,
00157 0x038F, 0x0217, 0x0371, 0x01F1, 0x01BA, 0x022A, 0x02BF, 0x028F,
00158 0x008F, 0x03F1, 0x00E1, 0x00BA, 0x00F2, 0x0EBF, 0x06AF, 0x048F,
00159 0x0FE1, 0x0271, 0x07BA, 0x0D3A, 0x0C12, 0x08AC, 0x0717, 0x00AC,
00160 0x0412, 0x0901, 0x04E1, 0x07E1, 0x0417, 0x0CAF, 0x04AC, 0x01AC,
00161 0x04F2, 0x03BA, 0x05D7, 0x07F1, 0x01D7, 0x04AF, 0x04EF, 0x03AC,
00162 0x00AA, 0x01E1, 0x0071, 0x00F1, 0x012C, 0x03EF, 0x082A, 0x0112,
00163 0x03E1, 0x01FA, 0x0DAC, 0x0131, 0x0E12, 0x000F, 0x0B17, 0x007F,
00164 0x0AEF, 0x007A, 0x02AA, 0x0061, 0x0671, 0x0027, 0x013A, 0x058F,
00165 0x00FF, 0x033A, 0x0032, 0x0301, 0x0021, 0x0C8F, 0x037F, 0x0077,
00166 0x02F1, 0x02E1, 0x003A, 0x003C, 0x0212, 0x0817, 0x0CE1, 0x003F,
00167 0x0007, 0x0017, 0x0501, 0x02BA, 0x06BF, 0x0057, 0x0010, 0x02EF,
00168 0x0117, 0x017F, 0x00EF, 0x006A, 0x0019, 0x0171, 0x01EF, 0x06BA,
00169 0x012A, 0x00FA, 0x0022, 0x000E, 0x0AE1, 0x01AF, 0x0052, 0x002F,
00170 0x004F, 0x001A, 0x0004, 0x0003,
00171 };
00172
00173 static const uint8_t ac_vlc_desc0_bits[172] = {
00174 6, 12, 9, 7, 8, 7, 6, 4,
00175 3, 11, 9, 11, 9, 9, 6, 4,
00176 11, 11, 11, 11, 7, 5, 11, 11,
00177 11, 12, 8, 5, 12, 12, 12, 9,
00178 6, 12, 12, 9, 6, 12, 10, 7,
00179 12, 10, 7, 12, 11, 7, 11, 8,
00180 11, 8, 12, 11, 8, 12, 8, 12,
00181 9, 9, 9, 9, 9, 12, 12, 10,
00182 10, 10, 10, 10, 10, 10, 11, 11,
00183 11, 11, 11, 11, 11, 12, 12, 12,
00184 12, 11, 12, 12, 12, 12, 12, 12,
00185 12, 12, 12, 12, 12, 12, 11, 11,
00186 11, 11, 11, 11, 11, 12, 11, 10,
00187 10, 10, 10, 10, 9, 10, 12, 9,
00188 12, 9, 12, 9, 12, 9, 12, 9,
00189 12, 8, 11, 8, 11, 8, 11, 11,
00190 8, 10, 7, 10, 7, 12, 10, 7,
00191 11, 12, 9, 6, 11, 12, 12, 9,
00192 6, 12, 11, 11, 12, 8, 5, 12,
00193 10, 11, 11, 7, 5, 11, 10, 11,
00194 9, 9, 6, 4, 12, 9, 7, 8,
00195 7, 6, 4, 3,
00196 };
00197
00198 static const uint16_t ac_vlc_desc1_syms[169] = {
00199 0x1000, 0xFF8, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2, 0xFF1,
00200 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1, 0xFE0,
00201 0xFD6, 0xFD5, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC6, 0xFC5,
00202 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB6, 0xFB5, 0xFB3, 0xFB2,
00203 0xFB1, 0xFB0, 0xFA6, 0xFA5, 0xFA3, 0xFA1, 0xFA0, 0xF95,
00204 0xF93, 0xF91, 0xF90, 0xF85, 0xF81, 0xF80, 0xF71, 0xF70,
00205 0xF61, 0xF60, 0xF51, 0xF50, 0xF45, 0xF41, 0xF40, 0xF31,
00206 0xF30, 0xF21, 0xF20, 0xF11, 0xF10, 0xF01, 0xF00, 0xEF1,
00207 0xEF0, 0xEE1, 0xEE0, 0xED0, 0xEC6, 0xEC0, 0xEB6, 0xEB0,
00208 0xEA0, 0xE90, 0xE80, 0xE70, 0xE60, 0xE50, 0xE40, 0xE33,
00209 0xE31, 0xE30, 0xE20, 0xE10, 0xE00, 0xDF0, 0xDE1, 0xDE0,
00210 0xDC0, 0xDB0, 0xDA0, 0x250, 0x240, 0x1F0, 0x1E0, 0x1D0,
00211 0x1C0, 0x1B0, 0x1A0, 0x190, 0x180, 0x170, 0x160, 0x150,
00212 0x140, 0x130, 0x120, 0x111, 0x110, 0x101, 0x100, 0x0F1,
00213 0x0F0, 0x0E1, 0x0E0, 0x0D1, 0x0D0, 0x0C6, 0x0C1, 0x0C0,
00214 0x0B1, 0x0B0, 0x0A1, 0x0A0, 0x095, 0x091, 0x090, 0x085,
00215 0x081, 0x080, 0x075, 0x071, 0x070, 0x065, 0x063, 0x061,
00216 0x060, 0x055, 0x053, 0x052, 0x051, 0x050, 0x046, 0x045,
00217 0x043, 0x042, 0x041, 0x040, 0x036, 0x035, 0x033, 0x032,
00218 0x031, 0x030, 0x026, 0x025, 0x024, 0x023, 0x022, 0x021,
00219 0x020, 0x018, 0x016, 0x015, 0x014, 0x013, 0x012, 0x011,
00220 0x010,
00221 };
00222
00223 static const uint16_t ac_vlc_desc1_codes[169] = {
00224 0x0019, 0x027D, 0x0084, 0x0044, 0x009D, 0x003D, 0x000A, 0x0002,
00225 0x0003, 0x00EA, 0x02FD, 0x017A, 0x01C6, 0x00B6, 0x0026, 0x000E,
00226 0x0095, 0x0260, 0x032A, 0x0360, 0x0006, 0x0005, 0x05B6, 0x036A,
00227 0x06F6, 0x0704, 0x00FA, 0x0010, 0x0279, 0x04D4, 0x00F6, 0x066A,
00228 0x001D, 0x0029, 0x05F9, 0x0846, 0x04F6, 0x01D4, 0x0038, 0x0446,
00229 0x0160, 0x031D, 0x0075, 0x0054, 0x02D4, 0x005A, 0x05FD, 0x0040,
00230 0x06EA, 0x0055, 0x0460, 0x009A, 0x052A, 0x00A0, 0x00D8, 0x0380,
00231 0x017D, 0x092A, 0x00F9, 0x0D7A, 0x0179, 0x0304, 0x002A, 0x0104,
00232 0x01A0, 0x0780, 0x007D, 0x03F9, 0x0C46, 0x03EA, 0x0E6A, 0x0204,
00233 0x01FD, 0x051D, 0x02AA, 0x05EA, 0x00AA, 0x0080, 0x067D, 0x09EA,
00234 0x0C95, 0x09F9, 0x07B6, 0x0DB6, 0x012A, 0x0904, 0x0454, 0x0FB6,
00235 0x0960, 0x08D4, 0x0495, 0x0F80, 0x0560, 0x0B04, 0x057A, 0x0079,
00236 0x0795, 0x0E7D, 0x0060, 0x076A, 0x03B6, 0x0395, 0x0180, 0x02A0,
00237 0x006A, 0x0195, 0x0295, 0x0646, 0x03FD, 0x01F9, 0x0154, 0x0DF9,
00238 0x00C6, 0x0F95, 0x01F6, 0x0480, 0x0000, 0x0A79, 0x04AA, 0x00E0,
00239 0x0246, 0x001A, 0x0479, 0x0015, 0x0D60, 0x0280, 0x0018, 0x01EA,
00240 0x037A, 0x003A, 0x011D, 0x00FD, 0x0035, 0x0A7D, 0x04A0, 0x0146,
00241 0x0024, 0x01B6, 0x0504, 0x0046, 0x0020, 0x0009, 0x00D4, 0x03AA,
00242 0x0679, 0x026A, 0x0036, 0x0008, 0x02F6, 0x01AA, 0x016A, 0x0254,
00243 0x0039, 0x000D, 0x0004, 0x0176, 0x02EA, 0x007A, 0x0076, 0x0016,
00244 0x0001, 0x0879, 0x0058, 0x0014, 0x00D5, 0x005D, 0x0034, 0x000C,
00245 0x0007,
00246 };
00247
00248 static const uint8_t ac_vlc_desc1_bits[169] = {
00249 6, 12, 8, 7, 8, 7, 6, 4,
00250 3, 10, 10, 11, 9, 9, 6, 4,
00251 11, 10, 10, 10, 7, 5, 12, 11,
00252 11, 11, 8, 5, 12, 11, 11, 12,
00253 9, 6, 12, 12, 11, 9, 6, 12,
00254 12, 10, 7, 11, 10, 7, 11, 7,
00255 11, 8, 11, 8, 11, 11, 8, 11,
00256 9, 12, 9, 12, 9, 12, 9, 12,
00257 9, 12, 10, 10, 12, 10, 12, 10,
00258 11, 11, 10, 11, 11, 11, 12, 12,
00259 12, 12, 12, 12, 12, 12, 11, 12,
00260 12, 12, 12, 12, 12, 12, 12, 12,
00261 12, 12, 11, 11, 11, 11, 10, 10,
00262 10, 10, 10, 11, 10, 12, 9, 12,
00263 9, 12, 9, 11, 8, 12, 11, 8,
00264 11, 8, 11, 8, 12, 10, 7, 12,
00265 10, 7, 11, 10, 7, 12, 11, 9,
00266 6, 11, 11, 12, 8, 6, 12, 10,
00267 11, 11, 8, 5, 11, 10, 10, 10,
00268 7, 5, 10, 9, 11, 9, 9, 6,
00269 4, 12, 8, 7, 8, 7, 6, 4,
00270 3,
00271 };
00272
00273 static const uint16_t ac_vlc_desc2_syms[165] = {
00274 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00275 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00276 0xFE0, 0xFD6, 0xFD5, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC6,
00277 0xFC5, 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB6, 0xFB5, 0xFB3,
00278 0xFB2, 0xFB1, 0xFB0, 0xFA5, 0xFA3, 0xFA1, 0xFA0, 0xF95,
00279 0xF93, 0xF91, 0xF90, 0xF81, 0xF80, 0xF75, 0xF71, 0xF70,
00280 0xF61, 0xF60, 0xF51, 0xF50, 0xF41, 0xF40, 0xF36, 0xF31,
00281 0xF30, 0xF26, 0xF21, 0xF20, 0xF16, 0xF11, 0xF10, 0xF06,
00282 0xF01, 0xF00, 0xEF1, 0xEF0, 0xEE1, 0xEE0, 0xED0, 0xEC0,
00283 0xEB3, 0xEB1, 0xEB0, 0xEA3, 0xEA1, 0xEA0, 0xE90, 0xE81,
00284 0xE80, 0xE71, 0xE70, 0xE61, 0xE60, 0xE50, 0xE40, 0xE30,
00285 0xE10, 0xE00, 0x241, 0x240, 0x231, 0x1D0, 0x1C0, 0x1B3,
00286 0x1B0, 0x1A0, 0x190, 0x180, 0x170, 0x160, 0x150, 0x140,
00287 0x130, 0x120, 0x110, 0x100, 0x0F0, 0x0E0, 0x0D1, 0x0D0,
00288 0x0C1, 0x0C0, 0x0B1, 0x0B0, 0x0A5, 0x0A1, 0x0A0, 0x096,
00289 0x095, 0x091, 0x090, 0x086, 0x085, 0x081, 0x080, 0x075,
00290 0x071, 0x070, 0x065, 0x063, 0x061, 0x060, 0x055, 0x053,
00291 0x052, 0x051, 0x050, 0x045, 0x043, 0x042, 0x041, 0x040,
00292 0x036, 0x035, 0x033, 0x032, 0x031, 0x030, 0x026, 0x025,
00293 0x024, 0x023, 0x022, 0x021, 0x020, 0x018, 0x016, 0x015,
00294 0x014, 0x013, 0x012, 0x011, 0x010,
00295 };
00296
00297 static const uint16_t ac_vlc_desc2_codes[165] = {
00298 0x0034, 0x059C, 0x0280, 0x001C, 0x004C, 0x00BD, 0x0020, 0x003C,
00299 0x000A, 0x0003, 0x00FD, 0x008C, 0x0332, 0x01D5, 0x0055, 0x003E,
00300 0x0001, 0x07E4, 0x0264, 0x00B2, 0x00A2, 0x005C, 0x0005, 0x02A2,
00301 0x011D, 0x0132, 0x076C, 0x0012, 0x0018, 0x01E4, 0x05E4, 0x02B2,
00302 0x0432, 0x017D, 0x000E, 0x055D, 0x0955, 0x0164, 0x0028, 0x0D62,
00303 0x0B24, 0x02DE, 0x001E, 0x0340, 0x0014, 0x0555, 0x0180, 0x00DD,
00304 0x01B2, 0x0092, 0x036C, 0x00EC, 0x00E4, 0x00C0, 0x0C64, 0x095D,
00305 0x01DE, 0x0AE4, 0x0C32, 0x01A2, 0x06E4, 0x0832, 0x01A4, 0x015D,
00306 0x0732, 0x031D, 0x0F9C, 0x03E2, 0x09E2, 0x02FD, 0x0224, 0x051D,
00307 0x02E4, 0x019C, 0x05B2, 0x0355, 0x0064, 0x016C, 0x038C, 0x0880,
00308 0x0480, 0x06B2, 0x0540, 0x0080, 0x075D, 0x0155, 0x0424, 0x0680,
00309 0x0A62, 0x0A80, 0x078C, 0x0D9C, 0x0F8C, 0x0562, 0x0FF2, 0x0464,
00310 0x0B55, 0x01E2, 0x0032, 0x07F2, 0x0140, 0x03E4, 0x0662, 0x0755,
00311 0x0380, 0x026C, 0x0232, 0x001D, 0x0040, 0x00E2, 0x035D, 0x00F2,
00312 0x0162, 0x01FD, 0x03F2, 0x000C, 0x0EA2, 0x05F2, 0x0072, 0x04E4,
00313 0x0F32, 0x018C, 0x009D, 0x0324, 0x079C, 0x006C, 0x0054, 0x0F5D,
00314 0x021D, 0x0015, 0x0024, 0x06A2, 0x009C, 0x0004, 0x0062, 0x056C,
00315 0x0262, 0x0000, 0x002E, 0x01F2, 0x0124, 0x039C, 0x005E, 0x0010,
00316 0x0724, 0x00A4, 0x00DE, 0x0362, 0x0052, 0x000D, 0x03B2, 0x007D,
00317 0x05E2, 0x00D5, 0x005D, 0x0035, 0x0009, 0x099C, 0x0022, 0x002C,
00318 0x003D, 0x0008, 0x0002, 0x0006, 0x0007,
00319 };
00320
00321 static const uint8_t ac_vlc_desc2_bits[165] = {
00322 6, 12, 12, 8, 7, 8, 6, 6,
00323 4, 3, 10, 9, 11, 9, 9, 6,
00324 4, 11, 10, 10, 10, 7, 5, 11,
00325 11, 10, 11, 8, 5, 11, 11, 11,
00326 12, 9, 6, 11, 12, 9, 6, 12,
00327 12, 10, 7, 10, 7, 11, 10, 8,
00328 11, 8, 11, 8, 11, 8, 12, 12,
00329 9, 12, 12, 9, 11, 12, 9, 12,
00330 12, 10, 12, 10, 12, 10, 10, 11,
00331 12, 12, 11, 12, 11, 11, 11, 12,
00332 11, 11, 11, 12, 12, 12, 11, 11,
00333 12, 12, 12, 12, 12, 12, 12, 12,
00334 12, 12, 12, 12, 11, 11, 11, 11,
00335 10, 10, 10, 10, 9, 9, 11, 9,
00336 11, 9, 11, 8, 12, 11, 8, 11,
00337 12, 10, 8, 12, 12, 10, 7, 12,
00338 10, 7, 11, 12, 9, 6, 10, 11,
00339 12, 8, 6, 11, 10, 11, 8, 5,
00340 11, 9, 10, 10, 7, 5, 10, 9,
00341 11, 9, 9, 6, 4, 12, 8, 7,
00342 8, 6, 6, 4, 3,
00343 };
00344
00345 static const uint16_t ac_vlc_desc3_syms[162] = {
00346 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00347 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00348 0xFE0, 0xFD6, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0,
00349 0xFC6, 0xFC5, 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB5, 0xFB3,
00350 0xFB2, 0xFB1, 0xFB0, 0xFA5, 0xFA3, 0xFA1, 0xFA0, 0xF95,
00351 0xF93, 0xF91, 0xF90, 0xF85, 0xF83, 0xF81, 0xF80, 0xF71,
00352 0xF70, 0xF66, 0xF61, 0xF60, 0xF56, 0xF51, 0xF50, 0xF46,
00353 0xF41, 0xF40, 0xF36, 0xF31, 0xF30, 0xF26, 0xF21, 0xF20,
00354 0xF11, 0xF10, 0xF01, 0xF00, 0xEF3, 0xEF1, 0xEF0, 0xEE3,
00355 0xEE1, 0xEE0, 0xED3, 0xED1, 0xED0, 0xEC1, 0xEC0, 0xEB1,
00356 0xEB0, 0xEA0, 0xE90, 0xE80, 0xE70, 0x1E1, 0x1D1, 0x1D0,
00357 0x1C1, 0x1B1, 0x1A1, 0x180, 0x170, 0x163, 0x160, 0x150,
00358 0x140, 0x130, 0x123, 0x120, 0x113, 0x110, 0x100, 0x0F0,
00359 0x0E0, 0x0D1, 0x0D0, 0x0C1, 0x0C0, 0x0B1, 0x0B0, 0x0A1,
00360 0x0A0, 0x095, 0x091, 0x090, 0x085, 0x081, 0x080, 0x076,
00361 0x075, 0x073, 0x071, 0x070, 0x066, 0x065, 0x063, 0x061,
00362 0x060, 0x055, 0x053, 0x052, 0x051, 0x050, 0x045, 0x043,
00363 0x042, 0x041, 0x040, 0x036, 0x035, 0x034, 0x033, 0x032,
00364 0x031, 0x030, 0x026, 0x025, 0x024, 0x023, 0x022, 0x021,
00365 0x020, 0x018, 0x017, 0x016, 0x015, 0x014, 0x013, 0x012,
00366 0x011, 0x010,
00367 };
00368
00369 static const uint16_t ac_vlc_desc3_codes[162] = {
00370 0x001D, 0x087C, 0x0AE8, 0x003A, 0x001C, 0x0008, 0x000C, 0x0032,
00371 0x0006, 0x0003, 0x03A5, 0x01EC, 0x01A5, 0x0080, 0x0030, 0x0005,
00372 0x0001, 0x0040, 0x03FC, 0x02D4, 0x0154, 0x02FC, 0x003C, 0x0015,
00373 0x051A, 0x0000, 0x02EC, 0x077C, 0x00D2, 0x0018, 0x03E8, 0x04EC,
00374 0x027C, 0x01FA, 0x0022, 0x0765, 0x0EA5, 0x0054, 0x0010, 0x08EC,
00375 0x0AAC, 0x03BA, 0x0042, 0x065D, 0x0AD4, 0x005C, 0x0028, 0x03C0,
00376 0x00E5, 0x035C, 0x04FA, 0x00DC, 0x06A5, 0x075C, 0x00C8, 0x05A5,
00377 0x04D4, 0x00BA, 0x01C0, 0x05E8, 0x012C, 0x00E8, 0x01B0, 0x00B0,
00378 0x025D, 0x002C, 0x0A52, 0x025C, 0x01E8, 0x00FA, 0x0348, 0x0652,
00379 0x0B7C, 0x0365, 0x031A, 0x0E52, 0x011A, 0x0200, 0x01BA, 0x02AC,
00380 0x06D4, 0x01FC, 0x05BA, 0x0DFC, 0x0248, 0x0EE8, 0x0B1A, 0x0CFC,
00381 0x0F65, 0x0B5C, 0x0DC0, 0x007C, 0x0548, 0x08A5, 0x00FC, 0x03B0,
00382 0x0148, 0x06AC, 0x0252, 0x071A, 0x02E8, 0x0240, 0x00AC, 0x021A,
00383 0x0140, 0x08E8, 0x01AC, 0x00EC, 0x0152, 0x00A5, 0x0068, 0x001A,
00384 0x006C, 0x05C0, 0x015C, 0x0025, 0x05B0, 0x017C, 0x0014, 0x047C,
00385 0x00D4, 0x06E8, 0x00C0, 0x0002, 0x0A5D, 0x04E8, 0x0A7C, 0x01D4,
00386 0x0020, 0x04A5, 0x07B0, 0x037C, 0x015D, 0x002A, 0x005D, 0x0048,
00387 0x067C, 0x007A, 0x0004, 0x04FC, 0x02FA, 0x0648, 0x0100, 0x0052,
00388 0x005A, 0x000D, 0x0165, 0x0065, 0x02A5, 0x0070, 0x00F0, 0x003D,
00389 0x0009, 0x05FC, 0x0E48, 0x009A, 0x0012, 0x00DD, 0x0034, 0x000A,
00390 0x000E, 0x0007,
00391 };
00392
00393 static const uint8_t ac_vlc_desc3_bits[162] = {
00394 7, 12, 12, 8, 7, 7, 6, 6,
00395 4, 3, 10, 9, 11, 8, 8, 6,
00396 4, 10, 10, 12, 9, 10, 7, 5,
00397 11, 10, 10, 11, 8, 5, 10, 11,
00398 12, 9, 6, 12, 12, 9, 6, 12,
00399 12, 10, 7, 11, 12, 10, 7, 10,
00400 8, 12, 11, 8, 12, 11, 8, 11,
00401 11, 9, 11, 11, 9, 12, 11, 9,
00402 12, 9, 12, 10, 11, 11, 10, 12,
00403 12, 11, 12, 12, 11, 10, 11, 12,
00404 11, 11, 11, 12, 11, 12, 12, 12,
00405 12, 12, 12, 12, 11, 12, 11, 11,
00406 11, 11, 12, 11, 12, 10, 10, 10,
00407 9, 12, 9, 12, 9, 12, 8, 10,
00408 8, 12, 10, 8, 11, 10, 7, 11,
00409 11, 12, 9, 7, 12, 11, 12, 9,
00410 6, 11, 11, 12, 9, 6, 10, 10,
00411 11, 8, 5, 12, 10, 12, 9, 10,
00412 7, 5, 10, 9, 11, 8, 8, 6,
00413 4, 12, 12, 8, 7, 8, 6, 6,
00414 4, 3,
00415 };
00416
00417 static const uint16_t ac_vlc_desc4_syms[131] = {
00418 0x1000, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2, 0xFF1, 0xFF0,
00419 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1, 0xFE0, 0xFD6,
00420 0xFD5, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC5, 0xFC3, 0xFC2,
00421 0xFC1, 0xFC0, 0xFB5, 0xFB3, 0xFB1, 0xFB0, 0xFA5, 0xFA3,
00422 0xFA1, 0xFA0, 0xF93, 0xF91, 0xF90, 0xF81, 0xF80, 0xF76,
00423 0xF71, 0xF70, 0xF66, 0xF61, 0xF60, 0xF56, 0xF51, 0xF50,
00424 0xF41, 0xF40, 0xF31, 0xF30, 0xF23, 0xF21, 0xF20, 0xF13,
00425 0xF11, 0xF10, 0xF03, 0xF01, 0xF00, 0xEF1, 0xEF0, 0xEE0,
00426 0xED0, 0xEC0, 0xEB0, 0x191, 0x181, 0x180, 0x171, 0x161,
00427 0x140, 0x130, 0x123, 0x120, 0x110, 0x100, 0x0F3, 0x0F0,
00428 0x0E0, 0x0D0, 0x0C0, 0x0B1, 0x0B0, 0x0A1, 0x0A0, 0x091,
00429 0x090, 0x085, 0x081, 0x080, 0x075, 0x071, 0x070, 0x066,
00430 0x065, 0x063, 0x061, 0x060, 0x056, 0x055, 0x053, 0x051,
00431 0x050, 0x045, 0x043, 0x042, 0x041, 0x040, 0x036, 0x035,
00432 0x033, 0x032, 0x031, 0x030, 0x026, 0x025, 0x024, 0x023,
00433 0x022, 0x021, 0x020, 0x018, 0x016, 0x015, 0x014, 0x013,
00434 0x012, 0x011, 0x010,
00435 };
00436
00437 static const uint16_t ac_vlc_desc4_codes[131] = {
00438 0x006B, 0x00BE, 0x0052, 0x00F3, 0x005B, 0x003A, 0x0009, 0x0007,
00439 0x00DA, 0x03FB, 0x0123, 0x00B3, 0x01B3, 0x002E, 0x0006, 0x030A,
00440 0x005A, 0x004A, 0x034A, 0x0072, 0x0005, 0x02DA, 0x0173, 0x04FB,
00441 0x0032, 0x0013, 0x039B, 0x0B9B, 0x011E, 0x0002, 0x00FB, 0x021E,
00442 0x009B, 0x007E, 0x0E1A, 0x03CA, 0x007B, 0x02FB, 0x0033, 0x03AB,
00443 0x0463, 0x008A, 0x0773, 0x041E, 0x002B, 0x031B, 0x065A, 0x011A,
00444 0x060A, 0x01DA, 0x0963, 0x0323, 0x0BAB, 0x059E, 0x010A, 0x05AB,
00445 0x0CFB, 0x071B, 0x079E, 0x0F9E, 0x0263, 0x079B, 0x0563, 0x019E,
00446 0x01AB, 0x0E63, 0x029B, 0x04CA, 0x0DAB, 0x0663, 0x0B1B, 0x020A,
00447 0x0A1E, 0x021A, 0x0063, 0x061E, 0x06FB, 0x025A, 0x0163, 0x0573,
00448 0x000A, 0x0223, 0x011B, 0x0C1A, 0x015A, 0x0863, 0x00AB, 0x02CA,
00449 0x00B2, 0x0A0A, 0x01CA, 0x00A3, 0x0B73, 0x0023, 0x0012, 0x039E,
00450 0x001A, 0x0CCA, 0x01FB, 0x005E, 0x0A9B, 0x00CA, 0x0373, 0x009E,
00451 0x0022, 0x07AB, 0x001E, 0x0EFB, 0x009A, 0x000B, 0x041A, 0x019B,
00452 0x0363, 0x014A, 0x006A, 0x0015, 0x069B, 0x0073, 0x0523, 0x001B,
00453 0x012B, 0x0003, 0x0001, 0x061A, 0x003E, 0x002A, 0x00E3, 0x003B,
00454 0x000E, 0x000D, 0x0000,
00455 };
00456
00457 static const uint8_t ac_vlc_desc4_bits[131] = {
00458 7, 8, 7, 8, 7, 6, 4, 3,
00459 10, 10, 11, 9, 9, 6, 4, 10,
00460 10, 9, 10, 7, 5, 10, 11, 12,
00461 8, 6, 12, 12, 9, 6, 11, 12,
00462 10, 7, 12, 10, 8, 11, 8, 12,
00463 11, 8, 11, 11, 9, 12, 11, 9,
00464 11, 9, 12, 10, 12, 11, 10, 12,
00465 12, 11, 12, 12, 11, 11, 11, 11,
00466 11, 12, 12, 12, 12, 12, 12, 12,
00467 12, 11, 12, 11, 12, 11, 12, 11,
00468 10, 10, 10, 12, 9, 12, 9, 10,
00469 8, 12, 10, 8, 12, 10, 7, 11,
00470 11, 12, 10, 7, 12, 11, 12, 9,
00471 6, 11, 11, 12, 8, 6, 12, 10,
00472 10, 10, 7, 5, 11, 9, 11, 9,
00473 9, 6, 4, 12, 8, 7, 8, 7,
00474 6, 4, 2,
00475 };
00476
00477 static const uint16_t ac_vlc_desc5_syms[132] = {
00478 0x1000, 0xFF8, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2, 0xFF1,
00479 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1, 0xFE0,
00480 0xFD6, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC5,
00481 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB5, 0xFB3, 0xFB1, 0xFB0,
00482 0xFA3, 0xFA1, 0xFA0, 0xF96, 0xF93, 0xF91, 0xF90, 0xF86,
00483 0xF85, 0xF81, 0xF80, 0xF76, 0xF75, 0xF71, 0xF70, 0xF66,
00484 0xF61, 0xF60, 0xF51, 0xF50, 0xF43, 0xF41, 0xF40, 0xF33,
00485 0xF31, 0xF30, 0xF23, 0xF21, 0xF20, 0xF11, 0xF10, 0xF00,
00486 0xEF0, 0xEE0, 0xEC1, 0xEC0, 0x151, 0x141, 0x140, 0x131,
00487 0x121, 0x120, 0x111, 0x110, 0x103, 0x100, 0x0F0, 0x0E0,
00488 0x0D3, 0x0D0, 0x0C3, 0x0C1, 0x0C0, 0x0B1, 0x0B0, 0x0A1,
00489 0x0A0, 0x091, 0x090, 0x081, 0x080, 0x075, 0x071, 0x070,
00490 0x065, 0x061, 0x060, 0x056, 0x055, 0x053, 0x052, 0x051,
00491 0x050, 0x046, 0x045, 0x043, 0x042, 0x041, 0x040, 0x035,
00492 0x034, 0x033, 0x032, 0x031, 0x030, 0x026, 0x025, 0x024,
00493 0x023, 0x022, 0x021, 0x020, 0x018, 0x016, 0x015, 0x014,
00494 0x013, 0x012, 0x011, 0x010,
00495 };
00496
00497 static const uint16_t ac_vlc_desc5_codes[132] = {
00498 0x0001, 0x0D62, 0x00BD, 0x0022, 0x009B, 0x0032, 0x0019, 0x0005,
00499 0x0007, 0x034D, 0x009A, 0x012B, 0x0052, 0x006B, 0x003A, 0x0006,
00500 0x06FD, 0x017D, 0x081A, 0x031B, 0x031A, 0x0012, 0x0011, 0x0202,
00501 0x00FD, 0x051B, 0x00D2, 0x001D, 0x011A, 0x0782, 0x018D, 0x007B,
00502 0x067D, 0x037D, 0x0021, 0x0E8D, 0x0562, 0x008D, 0x00BB, 0x053D,
00503 0x082A, 0x0002, 0x000D, 0x0302, 0x007D, 0x053B, 0x003B, 0x0A4D,
00504 0x027D, 0x01FD, 0x042A, 0x01C2, 0x041A, 0x0182, 0x014D, 0x0162,
00505 0x00C2, 0x032A, 0x0D9A, 0x012A, 0x0102, 0x087D, 0x072B, 0x039A,
00506 0x0362, 0x019A, 0x0C62, 0x04C2, 0x0D1B, 0x028D, 0x0762, 0x0E7D,
00507 0x0E41, 0x059A, 0x024D, 0x093B, 0x052B, 0x011B, 0x064D, 0x013D,
00508 0x0382, 0x0262, 0x0641, 0x0462, 0x004D, 0x0CC2, 0x033B, 0x068D,
00509 0x0141, 0x0D2B, 0x001B, 0x0041, 0x00C1, 0x0C41, 0x01E2, 0x00EB,
00510 0x062A, 0x0082, 0x0061, 0x02FD, 0x047D, 0x013B, 0x002A, 0x003D,
00511 0x005B, 0x022A, 0x02C2, 0x0241, 0x0062, 0x00AA, 0x000B, 0x00E2,
00512 0x001A, 0x033D, 0x021A, 0x006A, 0x0009, 0x032B, 0x002B, 0x04FD,
00513 0x0042, 0x016B, 0x002D, 0x000E, 0x0441, 0x00CD, 0x005A, 0x00AB,
00514 0x000A, 0x0039, 0x0003, 0x0000,
00515 };
00516
00517 static const uint8_t ac_vlc_desc5_bits[132] = {
00518 7, 12, 8, 7, 8, 6, 6, 4,
00519 3, 10, 9, 11, 8, 9, 6, 4,
00520 11, 10, 12, 10, 10, 7, 5, 10,
00521 11, 12, 8, 6, 10, 11, 9, 7,
00522 12, 10, 7, 12, 12, 10, 8, 11,
00523 12, 10, 8, 10, 12, 11, 9, 12,
00524 11, 9, 11, 9, 11, 10, 10, 11,
00525 11, 10, 12, 10, 10, 12, 11, 10,
00526 11, 11, 12, 12, 12, 11, 11, 12,
00527 12, 12, 12, 12, 12, 11, 11, 11,
00528 11, 10, 12, 12, 10, 12, 10, 12,
00529 9, 12, 9, 11, 8, 12, 9, 8,
00530 11, 9, 7, 11, 11, 12, 12, 9,
00531 7, 11, 10, 11, 11, 8, 6, 9,
00532 12, 10, 10, 7, 5, 11, 9, 11,
00533 8, 9, 6, 4, 12, 8, 7, 8,
00534 6, 6, 4, 2,
00535 };
00536
00537 static const uint16_t ac_vlc_desc6_syms[130] = {
00538 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00539 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00540 0xFE0, 0xFD6, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0,
00541 0xFC5, 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB5, 0xFB3, 0xFB1,
00542 0xFB0, 0xFA6, 0xFA3, 0xFA1, 0xFA0, 0xF96, 0xF95, 0xF93,
00543 0xF91, 0xF90, 0xF86, 0xF85, 0xF81, 0xF80, 0xF76, 0xF71,
00544 0xF70, 0xF63, 0xF61, 0xF60, 0xF53, 0xF51, 0xF50, 0xF43,
00545 0xF41, 0xF40, 0xF31, 0xF30, 0xF20, 0xF10, 0xF00, 0xEF0,
00546 0xEE1, 0x131, 0x121, 0x120, 0x111, 0x110, 0x101, 0x100,
00547 0x0F1, 0x0F0, 0x0E3, 0x0E1, 0x0E0, 0x0D1, 0x0D0, 0x0C3,
00548 0x0C0, 0x0B3, 0x0B1, 0x0B0, 0x0A1, 0x0A0, 0x091, 0x090,
00549 0x081, 0x080, 0x075, 0x071, 0x070, 0x065, 0x063, 0x061,
00550 0x060, 0x056, 0x055, 0x053, 0x051, 0x050, 0x046, 0x045,
00551 0x043, 0x042, 0x041, 0x040, 0x036, 0x035, 0x034, 0x033,
00552 0x032, 0x031, 0x030, 0x026, 0x025, 0x024, 0x023, 0x022,
00553 0x021, 0x020, 0x018, 0x016, 0x015, 0x014, 0x013, 0x012,
00554 0x011, 0x010,
00555 };
00556
00557 static const uint16_t ac_vlc_desc6_codes[130] = {
00558 0x0022, 0x0BB2, 0x0942, 0x002B, 0x0072, 0x0002, 0x001A, 0x0039,
00559 0x000D, 0x0007, 0x007B, 0x008E, 0x06DB, 0x00EA, 0x015B, 0x002E,
00560 0x0006, 0x0959, 0x027B, 0x0A0E, 0x01AB, 0x008A, 0x0012, 0x001E,
00561 0x0575, 0x005B, 0x02AB, 0x00C2, 0x0015, 0x036A, 0x04B2, 0x0099,
00562 0x001B, 0x0519, 0x0C19, 0x00DB, 0x004E, 0x0042, 0x0159, 0x03B2,
00563 0x030E, 0x00EB, 0x0252, 0x0EAB, 0x018A, 0x00E2, 0x06AB, 0x0242,
00564 0x017B, 0x0452, 0x0319, 0x0152, 0x025B, 0x016A, 0x00AB, 0x0052,
00565 0x05B2, 0x010E, 0x038E, 0x028A, 0x0359, 0x0019, 0x078A, 0x0C52,
00566 0x0D8E, 0x0ED9, 0x02D9, 0x0662, 0x0119, 0x09B2, 0x0BAB, 0x0D19,
00567 0x0C5B, 0x00B2, 0x0542, 0x0B8A, 0x02B2, 0x0142, 0x065B, 0x058E,
00568 0x0062, 0x018E, 0x038A, 0x00D9, 0x0419, 0x0162, 0x03AB, 0x0075,
00569 0x07B2, 0x0032, 0x020E, 0x07AB, 0x006B, 0x045B, 0x01B2, 0x0199,
00570 0x002A, 0x0375, 0x0775, 0x0AAB, 0x01D9, 0x003B, 0x060E, 0x0342,
00571 0x0175, 0x0262, 0x000A, 0x0005, 0x0559, 0x006A, 0x0D59, 0x0219,
00572 0x000E, 0x004A, 0x0009, 0x0719, 0x0059, 0x02DB, 0x00D2, 0x01DB,
00573 0x0025, 0x0001, 0x06D9, 0x00F5, 0x0035, 0x00FB, 0x003A, 0x000B,
00574 0x0003, 0x0000,
00575 };
00576
00577 static const uint8_t ac_vlc_desc6_bits[130] = {
00578 7, 12, 12, 8, 7, 7, 6, 6,
00579 4, 3, 10, 9, 11, 8, 9, 6,
00580 4, 12, 10, 12, 10, 10, 7, 5,
00581 11, 11, 12, 8, 6, 10, 11, 9,
00582 7, 12, 12, 10, 7, 10, 12, 12,
00583 10, 8, 10, 12, 10, 8, 12, 10,
00584 9, 12, 11, 9, 11, 10, 10, 11,
00585 11, 10, 10, 10, 10, 11, 11, 12,
00586 12, 12, 11, 11, 11, 12, 12, 12,
00587 12, 11, 11, 12, 10, 12, 11, 12,
00588 10, 11, 12, 10, 12, 9, 12, 9,
00589 11, 8, 12, 11, 8, 12, 12, 9,
00590 7, 11, 11, 12, 9, 7, 11, 10,
00591 11, 11, 8, 6, 12, 9, 12, 10,
00592 10, 7, 5, 11, 9, 11, 8, 9,
00593 6, 4, 12, 8, 7, 8, 6, 6,
00594 4, 2,
00595 };
00596
00597 static const uint16_t ac_vlc_desc7_syms[125] = {
00598 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00599 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00600 0xFE0, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC5,
00601 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB5, 0xFB3, 0xFB1, 0xFB0,
00602 0xFA6, 0xFA5, 0xFA3, 0xFA1, 0xFA0, 0xF96, 0xF95, 0xF93,
00603 0xF91, 0xF90, 0xF86, 0xF81, 0xF80, 0xF73, 0xF71, 0xF70,
00604 0xF63, 0xF61, 0xF60, 0xF53, 0xF51, 0xF50, 0xF41, 0xF40,
00605 0xF31, 0xF30, 0xF20, 0xF10, 0xF01, 0xF00, 0x121, 0x111,
00606 0x101, 0x100, 0x0F1, 0x0F0, 0x0E1, 0x0E0, 0x0D1, 0x0D0,
00607 0x0C3, 0x0C1, 0x0C0, 0x0B1, 0x0B0, 0x0A3, 0x0A1, 0x0A0,
00608 0x093, 0x091, 0x090, 0x081, 0x080, 0x071, 0x070, 0x065,
00609 0x063, 0x061, 0x060, 0x055, 0x053, 0x052, 0x051, 0x050,
00610 0x046, 0x045, 0x043, 0x042, 0x041, 0x040, 0x036, 0x035,
00611 0x034, 0x033, 0x032, 0x031, 0x030, 0x026, 0x025, 0x024,
00612 0x023, 0x022, 0x021, 0x020, 0x018, 0x017, 0x016, 0x015,
00613 0x014, 0x013, 0x012, 0x011, 0x010,
00614 };
00615
00616 static const uint16_t ac_vlc_desc7_codes[125] = {
00617 0x0053, 0x009A, 0x0EE2, 0x00D3, 0x006A, 0x0052, 0x003A, 0x0035,
00618 0x000D, 0x0007, 0x0062, 0x0125, 0x0142, 0x0019, 0x01F3, 0x0029,
00619 0x000E, 0x0082, 0x0ADA, 0x02E3, 0x00E2, 0x0022, 0x0006, 0x0065,
00620 0x05E3, 0x0765, 0x0032, 0x0039, 0x0F99, 0x05E2, 0x0099, 0x0033,
00621 0x0362, 0x0799, 0x0F65, 0x0073, 0x004A, 0x02A5, 0x0162, 0x0742,
00622 0x01A5, 0x00D9, 0x0342, 0x005A, 0x00AA, 0x0EF3, 0x0182, 0x01DA,
00623 0x0382, 0x035A, 0x00F3, 0x0673, 0x0165, 0x00E5, 0x06F3, 0x0225,
00624 0x0842, 0x025A, 0x07E3, 0x0399, 0x07A5, 0x072A, 0x0F2A, 0x09E3,
00625 0x0273, 0x049A, 0x02E5, 0x0B99, 0x02E2, 0x0E73, 0x0562, 0x02F3,
00626 0x032A, 0x0F42, 0x00DA, 0x0999, 0x012A, 0x0365, 0x00A5, 0x00E3,
00627 0x0199, 0x03E3, 0x019A, 0x01E2, 0x0173, 0x06E5, 0x0059, 0x01E3,
00628 0x02DA, 0x002A, 0x000A, 0x06DA, 0x0FA5, 0x0042, 0x01E5, 0x0013,
00629 0x03E2, 0x015A, 0x03A5, 0x0442, 0x001A, 0x0005, 0x04A5, 0x0265,
00630 0x08A5, 0x0025, 0x029A, 0x0072, 0x0016, 0x0599, 0x00C2, 0x0242,
00631 0x00B2, 0x0002, 0x0015, 0x0001, 0x0BE3, 0x06E2, 0x0063, 0x0023,
00632 0x0012, 0x0009, 0x0003, 0x000B, 0x0000,
00633 };
00634
00635 static const uint8_t ac_vlc_desc7_bits[125] = {
00636 8, 11, 12, 8, 7, 7, 6, 6,
00637 4, 3, 9, 9, 10, 8, 9, 6,
00638 4, 9, 12, 10, 10, 7, 5, 10,
00639 11, 12, 8, 6, 12, 11, 9, 7,
00640 10, 12, 12, 10, 7, 10, 11, 12,
00641 10, 8, 11, 10, 8, 12, 10, 9,
00642 10, 10, 10, 12, 10, 10, 12, 10,
00643 12, 10, 11, 12, 12, 12, 12, 12,
00644 11, 11, 11, 12, 11, 12, 11, 11,
00645 11, 12, 10, 12, 10, 11, 12, 10,
00646 12, 12, 9, 11, 9, 11, 8, 12,
00647 12, 9, 7, 11, 12, 12, 9, 7,
00648 10, 10, 11, 11, 8, 6, 11, 10,
00649 12, 10, 10, 7, 5, 11, 8, 10,
00650 8, 8, 6, 4, 12, 12, 8, 7,
00651 7, 6, 6, 4, 2,
00652 };
00653
00654 static const uint16_t ac_vlc_desc8_syms[121] = {
00655 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00656 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00657 0xFE0, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC5,
00658 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB6, 0xFB5, 0xFB3, 0xFB1,
00659 0xFB0, 0xFA6, 0xFA5, 0xFA3, 0xFA1, 0xFA0, 0xF96, 0xF95,
00660 0xF93, 0xF91, 0xF90, 0xF86, 0xF83, 0xF81, 0xF80, 0xF73,
00661 0xF71, 0xF70, 0xF63, 0xF61, 0xF60, 0xF51, 0xF50, 0xF41,
00662 0xF40, 0xF30, 0xF21, 0xF20, 0x111, 0x101, 0x0F1, 0x0E1,
00663 0x0E0, 0x0D1, 0x0D0, 0x0C1, 0x0C0, 0x0B3, 0x0B1, 0x0B0,
00664 0x0A3, 0x0A1, 0x0A0, 0x093, 0x091, 0x090, 0x083, 0x081,
00665 0x080, 0x073, 0x071, 0x070, 0x065, 0x063, 0x061, 0x060,
00666 0x055, 0x053, 0x051, 0x050, 0x046, 0x045, 0x043, 0x042,
00667 0x041, 0x040, 0x036, 0x035, 0x034, 0x033, 0x032, 0x031,
00668 0x030, 0x026, 0x025, 0x024, 0x023, 0x022, 0x021, 0x020,
00669 0x018, 0x017, 0x016, 0x015, 0x014, 0x013, 0x012, 0x011,
00670 0x010,
00671 };
00672
00673 static const uint16_t ac_vlc_desc8_codes[121] = {
00674 0x00F6, 0x0676, 0x0EB6, 0x00F3, 0x0056, 0x006A, 0x0039, 0x0003,
00675 0x000D, 0x0007, 0x00A2, 0x0173, 0x00CA, 0x0025, 0x0082, 0x0019,
00676 0x0001, 0x00B6, 0x0276, 0x02E3, 0x00B2, 0x0062, 0x001A, 0x0175,
00677 0x01E3, 0x0BE5, 0x004A, 0x0029, 0x07A5, 0x00E3, 0x030A, 0x0176,
00678 0x0023, 0x0042, 0x05CA, 0x00A5, 0x0142, 0x0052, 0x04A5, 0x0B02,
00679 0x0D22, 0x0375, 0x0065, 0x0522, 0x0DE3, 0x010A, 0x00F5, 0x0136,
00680 0x0275, 0x01B2, 0x03F5, 0x03E3, 0x0002, 0x08E3, 0x01A2, 0x0B36,
00681 0x020A, 0x0076, 0x0CE3, 0x07E5, 0x070A, 0x03A5, 0x02B6, 0x0036,
00682 0x01E5, 0x02A5, 0x05E3, 0x07B6, 0x07F5, 0x0736, 0x0BA5, 0x0075,
00683 0x0302, 0x0FE5, 0x01B6, 0x0102, 0x04E3, 0x0022, 0x08A5, 0x01CA,
00684 0x00E5, 0x0F0A, 0x05E5, 0x0096, 0x0A76, 0x0336, 0x0236, 0x0012,
00685 0x03B6, 0x0BF5, 0x0073, 0x0035, 0x02B2, 0x000A, 0x0476, 0x0122,
00686 0x0016, 0x0009, 0x0322, 0x01F5, 0x03E5, 0x01A5, 0x03CA, 0x0072,
00687 0x0006, 0x06A5, 0x0032, 0x02CA, 0x008A, 0x00C2, 0x0015, 0x000E,
00688 0x0702, 0x06B6, 0x0063, 0x0033, 0x002A, 0x0005, 0x0013, 0x000B,
00689 0x0000,
00690 };
00691
00692 static const uint8_t ac_vlc_desc8_bits[121] = {
00693 8, 11, 12, 8, 7, 7, 6, 6,
00694 4, 3, 9, 9, 10, 8, 8, 6,
00695 4, 10, 12, 10, 10, 7, 5, 10,
00696 11, 12, 8, 6, 11, 12, 11, 9,
00697 7, 9, 11, 12, 9, 7, 11, 12,
00698 12, 10, 8, 12, 12, 10, 9, 10,
00699 10, 9, 12, 10, 9, 12, 9, 12,
00700 10, 11, 12, 12, 12, 12, 11, 10,
00701 11, 11, 12, 11, 11, 11, 12, 10,
00702 12, 12, 10, 10, 12, 9, 12, 11,
00703 9, 12, 11, 8, 12, 12, 10, 7,
00704 11, 12, 9, 7, 10, 10, 11, 11,
00705 8, 6, 10, 10, 12, 10, 10, 7,
00706 5, 11, 8, 10, 8, 8, 6, 4,
00707 11, 12, 8, 7, 7, 6, 6, 4,
00708 2,
00709 };
00710
00711 static const uint16_t ac_vlc_desc9_syms[114] = {
00712 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00713 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00714 0xFE0, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC5,
00715 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB6, 0xFB5, 0xFB3, 0xFB2,
00716 0xFB1, 0xFB0, 0xFA6, 0xFA5, 0xFA3, 0xFA1, 0xFA0, 0xF96,
00717 0xF93, 0xF91, 0xF90, 0xF83, 0xF81, 0xF80, 0xF73, 0xF71,
00718 0xF70, 0xF61, 0xF60, 0xF51, 0xF50, 0xF40, 0xF31, 0xF30,
00719 0xF21, 0x121, 0x0F1, 0x0E1, 0x0D1, 0x0D0, 0x0C1, 0x0C0,
00720 0x0B1, 0x0B0, 0x0A3, 0x0A1, 0x0A0, 0x093, 0x091, 0x090,
00721 0x083, 0x081, 0x080, 0x073, 0x071, 0x070, 0x065, 0x063,
00722 0x061, 0x060, 0x055, 0x053, 0x051, 0x050, 0x045, 0x043,
00723 0x042, 0x041, 0x040, 0x036, 0x035, 0x034, 0x033, 0x032,
00724 0x031, 0x030, 0x026, 0x025, 0x024, 0x023, 0x022, 0x021,
00725 0x020, 0x018, 0x017, 0x016, 0x015, 0x014, 0x013, 0x012,
00726 0x011, 0x010,
00727 };
00728
00729 static const uint16_t ac_vlc_desc9_codes[114] = {
00730 0x0061, 0x0403, 0x0DB1, 0x0012, 0x0071, 0x0056, 0x0035, 0x0023,
00731 0x000D, 0x0007, 0x0243, 0x01D3, 0x026A, 0x00A1, 0x00A2, 0x0011,
00732 0x000E, 0x01AA, 0x0531, 0x0093, 0x0222, 0x0032, 0x0006, 0x07F2,
00733 0x04D3, 0x0C43, 0x0072, 0x0001, 0x0343, 0x05F2, 0x04AA, 0x03F2,
00734 0x0031, 0x0045, 0x0143, 0x00AA, 0x0B31, 0x00F2, 0x00C3, 0x0693,
00735 0x0BF2, 0x0203, 0x00E1, 0x03B1, 0x02D3, 0x00B1, 0x056A, 0x01D2,
00736 0x008A, 0x046A, 0x01E2, 0x0003, 0x0103, 0x01B1, 0x02E2, 0x0293,
00737 0x016A, 0x04E2, 0x0443, 0x0521, 0x0321, 0x0043, 0x00D3, 0x00E2,
00738 0x0703, 0x00D2, 0x0731, 0x0A93, 0x0393, 0x0803, 0x0422, 0x0383,
00739 0x018A, 0x006A, 0x0021, 0x096A, 0x0303, 0x0052, 0x0CE2, 0x0D31,
00740 0x038A, 0x0013, 0x01F2, 0x0E93, 0x0083, 0x0005, 0x02D2, 0x0121,
00741 0x0022, 0x00EA, 0x0036, 0x0122, 0x0193, 0x0331, 0x0183, 0x02AA,
00742 0x004A, 0x001A, 0x0131, 0x002A, 0x036A, 0x000A, 0x0062, 0x0025,
00743 0x0009, 0x06E2, 0x05B1, 0x0053, 0x0002, 0x0016, 0x0015, 0x0033,
00744 0x000B, 0x0000,
00745 };
00746
00747 static const uint8_t ac_vlc_desc9_bits[114] = {
00748 8, 11, 12, 7, 7, 7, 6, 6,
00749 4, 3, 10, 9, 10, 8, 8, 6,
00750 4, 9, 12, 10, 10, 7, 5, 11,
00751 11, 12, 8, 6, 10, 11, 11, 12,
00752 9, 7, 10, 11, 12, 9, 8, 12,
00753 12, 10, 8, 10, 10, 9, 11, 9,
00754 9, 11, 9, 12, 10, 11, 11, 12,
00755 12, 12, 12, 11, 10, 11, 11, 11,
00756 11, 10, 11, 12, 10, 12, 11, 10,
00757 10, 11, 9, 12, 11, 8, 12, 12,
00758 10, 8, 11, 12, 9, 7, 10, 11,
00759 11, 8, 6, 9, 10, 12, 10, 10,
00760 7, 5, 11, 8, 10, 8, 8, 6,
00761 4, 11, 12, 8, 6, 7, 6, 6,
00762 4, 2,
00763 };
00764
00765 static const uint16_t ac_vlc_descA_syms[110] = {
00766 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00767 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00768 0xFE0, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC6,
00769 0xFC5, 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB6, 0xFB5, 0xFB3,
00770 0xFB2, 0xFB1, 0xFB0, 0xFA6, 0xFA5, 0xFA3, 0xFA1, 0xFA0,
00771 0xF96, 0xF93, 0xF91, 0xF90, 0xF83, 0xF81, 0xF80, 0xF73,
00772 0xF71, 0xF70, 0xF61, 0xF60, 0xF51, 0xF50, 0xF41, 0xF40,
00773 0xF31, 0x0E1, 0x0D1, 0x0C1, 0x0C0, 0x0B1, 0x0B0, 0x0A1,
00774 0x0A0, 0x093, 0x091, 0x090, 0x083, 0x081, 0x080, 0x073,
00775 0x071, 0x070, 0x063, 0x061, 0x060, 0x055, 0x053, 0x051,
00776 0x050, 0x045, 0x044, 0x043, 0x042, 0x041, 0x040, 0x036,
00777 0x035, 0x034, 0x033, 0x032, 0x031, 0x030, 0x026, 0x025,
00778 0x024, 0x023, 0x022, 0x021, 0x020, 0x018, 0x017, 0x016,
00779 0x015, 0x014, 0x013, 0x012, 0x011, 0x010,
00780 };
00781
00782 static const uint16_t ac_vlc_descA_codes[110] = {
00783 0x002A, 0x04C5, 0x02A3, 0x004A, 0x0015, 0x0005, 0x0003, 0x0013,
00784 0x000D, 0x0007, 0x0171, 0x0032, 0x0371, 0x0076, 0x0042, 0x0011,
00785 0x000E, 0x00AA, 0x04D5, 0x03A3, 0x06A3, 0x0062, 0x001A, 0x06D5,
00786 0x07F2, 0x0223, 0x0CD5, 0x006A, 0x0001, 0x00F6, 0x0623, 0x03F2,
00787 0x07EA, 0x01F1, 0x0021, 0x03D5, 0x08C2, 0x07F6, 0x00F2, 0x00E3,
00788 0x0FEA, 0x02C5, 0x01AA, 0x0082, 0x04A3, 0x00B6, 0x0071, 0x03B2,
00789 0x0023, 0x01B6, 0x08A3, 0x0002, 0x0BB2, 0x00C5, 0x02EA, 0x0C23,
00790 0x0FF6, 0x0423, 0x07B2, 0x01C5, 0x07D5, 0x01EA, 0x06EA, 0x02C2,
00791 0x01F6, 0x01D5, 0x01B2, 0x00B2, 0x04F1, 0x03EA, 0x01A2, 0x02A2,
00792 0x02D5, 0x0123, 0x00D5, 0x01F2, 0x0055, 0x05B2, 0x04C2, 0x0102,
00793 0x0061, 0x05D5, 0x00C2, 0x00F1, 0x00A3, 0x0045, 0x0016, 0x01A3,
00794 0x01C2, 0x08D5, 0x03C5, 0x00EA, 0x000A, 0x0006, 0x00A2, 0x0036,
00795 0x02F1, 0x0072, 0x0022, 0x0025, 0x0009, 0x03F6, 0x0AA3, 0x0063,
00796 0x0012, 0x0031, 0x0035, 0x0033, 0x000B, 0x0000,
00797 };
00798
00799 static const uint8_t ac_vlc_descA_bits[110] = {
00800 8, 11, 12, 7, 7, 7, 6, 6,
00801 4, 3, 10, 8, 10, 8, 8, 6,
00802 4, 9, 12, 10, 11, 7, 5, 11,
00803 11, 11, 12, 8, 6, 9, 11, 11,
00804 12, 9, 7, 11, 12, 12, 9, 8,
00805 12, 10, 9, 8, 11, 9, 9, 12,
00806 11, 9, 12, 9, 12, 11, 11, 12,
00807 12, 12, 11, 10, 11, 10, 11, 10,
00808 10, 11, 11, 9, 11, 11, 9, 10,
00809 11, 9, 12, 10, 8, 11, 11, 9,
00810 7, 11, 12, 11, 12, 8, 6, 10,
00811 9, 12, 10, 10, 7, 5, 10, 8,
00812 10, 8, 8, 6, 4, 11, 12, 8,
00813 6, 7, 6, 6, 4, 2,
00814 };
00815
00816 static const uint16_t ac_vlc_descB_syms[101] = {
00817 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00818 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00819 0xFE0, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC6,
00820 0xFC5, 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB6, 0xFB5, 0xFB3,
00821 0xFB1, 0xFB0, 0xFA6, 0xFA3, 0xFA1, 0xFA0, 0xF93, 0xF91,
00822 0xF90, 0xF83, 0xF81, 0xF80, 0xF71, 0xF70, 0xF61, 0xF60,
00823 0xF51, 0xF50, 0xF41, 0x0F1, 0x0D1, 0x0C1, 0x0B1, 0x0B0,
00824 0x0A1, 0x0A0, 0x091, 0x090, 0x083, 0x081, 0x080, 0x073,
00825 0x071, 0x070, 0x063, 0x061, 0x060, 0x055, 0x053, 0x051,
00826 0x050, 0x045, 0x043, 0x042, 0x041, 0x040, 0x036, 0x035,
00827 0x034, 0x033, 0x032, 0x031, 0x030, 0x026, 0x025, 0x024,
00828 0x023, 0x022, 0x021, 0x020, 0x018, 0x017, 0x016, 0x015,
00829 0x014, 0x013, 0x012, 0x011, 0x010,
00830 };
00831
00832 static const uint16_t ac_vlc_descB_codes[101] = {
00833 0x00EE, 0x03A5, 0x0B73, 0x004E, 0x0035, 0x0015, 0x0023, 0x0013,
00834 0x000D, 0x0007, 0x0673, 0x01F3, 0x02FE, 0x0096, 0x0133, 0x001E,
00835 0x0001, 0x0116, 0x00F5, 0x03F5, 0x0473, 0x0052, 0x001A, 0x01D5,
00836 0x0025, 0x0073, 0x0633, 0x0086, 0x0036, 0x012E, 0x0155, 0x0006,
00837 0x0055, 0x000E, 0x0106, 0x023E, 0x0192, 0x0075, 0x0173, 0x01AE,
00838 0x00D5, 0x08F5, 0x002E, 0x01FE, 0x0406, 0x00AE, 0x0E3E, 0x0206,
00839 0x013E, 0x0373, 0x0D55, 0x063E, 0x0E33, 0x033E, 0x01F5, 0x0273,
00840 0x003E, 0x06A5, 0x0092, 0x03D5, 0x04F5, 0x053E, 0x0016, 0x00FE,
00841 0x07A5, 0x0125, 0x0506, 0x0292, 0x00BE, 0x0425, 0x0F73, 0x02F5,
00842 0x0056, 0x0233, 0x02A5, 0x0C25, 0x007E, 0x0026, 0x0355, 0x0033,
00843 0x0555, 0x01A5, 0x0306, 0x0046, 0x000A, 0x0225, 0x006E, 0x00A5,
00844 0x0012, 0x00F3, 0x0005, 0x0009, 0x073E, 0x0773, 0x00B3, 0x0032,
00845 0x0065, 0x0003, 0x0002, 0x000B, 0x0000,
00846 };
00847
00848 static const uint8_t ac_vlc_descB_bits[101] = {
00849 8, 11, 12, 7, 7, 7, 6, 6,
00850 4, 3, 11, 9, 10, 8, 9, 6,
00851 4, 9, 12, 10, 11, 7, 5, 10,
00852 11, 11, 12, 8, 6, 9, 11, 11,
00853 9, 7, 11, 11, 9, 8, 10, 9,
00854 9, 12, 9, 9, 11, 9, 12, 10,
00855 11, 12, 12, 12, 12, 11, 10, 11,
00856 10, 11, 10, 10, 11, 11, 9, 10,
00857 11, 9, 11, 10, 8, 12, 12, 10,
00858 7, 11, 11, 12, 8, 6, 10, 10,
00859 12, 10, 10, 7, 5, 10, 8, 10,
00860 8, 9, 6, 4, 11, 12, 8, 6,
00861 7, 6, 5, 4, 2,
00862 };
00863
00864 static const uint16_t ac_vlc_descC_syms[96] = {
00865 0x1000, 0xFF8, 0xFF7, 0xFF6, 0xFF5, 0xFF4, 0xFF3, 0xFF2,
00866 0xFF1, 0xFF0, 0xFE6, 0xFE5, 0xFE4, 0xFE3, 0xFE2, 0xFE1,
00867 0xFE0, 0xFD5, 0xFD4, 0xFD3, 0xFD2, 0xFD1, 0xFD0, 0xFC6,
00868 0xFC5, 0xFC3, 0xFC2, 0xFC1, 0xFC0, 0xFB6, 0xFB5, 0xFB3,
00869 0xFB1, 0xFB0, 0xFA6, 0xFA3, 0xFA1, 0xFA0, 0xF93, 0xF91,
00870 0xF90, 0xF81, 0xF80, 0xF71, 0xF70, 0xF61, 0xF60, 0xF51,
00871 0x0E1, 0x0C1, 0x0B1, 0x0A1, 0x0A0, 0x091, 0x090, 0x083,
00872 0x081, 0x080, 0x073, 0x071, 0x070, 0x063, 0x061, 0x060,
00873 0x055, 0x053, 0x051, 0x050, 0x045, 0x043, 0x042, 0x041,
00874 0x040, 0x036, 0x035, 0x034, 0x033, 0x032, 0x031, 0x030,
00875 0x026, 0x025, 0x024, 0x023, 0x022, 0x021, 0x020, 0x018,
00876 0x017, 0x016, 0x015, 0x014, 0x013, 0x012, 0x011, 0x010,
00877 };
00878
00879 static const uint16_t ac_vlc_descC_codes[96] = {
00880 0x00DE, 0x072E, 0x0576, 0x006E, 0x0075, 0x0055, 0x0013, 0x0033,
00881 0x000D, 0x0007, 0x07D2, 0x0052, 0x0065, 0x00CE, 0x0183, 0x003E,
00882 0x0001, 0x002E, 0x0F35, 0x0003, 0x0243, 0x001A, 0x0006, 0x01A5,
00883 0x0043, 0x0012, 0x0E43, 0x00B6, 0x0016, 0x0135, 0x0176, 0x0643,
00884 0x0035, 0x001E, 0x0735, 0x0283, 0x0125, 0x00AE, 0x00D2, 0x0165,
00885 0x0103, 0x0603, 0x00E5, 0x0C43, 0x02B5, 0x04A5, 0x00A5, 0x0443,
00886 0x0265, 0x0476, 0x0212, 0x0112, 0x0376, 0x012E, 0x02D2, 0x0083,
00887 0x0483, 0x015E, 0x06A5, 0x0335, 0x005E, 0x0025, 0x01D2, 0x00F6,
00888 0x03D2, 0x032E, 0x03B5, 0x005A, 0x0203, 0x02A5, 0x0BD2, 0x004E,
00889 0x0032, 0x01B5, 0x00B5, 0x0A65, 0x0225, 0x0276, 0x000E, 0x000A,
00890 0x03E5, 0x0143, 0x01E5, 0x0036, 0x0092, 0x0005, 0x0009, 0x0665,
00891 0x0076, 0x00C3, 0x003A, 0x0015, 0x0023, 0x0002, 0x000B, 0x0000,
00892 };
00893
00894 static const uint8_t ac_vlc_descC_bits[96] = {
00895 8, 11, 11, 7, 7, 7, 6, 6,
00896 4, 3, 11, 8, 10, 8, 9, 6,
00897 4, 9, 12, 10, 11, 7, 5, 9,
00898 11, 10, 12, 8, 6, 10, 11, 12,
00899 9, 7, 12, 10, 9, 8, 10, 9,
00900 9, 11, 9, 12, 10, 11, 11, 12,
00901 12, 11, 10, 9, 10, 10, 10, 11,
00902 11, 9, 11, 11, 9, 10, 10, 8,
00903 12, 11, 10, 7, 11, 11, 12, 8,
00904 6, 10, 10, 12, 10, 10, 7, 5,
00905 10, 9, 10, 8, 8, 6, 4, 11,
00906 11, 8, 6, 7, 6, 5, 4, 2,
00907 };
00908
00909 static const int tscc2_ac_vlc_sizes[NUM_VLC_SETS] = {
00910 172, 169, 165, 162, 131, 132, 130, 125, 121, 114, 110, 101, 96
00911 };
00912
00913 static const uint16_t *tscc2_ac_vlc_syms[NUM_VLC_SETS] = {
00914 ac_vlc_desc0_syms, ac_vlc_desc1_syms, ac_vlc_desc2_syms, ac_vlc_desc3_syms,
00915 ac_vlc_desc4_syms, ac_vlc_desc5_syms, ac_vlc_desc6_syms, ac_vlc_desc7_syms,
00916 ac_vlc_desc8_syms, ac_vlc_desc9_syms, ac_vlc_descA_syms, ac_vlc_descB_syms,
00917 ac_vlc_descC_syms,
00918 };
00919
00920 static const uint16_t *tscc2_ac_vlc_codes[NUM_VLC_SETS] = {
00921 ac_vlc_desc0_codes, ac_vlc_desc1_codes, ac_vlc_desc2_codes,
00922 ac_vlc_desc3_codes, ac_vlc_desc4_codes, ac_vlc_desc5_codes,
00923 ac_vlc_desc6_codes, ac_vlc_desc7_codes, ac_vlc_desc8_codes,
00924 ac_vlc_desc9_codes, ac_vlc_descA_codes, ac_vlc_descB_codes,
00925 ac_vlc_descC_codes,
00926 };
00927
00928 static const uint8_t *tscc2_ac_vlc_bits[NUM_VLC_SETS] = {
00929 ac_vlc_desc0_bits, ac_vlc_desc1_bits, ac_vlc_desc2_bits, ac_vlc_desc3_bits,
00930 ac_vlc_desc4_bits, ac_vlc_desc5_bits, ac_vlc_desc6_bits, ac_vlc_desc7_bits,
00931 ac_vlc_desc8_bits, ac_vlc_desc9_bits, ac_vlc_descA_bits, ac_vlc_descB_bits,
00932 ac_vlc_descC_bits,
00933 };
00934
00935 #endif