• Main Page
  • Related Pages
  • Modules
  • Data Structures
  • Files
  • File List
  • Globals

libavcodec/aactab.c

Go to the documentation of this file.
00001 /*
00002  * AAC data
00003  * Copyright (c) 2005-2006 Oded Shimon ( ods15 ods15 dyndns org )
00004  * Copyright (c) 2006-2007 Maxim Gavrilov ( maxim.gavrilov gmail com )
00005  *
00006  * This file is part of FFmpeg.
00007  *
00008  * FFmpeg is free software; you can redistribute it and/or
00009  * modify it under the terms of the GNU Lesser General Public
00010  * License as published by the Free Software Foundation; either
00011  * version 2.1 of the License, or (at your option) any later version.
00012  *
00013  * FFmpeg is distributed in the hope that it will be useful,
00014  * but WITHOUT ANY WARRANTY; without even the implied warranty of
00015  * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
00016  * Lesser General Public License for more details.
00017  *
00018  * You should have received a copy of the GNU Lesser General Public
00019  * License along with FFmpeg; if not, write to the Free Software
00020  * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
00021  */
00022 
00030 #include "libavutil/mem.h"
00031 #include "aac.h"
00032 
00033 #include <stdint.h>
00034 
00035 DECLARE_ALIGNED(16, float,  ff_aac_kbd_long_1024[1024]);
00036 DECLARE_ALIGNED(16, float,  ff_aac_kbd_short_128[128]);
00037 
00038 const uint8_t ff_aac_num_swb_1024[] = {
00039     41, 41, 47, 49, 49, 51, 47, 47, 43, 43, 43, 40, 40
00040 };
00041 
00042 const uint8_t ff_aac_num_swb_128[] = {
00043     12, 12, 12, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15
00044 };
00045 
00046 const uint8_t ff_aac_pred_sfb_max[] = {
00047     33, 33, 38, 40, 40, 40, 41, 41, 37, 37, 37, 34, 34
00048 };
00049 
00050 const uint32_t ff_aac_scalefactor_code[121] = {
00051     0x3ffe8, 0x3ffe6, 0x3ffe7, 0x3ffe5, 0x7fff5, 0x7fff1, 0x7ffed, 0x7fff6,
00052     0x7ffee, 0x7ffef, 0x7fff0, 0x7fffc, 0x7fffd, 0x7ffff, 0x7fffe, 0x7fff7,
00053     0x7fff8, 0x7fffb, 0x7fff9, 0x3ffe4, 0x7fffa, 0x3ffe3, 0x1ffef, 0x1fff0,
00054     0x0fff5, 0x1ffee, 0x0fff2, 0x0fff3, 0x0fff4, 0x0fff1, 0x07ff6, 0x07ff7,
00055     0x03ff9, 0x03ff5, 0x03ff7, 0x03ff3, 0x03ff6, 0x03ff2, 0x01ff7, 0x01ff5,
00056     0x00ff9, 0x00ff7, 0x00ff6, 0x007f9, 0x00ff4, 0x007f8, 0x003f9, 0x003f7,
00057     0x003f5, 0x001f8, 0x001f7, 0x000fa, 0x000f8, 0x000f6, 0x00079, 0x0003a,
00058     0x00038, 0x0001a, 0x0000b, 0x00004, 0x00000, 0x0000a, 0x0000c, 0x0001b,
00059     0x00039, 0x0003b, 0x00078, 0x0007a, 0x000f7, 0x000f9, 0x001f6, 0x001f9,
00060     0x003f4, 0x003f6, 0x003f8, 0x007f5, 0x007f4, 0x007f6, 0x007f7, 0x00ff5,
00061     0x00ff8, 0x01ff4, 0x01ff6, 0x01ff8, 0x03ff8, 0x03ff4, 0x0fff0, 0x07ff4,
00062     0x0fff6, 0x07ff5, 0x3ffe2, 0x7ffd9, 0x7ffda, 0x7ffdb, 0x7ffdc, 0x7ffdd,
00063     0x7ffde, 0x7ffd8, 0x7ffd2, 0x7ffd3, 0x7ffd4, 0x7ffd5, 0x7ffd6, 0x7fff2,
00064     0x7ffdf, 0x7ffe7, 0x7ffe8, 0x7ffe9, 0x7ffea, 0x7ffeb, 0x7ffe6, 0x7ffe0,
00065     0x7ffe1, 0x7ffe2, 0x7ffe3, 0x7ffe4, 0x7ffe5, 0x7ffd7, 0x7ffec, 0x7fff4,
00066     0x7fff3,
00067 };
00068 
00069 const uint8_t ff_aac_scalefactor_bits[121] = {
00070     18, 18, 18, 18, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
00071     19, 19, 19, 18, 19, 18, 17, 17, 16, 17, 16, 16, 16, 16, 15, 15,
00072     14, 14, 14, 14, 14, 14, 13, 13, 12, 12, 12, 11, 12, 11, 10, 10,
00073     10,  9,  9,  8,  8,  8,  7,  6,  6,  5,  4,  3,  1,  4,  4,  5,
00074      6,  6,  7,  7,  8,  8,  9,  9, 10, 10, 10, 11, 11, 11, 11, 12,
00075     12, 13, 13, 13, 14, 14, 16, 15, 16, 15, 18, 19, 19, 19, 19, 19,
00076     19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19, 19,
00077     19, 19, 19, 19, 19, 19, 19, 19, 19,
00078 };
00079 
00080 static const uint16_t codes1[81] = {
00081     0x7f8, 0x1f1, 0x7fd, 0x3f5, 0x068, 0x3f0, 0x7f7, 0x1ec,
00082     0x7f5, 0x3f1, 0x072, 0x3f4, 0x074, 0x011, 0x076, 0x1eb,
00083     0x06c, 0x3f6, 0x7fc, 0x1e1, 0x7f1, 0x1f0, 0x061, 0x1f6,
00084     0x7f2, 0x1ea, 0x7fb, 0x1f2, 0x069, 0x1ed, 0x077, 0x017,
00085     0x06f, 0x1e6, 0x064, 0x1e5, 0x067, 0x015, 0x062, 0x012,
00086     0x000, 0x014, 0x065, 0x016, 0x06d, 0x1e9, 0x063, 0x1e4,
00087     0x06b, 0x013, 0x071, 0x1e3, 0x070, 0x1f3, 0x7fe, 0x1e7,
00088     0x7f3, 0x1ef, 0x060, 0x1ee, 0x7f0, 0x1e2, 0x7fa, 0x3f3,
00089     0x06a, 0x1e8, 0x075, 0x010, 0x073, 0x1f4, 0x06e, 0x3f7,
00090     0x7f6, 0x1e0, 0x7f9, 0x3f2, 0x066, 0x1f5, 0x7ff, 0x1f7,
00091     0x7f4,
00092 };
00093 
00094 static const uint8_t bits1[81] = {
00095     11,  9, 11, 10,  7, 10, 11,  9, 11, 10,  7, 10,  7,  5,  7,  9,
00096      7, 10, 11,  9, 11,  9,  7,  9, 11,  9, 11,  9,  7,  9,  7,  5,
00097      7,  9,  7,  9,  7,  5,  7,  5,  1,  5,  7,  5,  7,  9,  7,  9,
00098      7,  5,  7,  9,  7,  9, 11,  9, 11,  9,  7,  9, 11,  9, 11, 10,
00099      7,  9,  7,  5,  7,  9,  7, 10, 11,  9, 11, 10,  7,  9, 11,  9,
00100     11,
00101 };
00102 
00103 static const uint16_t codes2[81] = {
00104     0x1f3, 0x06f, 0x1fd, 0x0eb, 0x023, 0x0ea, 0x1f7, 0x0e8,
00105     0x1fa, 0x0f2, 0x02d, 0x070, 0x020, 0x006, 0x02b, 0x06e,
00106     0x028, 0x0e9, 0x1f9, 0x066, 0x0f8, 0x0e7, 0x01b, 0x0f1,
00107     0x1f4, 0x06b, 0x1f5, 0x0ec, 0x02a, 0x06c, 0x02c, 0x00a,
00108     0x027, 0x067, 0x01a, 0x0f5, 0x024, 0x008, 0x01f, 0x009,
00109     0x000, 0x007, 0x01d, 0x00b, 0x030, 0x0ef, 0x01c, 0x064,
00110     0x01e, 0x00c, 0x029, 0x0f3, 0x02f, 0x0f0, 0x1fc, 0x071,
00111     0x1f2, 0x0f4, 0x021, 0x0e6, 0x0f7, 0x068, 0x1f8, 0x0ee,
00112     0x022, 0x065, 0x031, 0x002, 0x026, 0x0ed, 0x025, 0x06a,
00113     0x1fb, 0x072, 0x1fe, 0x069, 0x02e, 0x0f6, 0x1ff, 0x06d,
00114     0x1f6,
00115 };
00116 
00117 static const uint8_t bits2[81] = {
00118     9, 7, 9, 8, 6, 8, 9, 8, 9, 8, 6, 7, 6, 5, 6, 7,
00119     6, 8, 9, 7, 8, 8, 6, 8, 9, 7, 9, 8, 6, 7, 6, 5,
00120     6, 7, 6, 8, 6, 5, 6, 5, 3, 5, 6, 5, 6, 8, 6, 7,
00121     6, 5, 6, 8, 6, 8, 9, 7, 9, 8, 6, 8, 8, 7, 9, 8,
00122     6, 7, 6, 4, 6, 8, 6, 7, 9, 7, 9, 7, 6, 8, 9, 7,
00123     9,
00124 };
00125 
00126 static const uint16_t codes3[81] = {
00127     0x0000, 0x0009, 0x00ef, 0x000b, 0x0019, 0x00f0, 0x01eb, 0x01e6,
00128     0x03f2, 0x000a, 0x0035, 0x01ef, 0x0034, 0x0037, 0x01e9, 0x01ed,
00129     0x01e7, 0x03f3, 0x01ee, 0x03ed, 0x1ffa, 0x01ec, 0x01f2, 0x07f9,
00130     0x07f8, 0x03f8, 0x0ff8, 0x0008, 0x0038, 0x03f6, 0x0036, 0x0075,
00131     0x03f1, 0x03eb, 0x03ec, 0x0ff4, 0x0018, 0x0076, 0x07f4, 0x0039,
00132     0x0074, 0x03ef, 0x01f3, 0x01f4, 0x07f6, 0x01e8, 0x03ea, 0x1ffc,
00133     0x00f2, 0x01f1, 0x0ffb, 0x03f5, 0x07f3, 0x0ffc, 0x00ee, 0x03f7,
00134     0x7ffe, 0x01f0, 0x07f5, 0x7ffd, 0x1ffb, 0x3ffa, 0xffff, 0x00f1,
00135     0x03f0, 0x3ffc, 0x01ea, 0x03ee, 0x3ffb, 0x0ff6, 0x0ffa, 0x7ffc,
00136     0x07f2, 0x0ff5, 0xfffe, 0x03f4, 0x07f7, 0x7ffb, 0x0ff7, 0x0ff9,
00137     0x7ffa,
00138 };
00139 
00140 static const uint8_t bits3[81] = {
00141      1,  4,  8,  4,  5,  8,  9,  9, 10,  4,  6,  9,  6,  6,  9,  9,
00142      9, 10,  9, 10, 13,  9,  9, 11, 11, 10, 12,  4,  6, 10,  6,  7,
00143     10, 10, 10, 12,  5,  7, 11,  6,  7, 10,  9,  9, 11,  9, 10, 13,
00144      8,  9, 12, 10, 11, 12,  8, 10, 15,  9, 11, 15, 13, 14, 16,  8,
00145     10, 14,  9, 10, 14, 12, 12, 15, 11, 12, 16, 10, 11, 15, 12, 12,
00146     15,
00147 };
00148 
00149 static const uint16_t codes4[81] = {
00150     0x007, 0x016, 0x0f6, 0x018, 0x008, 0x0ef, 0x1ef, 0x0f3,
00151     0x7f8, 0x019, 0x017, 0x0ed, 0x015, 0x001, 0x0e2, 0x0f0,
00152     0x070, 0x3f0, 0x1ee, 0x0f1, 0x7fa, 0x0ee, 0x0e4, 0x3f2,
00153     0x7f6, 0x3ef, 0x7fd, 0x005, 0x014, 0x0f2, 0x009, 0x004,
00154     0x0e5, 0x0f4, 0x0e8, 0x3f4, 0x006, 0x002, 0x0e7, 0x003,
00155     0x000, 0x06b, 0x0e3, 0x069, 0x1f3, 0x0eb, 0x0e6, 0x3f6,
00156     0x06e, 0x06a, 0x1f4, 0x3ec, 0x1f0, 0x3f9, 0x0f5, 0x0ec,
00157     0x7fb, 0x0ea, 0x06f, 0x3f7, 0x7f9, 0x3f3, 0xfff, 0x0e9,
00158     0x06d, 0x3f8, 0x06c, 0x068, 0x1f5, 0x3ee, 0x1f2, 0x7f4,
00159     0x7f7, 0x3f1, 0xffe, 0x3ed, 0x1f1, 0x7f5, 0x7fe, 0x3f5,
00160     0x7fc,
00161 };
00162 
00163 static const uint8_t bits4[81] = {
00164      4,  5,  8,  5,  4,  8,  9,  8, 11,  5,  5,  8,  5,  4,  8,  8,
00165      7, 10,  9,  8, 11,  8,  8, 10, 11, 10, 11,  4,  5,  8,  4,  4,
00166      8,  8,  8, 10,  4,  4,  8,  4,  4,  7,  8,  7,  9,  8,  8, 10,
00167      7,  7,  9, 10,  9, 10,  8,  8, 11,  8,  7, 10, 11, 10, 12,  8,
00168      7, 10,  7,  7,  9, 10,  9, 11, 11, 10, 12, 10,  9, 11, 11, 10,
00169     11,
00170 };
00171 
00172 static const uint16_t codes5[81] = {
00173     0x1fff, 0x0ff7, 0x07f4, 0x07e8, 0x03f1, 0x07ee, 0x07f9, 0x0ff8,
00174     0x1ffd, 0x0ffd, 0x07f1, 0x03e8, 0x01e8, 0x00f0, 0x01ec, 0x03ee,
00175     0x07f2, 0x0ffa, 0x0ff4, 0x03ef, 0x01f2, 0x00e8, 0x0070, 0x00ec,
00176     0x01f0, 0x03ea, 0x07f3, 0x07eb, 0x01eb, 0x00ea, 0x001a, 0x0008,
00177     0x0019, 0x00ee, 0x01ef, 0x07ed, 0x03f0, 0x00f2, 0x0073, 0x000b,
00178     0x0000, 0x000a, 0x0071, 0x00f3, 0x07e9, 0x07ef, 0x01ee, 0x00ef,
00179     0x0018, 0x0009, 0x001b, 0x00eb, 0x01e9, 0x07ec, 0x07f6, 0x03eb,
00180     0x01f3, 0x00ed, 0x0072, 0x00e9, 0x01f1, 0x03ed, 0x07f7, 0x0ff6,
00181     0x07f0, 0x03e9, 0x01ed, 0x00f1, 0x01ea, 0x03ec, 0x07f8, 0x0ff9,
00182     0x1ffc, 0x0ffc, 0x0ff5, 0x07ea, 0x03f3, 0x03f2, 0x07f5, 0x0ffb,
00183     0x1ffe,
00184 };
00185 
00186 static const uint8_t bits5[81] = {
00187     13, 12, 11, 11, 10, 11, 11, 12, 13, 12, 11, 10,  9,  8,  9, 10,
00188     11, 12, 12, 10,  9,  8,  7,  8,  9, 10, 11, 11,  9,  8,  5,  4,
00189      5,  8,  9, 11, 10,  8,  7,  4,  1,  4,  7,  8, 11, 11,  9,  8,
00190      5,  4,  5,  8,  9, 11, 11, 10,  9,  8,  7,  8,  9, 10, 11, 12,
00191     11, 10,  9,  8,  9, 10, 11, 12, 13, 12, 12, 11, 10, 10, 11, 12,
00192     13,
00193 };
00194 
00195 static const uint16_t codes6[81] = {
00196     0x7fe, 0x3fd, 0x1f1, 0x1eb, 0x1f4, 0x1ea, 0x1f0, 0x3fc,
00197     0x7fd, 0x3f6, 0x1e5, 0x0ea, 0x06c, 0x071, 0x068, 0x0f0,
00198     0x1e6, 0x3f7, 0x1f3, 0x0ef, 0x032, 0x027, 0x028, 0x026,
00199     0x031, 0x0eb, 0x1f7, 0x1e8, 0x06f, 0x02e, 0x008, 0x004,
00200     0x006, 0x029, 0x06b, 0x1ee, 0x1ef, 0x072, 0x02d, 0x002,
00201     0x000, 0x003, 0x02f, 0x073, 0x1fa, 0x1e7, 0x06e, 0x02b,
00202     0x007, 0x001, 0x005, 0x02c, 0x06d, 0x1ec, 0x1f9, 0x0ee,
00203     0x030, 0x024, 0x02a, 0x025, 0x033, 0x0ec, 0x1f2, 0x3f8,
00204     0x1e4, 0x0ed, 0x06a, 0x070, 0x069, 0x074, 0x0f1, 0x3fa,
00205     0x7ff, 0x3f9, 0x1f6, 0x1ed, 0x1f8, 0x1e9, 0x1f5, 0x3fb,
00206     0x7fc,
00207 };
00208 
00209 static const uint8_t bits6[81] = {
00210     11, 10,  9,  9,  9,  9,  9, 10, 11, 10,  9,  8,  7,  7,  7,  8,
00211      9, 10,  9,  8,  6,  6,  6,  6,  6,  8,  9,  9,  7,  6,  4,  4,
00212      4,  6,  7,  9,  9,  7,  6,  4,  4,  4,  6,  7,  9,  9,  7,  6,
00213      4,  4,  4,  6,  7,  9,  9,  8,  6,  6,  6,  6,  6,  8,  9, 10,
00214      9,  8,  7,  7,  7,  7,  8, 10, 11, 10,  9,  9,  9,  9,  9, 10,
00215     11,
00216 };
00217 
00218 static const uint16_t codes7[64] = {
00219     0x000, 0x005, 0x037, 0x074, 0x0f2, 0x1eb, 0x3ed, 0x7f7,
00220     0x004, 0x00c, 0x035, 0x071, 0x0ec, 0x0ee, 0x1ee, 0x1f5,
00221     0x036, 0x034, 0x072, 0x0ea, 0x0f1, 0x1e9, 0x1f3, 0x3f5,
00222     0x073, 0x070, 0x0eb, 0x0f0, 0x1f1, 0x1f0, 0x3ec, 0x3fa,
00223     0x0f3, 0x0ed, 0x1e8, 0x1ef, 0x3ef, 0x3f1, 0x3f9, 0x7fb,
00224     0x1ed, 0x0ef, 0x1ea, 0x1f2, 0x3f3, 0x3f8, 0x7f9, 0x7fc,
00225     0x3ee, 0x1ec, 0x1f4, 0x3f4, 0x3f7, 0x7f8, 0xffd, 0xffe,
00226     0x7f6, 0x3f0, 0x3f2, 0x3f6, 0x7fa, 0x7fd, 0xffc, 0xfff,
00227 };
00228 
00229 static const uint8_t bits7[64] = {
00230      1,  3,  6,  7,  8,  9, 10, 11,  3,  4,  6,  7,  8,  8,  9,  9,
00231      6,  6,  7,  8,  8,  9,  9, 10,  7,  7,  8,  8,  9,  9, 10, 10,
00232      8,  8,  9,  9, 10, 10, 10, 11,  9,  8,  9,  9, 10, 10, 11, 11,
00233     10,  9,  9, 10, 10, 11, 12, 12, 11, 10, 10, 10, 11, 11, 12, 12,
00234 };
00235 
00236 static const uint16_t codes8[64] = {
00237     0x00e, 0x005, 0x010, 0x030, 0x06f, 0x0f1, 0x1fa, 0x3fe,
00238     0x003, 0x000, 0x004, 0x012, 0x02c, 0x06a, 0x075, 0x0f8,
00239     0x00f, 0x002, 0x006, 0x014, 0x02e, 0x069, 0x072, 0x0f5,
00240     0x02f, 0x011, 0x013, 0x02a, 0x032, 0x06c, 0x0ec, 0x0fa,
00241     0x071, 0x02b, 0x02d, 0x031, 0x06d, 0x070, 0x0f2, 0x1f9,
00242     0x0ef, 0x068, 0x033, 0x06b, 0x06e, 0x0ee, 0x0f9, 0x3fc,
00243     0x1f8, 0x074, 0x073, 0x0ed, 0x0f0, 0x0f6, 0x1f6, 0x1fd,
00244     0x3fd, 0x0f3, 0x0f4, 0x0f7, 0x1f7, 0x1fb, 0x1fc, 0x3ff,
00245 };
00246 
00247 static const uint8_t bits8[64] = {
00248      5,  4,  5,  6,  7,  8,  9, 10,  4,  3,  4,  5,  6,  7,  7,  8,
00249      5,  4,  4,  5,  6,  7,  7,  8,  6,  5,  5,  6,  6,  7,  8,  8,
00250      7,  6,  6,  6,  7,  7,  8,  9,  8,  7,  6,  7,  7,  8,  8, 10,
00251      9,  7,  7,  8,  8,  8,  9,  9, 10,  8,  8,  8,  9,  9,  9, 10,
00252 };
00253 
00254 static const uint16_t codes9[169] = {
00255     0x0000, 0x0005, 0x0037, 0x00e7, 0x01de, 0x03ce, 0x03d9, 0x07c8,
00256     0x07cd, 0x0fc8, 0x0fdd, 0x1fe4, 0x1fec, 0x0004, 0x000c, 0x0035,
00257     0x0072, 0x00ea, 0x00ed, 0x01e2, 0x03d1, 0x03d3, 0x03e0, 0x07d8,
00258     0x0fcf, 0x0fd5, 0x0036, 0x0034, 0x0071, 0x00e8, 0x00ec, 0x01e1,
00259     0x03cf, 0x03dd, 0x03db, 0x07d0, 0x0fc7, 0x0fd4, 0x0fe4, 0x00e6,
00260     0x0070, 0x00e9, 0x01dd, 0x01e3, 0x03d2, 0x03dc, 0x07cc, 0x07ca,
00261     0x07de, 0x0fd8, 0x0fea, 0x1fdb, 0x01df, 0x00eb, 0x01dc, 0x01e6,
00262     0x03d5, 0x03de, 0x07cb, 0x07dd, 0x07dc, 0x0fcd, 0x0fe2, 0x0fe7,
00263     0x1fe1, 0x03d0, 0x01e0, 0x01e4, 0x03d6, 0x07c5, 0x07d1, 0x07db,
00264     0x0fd2, 0x07e0, 0x0fd9, 0x0feb, 0x1fe3, 0x1fe9, 0x07c4, 0x01e5,
00265     0x03d7, 0x07c6, 0x07cf, 0x07da, 0x0fcb, 0x0fda, 0x0fe3, 0x0fe9,
00266     0x1fe6, 0x1ff3, 0x1ff7, 0x07d3, 0x03d8, 0x03e1, 0x07d4, 0x07d9,
00267     0x0fd3, 0x0fde, 0x1fdd, 0x1fd9, 0x1fe2, 0x1fea, 0x1ff1, 0x1ff6,
00268     0x07d2, 0x03d4, 0x03da, 0x07c7, 0x07d7, 0x07e2, 0x0fce, 0x0fdb,
00269     0x1fd8, 0x1fee, 0x3ff0, 0x1ff4, 0x3ff2, 0x07e1, 0x03df, 0x07c9,
00270     0x07d6, 0x0fca, 0x0fd0, 0x0fe5, 0x0fe6, 0x1feb, 0x1fef, 0x3ff3,
00271     0x3ff4, 0x3ff5, 0x0fe0, 0x07ce, 0x07d5, 0x0fc6, 0x0fd1, 0x0fe1,
00272     0x1fe0, 0x1fe8, 0x1ff0, 0x3ff1, 0x3ff8, 0x3ff6, 0x7ffc, 0x0fe8,
00273     0x07df, 0x0fc9, 0x0fd7, 0x0fdc, 0x1fdc, 0x1fdf, 0x1fed, 0x1ff5,
00274     0x3ff9, 0x3ffb, 0x7ffd, 0x7ffe, 0x1fe7, 0x0fcc, 0x0fd6, 0x0fdf,
00275     0x1fde, 0x1fda, 0x1fe5, 0x1ff2, 0x3ffa, 0x3ff7, 0x3ffc, 0x3ffd,
00276     0x7fff,
00277 };
00278 
00279 static const uint8_t bits9[169] = {
00280      1,  3,  6,  8,  9, 10, 10, 11, 11, 12, 12, 13, 13,  3,  4,  6,
00281      7,  8,  8,  9, 10, 10, 10, 11, 12, 12,  6,  6,  7,  8,  8,  9,
00282     10, 10, 10, 11, 12, 12, 12,  8,  7,  8,  9,  9, 10, 10, 11, 11,
00283     11, 12, 12, 13,  9,  8,  9,  9, 10, 10, 11, 11, 11, 12, 12, 12,
00284     13, 10,  9,  9, 10, 11, 11, 11, 12, 11, 12, 12, 13, 13, 11,  9,
00285     10, 11, 11, 11, 12, 12, 12, 12, 13, 13, 13, 11, 10, 10, 11, 11,
00286     12, 12, 13, 13, 13, 13, 13, 13, 11, 10, 10, 11, 11, 11, 12, 12,
00287     13, 13, 14, 13, 14, 11, 10, 11, 11, 12, 12, 12, 12, 13, 13, 14,
00288     14, 14, 12, 11, 11, 12, 12, 12, 13, 13, 13, 14, 14, 14, 15, 12,
00289     11, 12, 12, 12, 13, 13, 13, 13, 14, 14, 15, 15, 13, 12, 12, 12,
00290     13, 13, 13, 13, 14, 14, 14, 14, 15,
00291 };
00292 
00293 static const uint16_t codes10[169] = {
00294     0x022, 0x008, 0x01d, 0x026, 0x05f, 0x0d3, 0x1cf, 0x3d0,
00295     0x3d7, 0x3ed, 0x7f0, 0x7f6, 0xffd, 0x007, 0x000, 0x001,
00296     0x009, 0x020, 0x054, 0x060, 0x0d5, 0x0dc, 0x1d4, 0x3cd,
00297     0x3de, 0x7e7, 0x01c, 0x002, 0x006, 0x00c, 0x01e, 0x028,
00298     0x05b, 0x0cd, 0x0d9, 0x1ce, 0x1dc, 0x3d9, 0x3f1, 0x025,
00299     0x00b, 0x00a, 0x00d, 0x024, 0x057, 0x061, 0x0cc, 0x0dd,
00300     0x1cc, 0x1de, 0x3d3, 0x3e7, 0x05d, 0x021, 0x01f, 0x023,
00301     0x027, 0x059, 0x064, 0x0d8, 0x0df, 0x1d2, 0x1e2, 0x3dd,
00302     0x3ee, 0x0d1, 0x055, 0x029, 0x056, 0x058, 0x062, 0x0ce,
00303     0x0e0, 0x0e2, 0x1da, 0x3d4, 0x3e3, 0x7eb, 0x1c9, 0x05e,
00304     0x05a, 0x05c, 0x063, 0x0ca, 0x0da, 0x1c7, 0x1ca, 0x1e0,
00305     0x3db, 0x3e8, 0x7ec, 0x1e3, 0x0d2, 0x0cb, 0x0d0, 0x0d7,
00306     0x0db, 0x1c6, 0x1d5, 0x1d8, 0x3ca, 0x3da, 0x7ea, 0x7f1,
00307     0x1e1, 0x0d4, 0x0cf, 0x0d6, 0x0de, 0x0e1, 0x1d0, 0x1d6,
00308     0x3d1, 0x3d5, 0x3f2, 0x7ee, 0x7fb, 0x3e9, 0x1cd, 0x1c8,
00309     0x1cb, 0x1d1, 0x1d7, 0x1df, 0x3cf, 0x3e0, 0x3ef, 0x7e6,
00310     0x7f8, 0xffa, 0x3eb, 0x1dd, 0x1d3, 0x1d9, 0x1db, 0x3d2,
00311     0x3cc, 0x3dc, 0x3ea, 0x7ed, 0x7f3, 0x7f9, 0xff9, 0x7f2,
00312     0x3ce, 0x1e4, 0x3cb, 0x3d8, 0x3d6, 0x3e2, 0x3e5, 0x7e8,
00313     0x7f4, 0x7f5, 0x7f7, 0xffb, 0x7fa, 0x3ec, 0x3df, 0x3e1,
00314     0x3e4, 0x3e6, 0x3f0, 0x7e9, 0x7ef, 0xff8, 0xffe, 0xffc,
00315     0xfff,
00316 };
00317 
00318 static const uint8_t bits10[169] = {
00319      6,  5,  6,  6,  7,  8,  9, 10, 10, 10, 11, 11, 12,  5,  4,  4,
00320      5,  6,  7,  7,  8,  8,  9, 10, 10, 11,  6,  4,  5,  5,  6,  6,
00321      7,  8,  8,  9,  9, 10, 10,  6,  5,  5,  5,  6,  7,  7,  8,  8,
00322      9,  9, 10, 10,  7,  6,  6,  6,  6,  7,  7,  8,  8,  9,  9, 10,
00323     10,  8,  7,  6,  7,  7,  7,  8,  8,  8,  9, 10, 10, 11,  9,  7,
00324      7,  7,  7,  8,  8,  9,  9,  9, 10, 10, 11,  9,  8,  8,  8,  8,
00325      8,  9,  9,  9, 10, 10, 11, 11,  9,  8,  8,  8,  8,  8,  9,  9,
00326     10, 10, 10, 11, 11, 10,  9,  9,  9,  9,  9,  9, 10, 10, 10, 11,
00327     11, 12, 10,  9,  9,  9,  9, 10, 10, 10, 10, 11, 11, 11, 12, 11,
00328     10,  9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 12, 11, 10, 10, 10,
00329     10, 10, 10, 11, 11, 12, 12, 12, 12,
00330 };
00331 
00332 static const uint16_t codes11[289] = {
00333     0x000, 0x006, 0x019, 0x03d, 0x09c, 0x0c6, 0x1a7, 0x390,
00334     0x3c2, 0x3df, 0x7e6, 0x7f3, 0xffb, 0x7ec, 0xffa, 0xffe,
00335     0x38e, 0x005, 0x001, 0x008, 0x014, 0x037, 0x042, 0x092,
00336     0x0af, 0x191, 0x1a5, 0x1b5, 0x39e, 0x3c0, 0x3a2, 0x3cd,
00337     0x7d6, 0x0ae, 0x017, 0x007, 0x009, 0x018, 0x039, 0x040,
00338     0x08e, 0x0a3, 0x0b8, 0x199, 0x1ac, 0x1c1, 0x3b1, 0x396,
00339     0x3be, 0x3ca, 0x09d, 0x03c, 0x015, 0x016, 0x01a, 0x03b,
00340     0x044, 0x091, 0x0a5, 0x0be, 0x196, 0x1ae, 0x1b9, 0x3a1,
00341     0x391, 0x3a5, 0x3d5, 0x094, 0x09a, 0x036, 0x038, 0x03a,
00342     0x041, 0x08c, 0x09b, 0x0b0, 0x0c3, 0x19e, 0x1ab, 0x1bc,
00343     0x39f, 0x38f, 0x3a9, 0x3cf, 0x093, 0x0bf, 0x03e, 0x03f,
00344     0x043, 0x045, 0x09e, 0x0a7, 0x0b9, 0x194, 0x1a2, 0x1ba,
00345     0x1c3, 0x3a6, 0x3a7, 0x3bb, 0x3d4, 0x09f, 0x1a0, 0x08f,
00346     0x08d, 0x090, 0x098, 0x0a6, 0x0b6, 0x0c4, 0x19f, 0x1af,
00347     0x1bf, 0x399, 0x3bf, 0x3b4, 0x3c9, 0x3e7, 0x0a8, 0x1b6,
00348     0x0ab, 0x0a4, 0x0aa, 0x0b2, 0x0c2, 0x0c5, 0x198, 0x1a4,
00349     0x1b8, 0x38c, 0x3a4, 0x3c4, 0x3c6, 0x3dd, 0x3e8, 0x0ad,
00350     0x3af, 0x192, 0x0bd, 0x0bc, 0x18e, 0x197, 0x19a, 0x1a3,
00351     0x1b1, 0x38d, 0x398, 0x3b7, 0x3d3, 0x3d1, 0x3db, 0x7dd,
00352     0x0b4, 0x3de, 0x1a9, 0x19b, 0x19c, 0x1a1, 0x1aa, 0x1ad,
00353     0x1b3, 0x38b, 0x3b2, 0x3b8, 0x3ce, 0x3e1, 0x3e0, 0x7d2,
00354     0x7e5, 0x0b7, 0x7e3, 0x1bb, 0x1a8, 0x1a6, 0x1b0, 0x1b2,
00355     0x1b7, 0x39b, 0x39a, 0x3ba, 0x3b5, 0x3d6, 0x7d7, 0x3e4,
00356     0x7d8, 0x7ea, 0x0ba, 0x7e8, 0x3a0, 0x1bd, 0x1b4, 0x38a,
00357     0x1c4, 0x392, 0x3aa, 0x3b0, 0x3bc, 0x3d7, 0x7d4, 0x7dc,
00358     0x7db, 0x7d5, 0x7f0, 0x0c1, 0x7fb, 0x3c8, 0x3a3, 0x395,
00359     0x39d, 0x3ac, 0x3ae, 0x3c5, 0x3d8, 0x3e2, 0x3e6, 0x7e4,
00360     0x7e7, 0x7e0, 0x7e9, 0x7f7, 0x190, 0x7f2, 0x393, 0x1be,
00361     0x1c0, 0x394, 0x397, 0x3ad, 0x3c3, 0x3c1, 0x3d2, 0x7da,
00362     0x7d9, 0x7df, 0x7eb, 0x7f4, 0x7fa, 0x195, 0x7f8, 0x3bd,
00363     0x39c, 0x3ab, 0x3a8, 0x3b3, 0x3b9, 0x3d0, 0x3e3, 0x3e5,
00364     0x7e2, 0x7de, 0x7ed, 0x7f1, 0x7f9, 0x7fc, 0x193, 0xffd,
00365     0x3dc, 0x3b6, 0x3c7, 0x3cc, 0x3cb, 0x3d9, 0x3da, 0x7d3,
00366     0x7e1, 0x7ee, 0x7ef, 0x7f5, 0x7f6, 0xffc, 0xfff, 0x19d,
00367     0x1c2, 0x0b5, 0x0a1, 0x096, 0x097, 0x095, 0x099, 0x0a0,
00368     0x0a2, 0x0ac, 0x0a9, 0x0b1, 0x0b3, 0x0bb, 0x0c0, 0x18f,
00369     0x004,
00370 };
00371 
00372 static const uint8_t bits11[289] = {
00373      4,  5,  6,  7,  8,  8,  9, 10, 10, 10, 11, 11, 12, 11, 12, 12,
00374     10,  5,  4,  5,  6,  7,  7,  8,  8,  9,  9,  9, 10, 10, 10, 10,
00375     11,  8,  6,  5,  5,  6,  7,  7,  8,  8,  8,  9,  9,  9, 10, 10,
00376     10, 10,  8,  7,  6,  6,  6,  7,  7,  8,  8,  8,  9,  9,  9, 10,
00377     10, 10, 10,  8,  8,  7,  7,  7,  7,  8,  8,  8,  8,  9,  9,  9,
00378     10, 10, 10, 10,  8,  8,  7,  7,  7,  7,  8,  8,  8,  9,  9,  9,
00379      9, 10, 10, 10, 10,  8,  9,  8,  8,  8,  8,  8,  8,  8,  9,  9,
00380      9, 10, 10, 10, 10, 10,  8,  9,  8,  8,  8,  8,  8,  8,  9,  9,
00381      9, 10, 10, 10, 10, 10, 10,  8, 10,  9,  8,  8,  9,  9,  9,  9,
00382      9, 10, 10, 10, 10, 10, 10, 11,  8, 10,  9,  9,  9,  9,  9,  9,
00383      9, 10, 10, 10, 10, 10, 10, 11, 11,  8, 11,  9,  9,  9,  9,  9,
00384      9, 10, 10, 10, 10, 10, 11, 10, 11, 11,  8, 11, 10,  9,  9, 10,
00385      9, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11,  8, 11, 10, 10, 10,
00386     10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11,  9, 11, 10,  9,
00387      9, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11,  9, 11, 10,
00388     10, 10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11,  9, 12,
00389     10, 10, 10, 10, 10, 10, 10, 11, 11, 11, 11, 11, 11, 12, 12,  9,
00390      9,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  8,  9,
00391      5,
00392 };
00393 
00394 const uint16_t * const ff_aac_spectral_codes[11] = {
00395     codes1,  codes2,  codes3, codes4, codes5, codes6, codes7, codes8,
00396     codes9, codes10, codes11,
00397 };
00398 
00399 const uint8_t * const ff_aac_spectral_bits[11] = {
00400     bits1,  bits2,  bits3, bits4, bits5, bits6, bits7, bits8,
00401     bits9, bits10, bits11,
00402 };
00403 
00404 const uint16_t ff_aac_spectral_sizes[11] = {
00405     81, 81, 81, 81, 81, 81, 64, 64, 169, 169, 289,
00406 };
00407 
00408 /* NOTE:
00409  * 64.0f is a special value indicating the existence of an escape code in the
00410  * bitstream.
00411  */
00412 static const float codebook_vector0[324] = {
00413  -1.0000000, -1.0000000, -1.0000000, -1.0000000,
00414  -1.0000000, -1.0000000, -1.0000000,  0.0000000,
00415  -1.0000000, -1.0000000, -1.0000000,  1.0000000,
00416  -1.0000000, -1.0000000,  0.0000000, -1.0000000,
00417  -1.0000000, -1.0000000,  0.0000000,  0.0000000,
00418  -1.0000000, -1.0000000,  0.0000000,  1.0000000,
00419  -1.0000000, -1.0000000,  1.0000000, -1.0000000,
00420  -1.0000000, -1.0000000,  1.0000000,  0.0000000,
00421  -1.0000000, -1.0000000,  1.0000000,  1.0000000,
00422  -1.0000000,  0.0000000, -1.0000000, -1.0000000,
00423  -1.0000000,  0.0000000, -1.0000000,  0.0000000,
00424  -1.0000000,  0.0000000, -1.0000000,  1.0000000,
00425  -1.0000000,  0.0000000,  0.0000000, -1.0000000,
00426  -1.0000000,  0.0000000,  0.0000000,  0.0000000,
00427  -1.0000000,  0.0000000,  0.0000000,  1.0000000,
00428  -1.0000000,  0.0000000,  1.0000000, -1.0000000,
00429  -1.0000000,  0.0000000,  1.0000000,  0.0000000,
00430  -1.0000000,  0.0000000,  1.0000000,  1.0000000,
00431  -1.0000000,  1.0000000, -1.0000000, -1.0000000,
00432  -1.0000000,  1.0000000, -1.0000000,  0.0000000,
00433  -1.0000000,  1.0000000, -1.0000000,  1.0000000,
00434  -1.0000000,  1.0000000,  0.0000000, -1.0000000,
00435  -1.0000000,  1.0000000,  0.0000000,  0.0000000,
00436  -1.0000000,  1.0000000,  0.0000000,  1.0000000,
00437  -1.0000000,  1.0000000,  1.0000000, -1.0000000,
00438  -1.0000000,  1.0000000,  1.0000000,  0.0000000,
00439  -1.0000000,  1.0000000,  1.0000000,  1.0000000,
00440   0.0000000, -1.0000000, -1.0000000, -1.0000000,
00441   0.0000000, -1.0000000, -1.0000000,  0.0000000,
00442   0.0000000, -1.0000000, -1.0000000,  1.0000000,
00443   0.0000000, -1.0000000,  0.0000000, -1.0000000,
00444   0.0000000, -1.0000000,  0.0000000,  0.0000000,
00445   0.0000000, -1.0000000,  0.0000000,  1.0000000,
00446   0.0000000, -1.0000000,  1.0000000, -1.0000000,
00447   0.0000000, -1.0000000,  1.0000000,  0.0000000,
00448   0.0000000, -1.0000000,  1.0000000,  1.0000000,
00449   0.0000000,  0.0000000, -1.0000000, -1.0000000,
00450   0.0000000,  0.0000000, -1.0000000,  0.0000000,
00451   0.0000000,  0.0000000, -1.0000000,  1.0000000,
00452   0.0000000,  0.0000000,  0.0000000, -1.0000000,
00453   0.0000000,  0.0000000,  0.0000000,  0.0000000,
00454   0.0000000,  0.0000000,  0.0000000,  1.0000000,
00455   0.0000000,  0.0000000,  1.0000000, -1.0000000,
00456   0.0000000,  0.0000000,  1.0000000,  0.0000000,
00457   0.0000000,  0.0000000,  1.0000000,  1.0000000,
00458   0.0000000,  1.0000000, -1.0000000, -1.0000000,
00459   0.0000000,  1.0000000, -1.0000000,  0.0000000,
00460   0.0000000,  1.0000000, -1.0000000,  1.0000000,
00461   0.0000000,  1.0000000,  0.0000000, -1.0000000,
00462   0.0000000,  1.0000000,  0.0000000,  0.0000000,
00463   0.0000000,  1.0000000,  0.0000000,  1.0000000,
00464   0.0000000,  1.0000000,  1.0000000, -1.0000000,
00465   0.0000000,  1.0000000,  1.0000000,  0.0000000,
00466   0.0000000,  1.0000000,  1.0000000,  1.0000000,
00467   1.0000000, -1.0000000, -1.0000000, -1.0000000,
00468   1.0000000, -1.0000000, -1.0000000,  0.0000000,
00469   1.0000000, -1.0000000, -1.0000000,  1.0000000,
00470   1.0000000, -1.0000000,  0.0000000, -1.0000000,
00471   1.0000000, -1.0000000,  0.0000000,  0.0000000,
00472   1.0000000, -1.0000000,  0.0000000,  1.0000000,
00473   1.0000000, -1.0000000,  1.0000000, -1.0000000,
00474   1.0000000, -1.0000000,  1.0000000,  0.0000000,
00475   1.0000000, -1.0000000,  1.0000000,  1.0000000,
00476   1.0000000,  0.0000000, -1.0000000, -1.0000000,
00477   1.0000000,  0.0000000, -1.0000000,  0.0000000,
00478   1.0000000,  0.0000000, -1.0000000,  1.0000000,
00479   1.0000000,  0.0000000,  0.0000000, -1.0000000,
00480   1.0000000,  0.0000000,  0.0000000,  0.0000000,
00481   1.0000000,  0.0000000,  0.0000000,  1.0000000,
00482   1.0000000,  0.0000000,  1.0000000, -1.0000000,
00483   1.0000000,  0.0000000,  1.0000000,  0.0000000,
00484   1.0000000,  0.0000000,  1.0000000,  1.0000000,
00485   1.0000000,  1.0000000, -1.0000000, -1.0000000,
00486   1.0000000,  1.0000000, -1.0000000,  0.0000000,
00487   1.0000000,  1.0000000, -1.0000000,  1.0000000,
00488   1.0000000,  1.0000000,  0.0000000, -1.0000000,
00489   1.0000000,  1.0000000,  0.0000000,  0.0000000,
00490   1.0000000,  1.0000000,  0.0000000,  1.0000000,
00491   1.0000000,  1.0000000,  1.0000000, -1.0000000,
00492   1.0000000,  1.0000000,  1.0000000,  0.0000000,
00493   1.0000000,  1.0000000,  1.0000000,  1.0000000,
00494 };
00495 
00496 static const float codebook_vector2[324] = {
00497   0.0000000,  0.0000000,  0.0000000,  0.0000000,
00498   0.0000000,  0.0000000,  0.0000000,  1.0000000,
00499   0.0000000,  0.0000000,  0.0000000,  2.5198421,
00500   0.0000000,  0.0000000,  1.0000000,  0.0000000,
00501   0.0000000,  0.0000000,  1.0000000,  1.0000000,
00502   0.0000000,  0.0000000,  1.0000000,  2.5198421,
00503   0.0000000,  0.0000000,  2.5198421,  0.0000000,
00504   0.0000000,  0.0000000,  2.5198421,  1.0000000,
00505   0.0000000,  0.0000000,  2.5198421,  2.5198421,
00506   0.0000000,  1.0000000,  0.0000000,  0.0000000,
00507   0.0000000,  1.0000000,  0.0000000,  1.0000000,
00508   0.0000000,  1.0000000,  0.0000000,  2.5198421,
00509   0.0000000,  1.0000000,  1.0000000,  0.0000000,
00510   0.0000000,  1.0000000,  1.0000000,  1.0000000,
00511   0.0000000,  1.0000000,  1.0000000,  2.5198421,
00512   0.0000000,  1.0000000,  2.5198421,  0.0000000,
00513   0.0000000,  1.0000000,  2.5198421,  1.0000000,
00514   0.0000000,  1.0000000,  2.5198421,  2.5198421,
00515   0.0000000,  2.5198421,  0.0000000,  0.0000000,
00516   0.0000000,  2.5198421,  0.0000000,  1.0000000,
00517   0.0000000,  2.5198421,  0.0000000,  2.5198421,
00518   0.0000000,  2.5198421,  1.0000000,  0.0000000,
00519   0.0000000,  2.5198421,  1.0000000,  1.0000000,
00520   0.0000000,  2.5198421,  1.0000000,  2.5198421,
00521   0.0000000,  2.5198421,  2.5198421,  0.0000000,
00522   0.0000000,  2.5198421,  2.5198421,  1.0000000,
00523   0.0000000,  2.5198421,  2.5198421,  2.5198421,
00524   1.0000000,  0.0000000,  0.0000000,  0.0000000,
00525   1.0000000,  0.0000000,  0.0000000,  1.0000000,
00526   1.0000000,  0.0000000,  0.0000000,  2.5198421,
00527   1.0000000,  0.0000000,  1.0000000,  0.0000000,
00528   1.0000000,  0.0000000,  1.0000000,  1.0000000,
00529   1.0000000,  0.0000000,  1.0000000,  2.5198421,
00530   1.0000000,  0.0000000,  2.5198421,  0.0000000,
00531   1.0000000,  0.0000000,  2.5198421,  1.0000000,
00532   1.0000000,  0.0000000,  2.5198421,  2.5198421,
00533   1.0000000,  1.0000000,  0.0000000,  0.0000000,
00534   1.0000000,  1.0000000,  0.0000000,  1.0000000,
00535   1.0000000,  1.0000000,  0.0000000,  2.5198421,
00536   1.0000000,  1.0000000,  1.0000000,  0.0000000,
00537   1.0000000,  1.0000000,  1.0000000,  1.0000000,
00538   1.0000000,  1.0000000,  1.0000000,  2.5198421,
00539   1.0000000,  1.0000000,  2.5198421,  0.0000000,
00540   1.0000000,  1.0000000,  2.5198421,  1.0000000,
00541   1.0000000,  1.0000000,  2.5198421,  2.5198421,
00542   1.0000000,  2.5198421,  0.0000000,  0.0000000,
00543   1.0000000,  2.5198421,  0.0000000,  1.0000000,
00544   1.0000000,  2.5198421,  0.0000000,  2.5198421,
00545   1.0000000,  2.5198421,  1.0000000,  0.0000000,
00546   1.0000000,  2.5198421,  1.0000000,  1.0000000,
00547   1.0000000,  2.5198421,  1.0000000,  2.5198421,
00548   1.0000000,  2.5198421,  2.5198421,  0.0000000,
00549   1.0000000,  2.5198421,  2.5198421,  1.0000000,
00550   1.0000000,  2.5198421,  2.5198421,  2.5198421,
00551   2.5198421,  0.0000000,  0.0000000,  0.0000000,
00552   2.5198421,  0.0000000,  0.0000000,  1.0000000,
00553   2.5198421,  0.0000000,  0.0000000,  2.5198421,
00554   2.5198421,  0.0000000,  1.0000000,  0.0000000,
00555   2.5198421,  0.0000000,  1.0000000,  1.0000000,
00556   2.5198421,  0.0000000,  1.0000000,  2.5198421,
00557   2.5198421,  0.0000000,  2.5198421,  0.0000000,
00558   2.5198421,  0.0000000,  2.5198421,  1.0000000,
00559   2.5198421,  0.0000000,  2.5198421,  2.5198421,
00560   2.5198421,  1.0000000,  0.0000000,  0.0000000,
00561   2.5198421,  1.0000000,  0.0000000,  1.0000000,
00562   2.5198421,  1.0000000,  0.0000000,  2.5198421,
00563   2.5198421,  1.0000000,  1.0000000,  0.0000000,
00564   2.5198421,  1.0000000,  1.0000000,  1.0000000,
00565   2.5198421,  1.0000000,  1.0000000,  2.5198421,
00566   2.5198421,  1.0000000,  2.5198421,  0.0000000,
00567   2.5198421,  1.0000000,  2.5198421,  1.0000000,
00568   2.5198421,  1.0000000,  2.5198421,  2.5198421,
00569   2.5198421,  2.5198421,  0.0000000,  0.0000000,
00570   2.5198421,  2.5198421,  0.0000000,  1.0000000,
00571   2.5198421,  2.5198421,  0.0000000,  2.5198421,
00572   2.5198421,  2.5198421,  1.0000000,  0.0000000,
00573   2.5198421,  2.5198421,  1.0000000,  1.0000000,
00574   2.5198421,  2.5198421,  1.0000000,  2.5198421,
00575   2.5198421,  2.5198421,  2.5198421,  0.0000000,
00576   2.5198421,  2.5198421,  2.5198421,  1.0000000,
00577   2.5198421,  2.5198421,  2.5198421,  2.5198421,
00578 };
00579 
00580 static const float codebook_vector4[162] = {
00581  -6.3496042, -6.3496042, -6.3496042, -4.3267487,
00582  -6.3496042, -2.5198421, -6.3496042, -1.0000000,
00583  -6.3496042,  0.0000000, -6.3496042,  1.0000000,
00584  -6.3496042,  2.5198421, -6.3496042,  4.3267487,
00585  -6.3496042,  6.3496042, -4.3267487, -6.3496042,
00586  -4.3267487, -4.3267487, -4.3267487, -2.5198421,
00587  -4.3267487, -1.0000000, -4.3267487,  0.0000000,
00588  -4.3267487,  1.0000000, -4.3267487,  2.5198421,
00589  -4.3267487,  4.3267487, -4.3267487,  6.3496042,
00590  -2.5198421, -6.3496042, -2.5198421, -4.3267487,
00591  -2.5198421, -2.5198421, -2.5198421, -1.0000000,
00592  -2.5198421,  0.0000000, -2.5198421,  1.0000000,
00593  -2.5198421,  2.5198421, -2.5198421,  4.3267487,
00594  -2.5198421,  6.3496042, -1.0000000, -6.3496042,
00595  -1.0000000, -4.3267487, -1.0000000, -2.5198421,
00596  -1.0000000, -1.0000000, -1.0000000,  0.0000000,
00597  -1.0000000,  1.0000000, -1.0000000,  2.5198421,
00598  -1.0000000,  4.3267487, -1.0000000,  6.3496042,
00599   0.0000000, -6.3496042,  0.0000000, -4.3267487,
00600   0.0000000, -2.5198421,  0.0000000, -1.0000000,
00601   0.0000000,  0.0000000,  0.0000000,  1.0000000,
00602   0.0000000,  2.5198421,  0.0000000,  4.3267487,
00603   0.0000000,  6.3496042,  1.0000000, -6.3496042,
00604   1.0000000, -4.3267487,  1.0000000, -2.5198421,
00605   1.0000000, -1.0000000,  1.0000000,  0.0000000,
00606   1.0000000,  1.0000000,  1.0000000,  2.5198421,
00607   1.0000000,  4.3267487,  1.0000000,  6.3496042,
00608   2.5198421, -6.3496042,  2.5198421, -4.3267487,
00609   2.5198421, -2.5198421,  2.5198421, -1.0000000,
00610   2.5198421,  0.0000000,  2.5198421,  1.0000000,
00611   2.5198421,  2.5198421,  2.5198421,  4.3267487,
00612   2.5198421,  6.3496042,  4.3267487, -6.3496042,
00613   4.3267487, -4.3267487,  4.3267487, -2.5198421,
00614   4.3267487, -1.0000000,  4.3267487,  0.0000000,
00615   4.3267487,  1.0000000,  4.3267487,  2.5198421,
00616   4.3267487,  4.3267487,  4.3267487,  6.3496042,
00617   6.3496042, -6.3496042,  6.3496042, -4.3267487,
00618   6.3496042, -2.5198421,  6.3496042, -1.0000000,
00619   6.3496042,  0.0000000,  6.3496042,  1.0000000,
00620   6.3496042,  2.5198421,  6.3496042,  4.3267487,
00621   6.3496042,  6.3496042,
00622 };
00623 
00624 static const float codebook_vector6[128] = {
00625   0.0000000,  0.0000000,  0.0000000,  1.0000000,
00626   0.0000000,  2.5198421,  0.0000000,  4.3267487,
00627   0.0000000,  6.3496042,  0.0000000,  8.5498797,
00628   0.0000000, 10.9027236,  0.0000000, 13.3905183,
00629   1.0000000,  0.0000000,  1.0000000,  1.0000000,
00630   1.0000000,  2.5198421,  1.0000000,  4.3267487,
00631   1.0000000,  6.3496042,  1.0000000,  8.5498797,
00632   1.0000000, 10.9027236,  1.0000000, 13.3905183,
00633   2.5198421,  0.0000000,  2.5198421,  1.0000000,
00634   2.5198421,  2.5198421,  2.5198421,  4.3267487,
00635   2.5198421,  6.3496042,  2.5198421,  8.5498797,
00636   2.5198421, 10.9027236,  2.5198421, 13.3905183,
00637   4.3267487,  0.0000000,  4.3267487,  1.0000000,
00638   4.3267487,  2.5198421,  4.3267487,  4.3267487,
00639   4.3267487,  6.3496042,  4.3267487,  8.5498797,
00640   4.3267487, 10.9027236,  4.3267487, 13.3905183,
00641   6.3496042,  0.0000000,  6.3496042,  1.0000000,
00642   6.3496042,  2.5198421,  6.3496042,  4.3267487,
00643   6.3496042,  6.3496042,  6.3496042,  8.5498797,
00644   6.3496042, 10.9027236,  6.3496042, 13.3905183,
00645   8.5498797,  0.0000000,  8.5498797,  1.0000000,
00646   8.5498797,  2.5198421,  8.5498797,  4.3267487,
00647   8.5498797,  6.3496042,  8.5498797,  8.5498797,
00648   8.5498797, 10.9027236,  8.5498797, 13.3905183,
00649  10.9027236,  0.0000000, 10.9027236,  1.0000000,
00650  10.9027236,  2.5198421, 10.9027236,  4.3267487,
00651  10.9027236,  6.3496042, 10.9027236,  8.5498797,
00652  10.9027236, 10.9027236, 10.9027236, 13.3905183,
00653  13.3905183,  0.0000000, 13.3905183,  1.0000000,
00654  13.3905183,  2.5198421, 13.3905183,  4.3267487,
00655  13.3905183,  6.3496042, 13.3905183,  8.5498797,
00656  13.3905183, 10.9027236, 13.3905183, 13.3905183,
00657 };
00658 
00659 static const float codebook_vector8[338] = {
00660   0.0000000,  0.0000000,  0.0000000,  1.0000000,
00661   0.0000000,  2.5198421,  0.0000000,  4.3267487,
00662   0.0000000,  6.3496042,  0.0000000,  8.5498797,
00663   0.0000000, 10.9027236,  0.0000000, 13.3905183,
00664   0.0000000, 16.0000000,  0.0000000, 18.7207544,
00665   0.0000000, 21.5443469,  0.0000000, 24.4637810,
00666   0.0000000, 27.4731418,  1.0000000,  0.0000000,
00667   1.0000000,  1.0000000,  1.0000000,  2.5198421,
00668   1.0000000,  4.3267487,  1.0000000,  6.3496042,
00669   1.0000000,  8.5498797,  1.0000000, 10.9027236,
00670   1.0000000, 13.3905183,  1.0000000, 16.0000000,
00671   1.0000000, 18.7207544,  1.0000000, 21.5443469,
00672   1.0000000, 24.4637810,  1.0000000, 27.4731418,
00673   2.5198421,  0.0000000,  2.5198421,  1.0000000,
00674   2.5198421,  2.5198421,  2.5198421,  4.3267487,
00675   2.5198421,  6.3496042,  2.5198421,  8.5498797,
00676   2.5198421, 10.9027236,  2.5198421, 13.3905183,
00677   2.5198421, 16.0000000,  2.5198421, 18.7207544,
00678   2.5198421, 21.5443469,  2.5198421, 24.4637810,
00679   2.5198421, 27.4731418,  4.3267487,  0.0000000,
00680   4.3267487,  1.0000000,  4.3267487,  2.5198421,
00681   4.3267487,  4.3267487,  4.3267487,  6.3496042,
00682   4.3267487,  8.5498797,  4.3267487, 10.9027236,
00683   4.3267487, 13.3905183,  4.3267487, 16.0000000,
00684   4.3267487, 18.7207544,  4.3267487, 21.5443469,
00685   4.3267487, 24.4637810,  4.3267487, 27.4731418,
00686   6.3496042,  0.0000000,  6.3496042,  1.0000000,
00687   6.3496042,  2.5198421,  6.3496042,  4.3267487,
00688   6.3496042,  6.3496042,  6.3496042,  8.5498797,
00689   6.3496042, 10.9027236,  6.3496042, 13.3905183,
00690   6.3496042, 16.0000000,  6.3496042, 18.7207544,
00691   6.3496042, 21.5443469,  6.3496042, 24.4637810,
00692   6.3496042, 27.4731418,  8.5498797,  0.0000000,
00693   8.5498797,  1.0000000,  8.5498797,  2.5198421,
00694   8.5498797,  4.3267487,  8.5498797,  6.3496042,
00695   8.5498797,  8.5498797,  8.5498797, 10.9027236,
00696   8.5498797, 13.3905183,  8.5498797, 16.0000000,
00697   8.5498797, 18.7207544,  8.5498797, 21.5443469,
00698   8.5498797, 24.4637810,  8.5498797, 27.4731418,
00699  10.9027236,  0.0000000, 10.9027236,  1.0000000,
00700  10.9027236,  2.5198421, 10.9027236,  4.3267487,
00701  10.9027236,  6.3496042, 10.9027236,  8.5498797,
00702  10.9027236, 10.9027236, 10.9027236, 13.3905183,
00703  10.9027236, 16.0000000, 10.9027236, 18.7207544,
00704  10.9027236, 21.5443469, 10.9027236, 24.4637810,
00705  10.9027236, 27.4731418, 13.3905183,  0.0000000,
00706  13.3905183,  1.0000000, 13.3905183,  2.5198421,
00707  13.3905183,  4.3267487, 13.3905183,  6.3496042,
00708  13.3905183,  8.5498797, 13.3905183, 10.9027236,
00709  13.3905183, 13.3905183, 13.3905183, 16.0000000,
00710  13.3905183, 18.7207544, 13.3905183, 21.5443469,
00711  13.3905183, 24.4637810, 13.3905183, 27.4731418,
00712  16.0000000,  0.0000000, 16.0000000,  1.0000000,
00713  16.0000000,  2.5198421, 16.0000000,  4.3267487,
00714  16.0000000,  6.3496042, 16.0000000,  8.5498797,
00715  16.0000000, 10.9027236, 16.0000000, 13.3905183,
00716  16.0000000, 16.0000000, 16.0000000, 18.7207544,
00717  16.0000000, 21.5443469, 16.0000000, 24.4637810,
00718  16.0000000, 27.4731418, 18.7207544,  0.0000000,
00719  18.7207544,  1.0000000, 18.7207544,  2.5198421,
00720  18.7207544,  4.3267487, 18.7207544,  6.3496042,
00721  18.7207544,  8.5498797, 18.7207544, 10.9027236,
00722  18.7207544, 13.3905183, 18.7207544, 16.0000000,
00723  18.7207544, 18.7207544, 18.7207544, 21.5443469,
00724  18.7207544, 24.4637810, 18.7207544, 27.4731418,
00725  21.5443469,  0.0000000, 21.5443469,  1.0000000,
00726  21.5443469,  2.5198421, 21.5443469,  4.3267487,
00727  21.5443469,  6.3496042, 21.5443469,  8.5498797,
00728  21.5443469, 10.9027236, 21.5443469, 13.3905183,
00729  21.5443469, 16.0000000, 21.5443469, 18.7207544,
00730  21.5443469, 21.5443469, 21.5443469, 24.4637810,
00731  21.5443469, 27.4731418, 24.4637810,  0.0000000,
00732  24.4637810,  1.0000000, 24.4637810,  2.5198421,
00733  24.4637810,  4.3267487, 24.4637810,  6.3496042,
00734  24.4637810,  8.5498797, 24.4637810, 10.9027236,
00735  24.4637810, 13.3905183, 24.4637810, 16.0000000,
00736  24.4637810, 18.7207544, 24.4637810, 21.5443469,
00737  24.4637810, 24.4637810, 24.4637810, 27.4731418,
00738  27.4731418,  0.0000000, 27.4731418,  1.0000000,
00739  27.4731418,  2.5198421, 27.4731418,  4.3267487,
00740  27.4731418,  6.3496042, 27.4731418,  8.5498797,
00741  27.4731418, 10.9027236, 27.4731418, 13.3905183,
00742  27.4731418, 16.0000000, 27.4731418, 18.7207544,
00743  27.4731418, 21.5443469, 27.4731418, 24.4637810,
00744  27.4731418, 27.4731418,
00745 };
00746 
00747 static const float codebook_vector10[578] = {
00748   0.0000000,  0.0000000,  0.0000000,  1.0000000,
00749   0.0000000,  2.5198421,  0.0000000,  4.3267487,
00750   0.0000000,  6.3496042,  0.0000000,  8.5498797,
00751   0.0000000, 10.9027236,  0.0000000, 13.3905183,
00752   0.0000000, 16.0000000,  0.0000000, 18.7207544,
00753   0.0000000, 21.5443469,  0.0000000, 24.4637810,
00754   0.0000000, 27.4731418,  0.0000000, 30.5673509,
00755   0.0000000, 33.7419917,  0.0000000, 36.9931811,
00756   0.0000000,      64.0f,  1.0000000,  0.0000000,
00757   1.0000000,  1.0000000,  1.0000000,  2.5198421,
00758   1.0000000,  4.3267487,  1.0000000,  6.3496042,
00759   1.0000000,  8.5498797,  1.0000000, 10.9027236,
00760   1.0000000, 13.3905183,  1.0000000, 16.0000000,
00761   1.0000000, 18.7207544,  1.0000000, 21.5443469,
00762   1.0000000, 24.4637810,  1.0000000, 27.4731418,
00763   1.0000000, 30.5673509,  1.0000000, 33.7419917,
00764   1.0000000, 36.9931811,  1.0000000,      64.0f,
00765   2.5198421,  0.0000000,  2.5198421,  1.0000000,
00766   2.5198421,  2.5198421,  2.5198421,  4.3267487,
00767   2.5198421,  6.3496042,  2.5198421,  8.5498797,
00768   2.5198421, 10.9027236,  2.5198421, 13.3905183,
00769   2.5198421, 16.0000000,  2.5198421, 18.7207544,
00770   2.5198421, 21.5443469,  2.5198421, 24.4637810,
00771   2.5198421, 27.4731418,  2.5198421, 30.5673509,
00772   2.5198421, 33.7419917,  2.5198421, 36.9931811,
00773   2.5198421,      64.0f,  4.3267487,  0.0000000,
00774   4.3267487,  1.0000000,  4.3267487,  2.5198421,
00775   4.3267487,  4.3267487,  4.3267487,  6.3496042,
00776   4.3267487,  8.5498797,  4.3267487, 10.9027236,
00777   4.3267487, 13.3905183,  4.3267487, 16.0000000,
00778   4.3267487, 18.7207544,  4.3267487, 21.5443469,
00779   4.3267487, 24.4637810,  4.3267487, 27.4731418,
00780   4.3267487, 30.5673509,  4.3267487, 33.7419917,
00781   4.3267487, 36.9931811,  4.3267487,      64.0f,
00782   6.3496042,  0.0000000,  6.3496042,  1.0000000,
00783   6.3496042,  2.5198421,  6.3496042,  4.3267487,
00784   6.3496042,  6.3496042,  6.3496042,  8.5498797,
00785   6.3496042, 10.9027236,  6.3496042, 13.3905183,
00786   6.3496042, 16.0000000,  6.3496042, 18.7207544,
00787   6.3496042, 21.5443469,  6.3496042, 24.4637810,
00788   6.3496042, 27.4731418,  6.3496042, 30.5673509,
00789   6.3496042, 33.7419917,  6.3496042, 36.9931811,
00790   6.3496042,      64.0f,  8.5498797,  0.0000000,
00791   8.5498797,  1.0000000,  8.5498797,  2.5198421,
00792   8.5498797,  4.3267487,  8.5498797,  6.3496042,
00793   8.5498797,  8.5498797,  8.5498797, 10.9027236,
00794   8.5498797, 13.3905183,  8.5498797, 16.0000000,
00795   8.5498797, 18.7207544,  8.5498797, 21.5443469,
00796   8.5498797, 24.4637810,  8.5498797, 27.4731418,
00797   8.5498797, 30.5673509,  8.5498797, 33.7419917,
00798   8.5498797, 36.9931811,  8.5498797,      64.0f,
00799  10.9027236,  0.0000000, 10.9027236,  1.0000000,
00800  10.9027236,  2.5198421, 10.9027236,  4.3267487,
00801  10.9027236,  6.3496042, 10.9027236,  8.5498797,
00802  10.9027236, 10.9027236, 10.9027236, 13.3905183,
00803  10.9027236, 16.0000000, 10.9027236, 18.7207544,
00804  10.9027236, 21.5443469, 10.9027236, 24.4637810,
00805  10.9027236, 27.4731418, 10.9027236, 30.5673509,
00806  10.9027236, 33.7419917, 10.9027236, 36.9931811,
00807  10.9027236,      64.0f, 13.3905183,  0.0000000,
00808  13.3905183,  1.0000000, 13.3905183,  2.5198421,
00809  13.3905183,  4.3267487, 13.3905183,  6.3496042,
00810  13.3905183,  8.5498797, 13.3905183, 10.9027236,
00811  13.3905183, 13.3905183, 13.3905183, 16.0000000,
00812  13.3905183, 18.7207544, 13.3905183, 21.5443469,
00813  13.3905183, 24.4637810, 13.3905183, 27.4731418,
00814  13.3905183, 30.5673509, 13.3905183, 33.7419917,
00815  13.3905183, 36.9931811, 13.3905183,      64.0f,
00816  16.0000000,  0.0000000, 16.0000000,  1.0000000,
00817  16.0000000,  2.5198421, 16.0000000,  4.3267487,
00818  16.0000000,  6.3496042, 16.0000000,  8.5498797,
00819  16.0000000, 10.9027236, 16.0000000, 13.3905183,
00820  16.0000000, 16.0000000, 16.0000000, 18.7207544,
00821  16.0000000, 21.5443469, 16.0000000, 24.4637810,
00822  16.0000000, 27.4731418, 16.0000000, 30.5673509,
00823  16.0000000, 33.7419917, 16.0000000, 36.9931811,
00824  16.0000000,      64.0f, 18.7207544,  0.0000000,
00825  18.7207544,  1.0000000, 18.7207544,  2.5198421,
00826  18.7207544,  4.3267487, 18.7207544,  6.3496042,
00827  18.7207544,  8.5498797, 18.7207544, 10.9027236,
00828  18.7207544, 13.3905183, 18.7207544, 16.0000000,
00829  18.7207544, 18.7207544, 18.7207544, 21.5443469,
00830  18.7207544, 24.4637810, 18.7207544, 27.4731418,
00831  18.7207544, 30.5673509, 18.7207544, 33.7419917,
00832  18.7207544, 36.9931811, 18.7207544,      64.0f,
00833  21.5443469,  0.0000000, 21.5443469,  1.0000000,
00834  21.5443469,  2.5198421, 21.5443469,  4.3267487,
00835  21.5443469,  6.3496042, 21.5443469,  8.5498797,
00836  21.5443469, 10.9027236, 21.5443469, 13.3905183,
00837  21.5443469, 16.0000000, 21.5443469, 18.7207544,
00838  21.5443469, 21.5443469, 21.5443469, 24.4637810,
00839  21.5443469, 27.4731418, 21.5443469, 30.5673509,
00840  21.5443469, 33.7419917, 21.5443469, 36.9931811,
00841  21.5443469,      64.0f, 24.4637810,  0.0000000,
00842  24.4637810,  1.0000000, 24.4637810,  2.5198421,
00843  24.4637810,  4.3267487, 24.4637810,  6.3496042,
00844  24.4637810,  8.5498797, 24.4637810, 10.9027236,
00845  24.4637810, 13.3905183, 24.4637810, 16.0000000,
00846  24.4637810, 18.7207544, 24.4637810, 21.5443469,
00847  24.4637810, 24.4637810, 24.4637810, 27.4731418,
00848  24.4637810, 30.5673509, 24.4637810, 33.7419917,
00849  24.4637810, 36.9931811, 24.4637810,      64.0f,
00850  27.4731418,  0.0000000, 27.4731418,  1.0000000,
00851  27.4731418,  2.5198421, 27.4731418,  4.3267487,
00852  27.4731418,  6.3496042, 27.4731418,  8.5498797,
00853  27.4731418, 10.9027236, 27.4731418, 13.3905183,
00854  27.4731418, 16.0000000, 27.4731418, 18.7207544,
00855  27.4731418, 21.5443469, 27.4731418, 24.4637810,
00856  27.4731418, 27.4731418, 27.4731418, 30.5673509,
00857  27.4731418, 33.7419917, 27.4731418, 36.9931811,
00858  27.4731418,      64.0f, 30.5673509,  0.0000000,
00859  30.5673509,  1.0000000, 30.5673509,  2.5198421,
00860  30.5673509,  4.3267487, 30.5673509,  6.3496042,
00861  30.5673509,  8.5498797, 30.5673509, 10.9027236,
00862  30.5673509, 13.3905183, 30.5673509, 16.0000000,
00863  30.5673509, 18.7207544, 30.5673509, 21.5443469,
00864  30.5673509, 24.4637810, 30.5673509, 27.4731418,
00865  30.5673509, 30.5673509, 30.5673509, 33.7419917,
00866  30.5673509, 36.9931811, 30.5673509,      64.0f,
00867  33.7419917,  0.0000000, 33.7419917,  1.0000000,
00868  33.7419917,  2.5198421, 33.7419917,  4.3267487,
00869  33.7419917,  6.3496042, 33.7419917,  8.5498797,
00870  33.7419917, 10.9027236, 33.7419917, 13.3905183,
00871  33.7419917, 16.0000000, 33.7419917, 18.7207544,
00872  33.7419917, 21.5443469, 33.7419917, 24.4637810,
00873  33.7419917, 27.4731418, 33.7419917, 30.5673509,
00874  33.7419917, 33.7419917, 33.7419917, 36.9931811,
00875  33.7419917,      64.0f, 36.9931811,  0.0000000,
00876  36.9931811,  1.0000000, 36.9931811,  2.5198421,
00877  36.9931811,  4.3267487, 36.9931811,  6.3496042,
00878  36.9931811,  8.5498797, 36.9931811, 10.9027236,
00879  36.9931811, 13.3905183, 36.9931811, 16.0000000,
00880  36.9931811, 18.7207544, 36.9931811, 21.5443469,
00881  36.9931811, 24.4637810, 36.9931811, 27.4731418,
00882  36.9931811, 30.5673509, 36.9931811, 33.7419917,
00883  36.9931811, 36.9931811, 36.9931811,      64.0f,
00884       64.0f,  0.0000000,      64.0f,  1.0000000,
00885       64.0f,  2.5198421,      64.0f,  4.3267487,
00886       64.0f,  6.3496042,      64.0f,  8.5498797,
00887       64.0f, 10.9027236,      64.0f, 13.3905183,
00888       64.0f, 16.0000000,      64.0f, 18.7207544,
00889       64.0f, 21.5443469,      64.0f, 24.4637810,
00890       64.0f, 27.4731418,      64.0f, 30.5673509,
00891       64.0f, 33.7419917,      64.0f, 36.9931811,
00892       64.0f,      64.0f,
00893 };
00894 
00895 const float * const ff_aac_codebook_vectors[] = {
00896     codebook_vector0, codebook_vector0, codebook_vector2,
00897     codebook_vector2, codebook_vector4, codebook_vector4,
00898     codebook_vector6, codebook_vector6, codebook_vector8,
00899     codebook_vector8, codebook_vector10,
00900 };
00901 
00902 #if CONFIG_HARDCODED_TABLES
00903 
00911 const float ff_aac_pow2sf_tab[428] = {
00912     8.88178420e-16, 1.05622810e-15, 1.25607397e-15, 1.49373210e-15,
00913     1.77635684e-15, 2.11245619e-15, 2.51214793e-15, 2.98746420e-15,
00914     3.55271368e-15, 4.22491238e-15, 5.02429587e-15, 5.97492839e-15,
00915     7.10542736e-15, 8.44982477e-15, 1.00485917e-14, 1.19498568e-14,
00916     1.42108547e-14, 1.68996495e-14, 2.00971835e-14, 2.38997136e-14,
00917     2.84217094e-14, 3.37992991e-14, 4.01943669e-14, 4.77994272e-14,
00918     5.68434189e-14, 6.75985982e-14, 8.03887339e-14, 9.55988543e-14,
00919     1.13686838e-13, 1.35197196e-13, 1.60777468e-13, 1.91197709e-13,
00920     2.27373675e-13, 2.70394393e-13, 3.21554936e-13, 3.82395417e-13,
00921     4.54747351e-13, 5.40788785e-13, 6.43109871e-13, 7.64790834e-13,
00922     9.09494702e-13, 1.08157757e-12, 1.28621974e-12, 1.52958167e-12,
00923     1.81898940e-12, 2.16315514e-12, 2.57243948e-12, 3.05916334e-12,
00924     3.63797881e-12, 4.32631028e-12, 5.14487897e-12, 6.11832668e-12,
00925     7.27595761e-12, 8.65262056e-12, 1.02897579e-11, 1.22366534e-11,
00926     1.45519152e-11, 1.73052411e-11, 2.05795159e-11, 2.44733067e-11,
00927     2.91038305e-11, 3.46104823e-11, 4.11590317e-11, 4.89466134e-11,
00928     5.82076609e-11, 6.92209645e-11, 8.23180635e-11, 9.78932268e-11,
00929     1.16415322e-10, 1.38441929e-10, 1.64636127e-10, 1.95786454e-10,
00930     2.32830644e-10, 2.76883858e-10, 3.29272254e-10, 3.91572907e-10,
00931     4.65661287e-10, 5.53767716e-10, 6.58544508e-10, 7.83145814e-10,
00932     9.31322575e-10, 1.10753543e-09, 1.31708902e-09, 1.56629163e-09,
00933     1.86264515e-09, 2.21507086e-09, 2.63417803e-09, 3.13258326e-09,
00934     3.72529030e-09, 4.43014173e-09, 5.26835606e-09, 6.26516652e-09,
00935     7.45058060e-09, 8.86028346e-09, 1.05367121e-08, 1.25303330e-08,
00936     1.49011612e-08, 1.77205669e-08, 2.10734243e-08, 2.50606661e-08,
00937     2.98023224e-08, 3.54411338e-08, 4.21468485e-08, 5.01213321e-08,
00938     5.96046448e-08, 7.08822677e-08, 8.42936970e-08, 1.00242664e-07,
00939     1.19209290e-07, 1.41764535e-07, 1.68587394e-07, 2.00485328e-07,
00940     2.38418579e-07, 2.83529071e-07, 3.37174788e-07, 4.00970657e-07,
00941     4.76837158e-07, 5.67058141e-07, 6.74349576e-07, 8.01941314e-07,
00942     9.53674316e-07, 1.13411628e-06, 1.34869915e-06, 1.60388263e-06,
00943     1.90734863e-06, 2.26823256e-06, 2.69739830e-06, 3.20776526e-06,
00944     3.81469727e-06, 4.53646513e-06, 5.39479661e-06, 6.41553051e-06,
00945     7.62939453e-06, 9.07293026e-06, 1.07895932e-05, 1.28310610e-05,
00946     1.52587891e-05, 1.81458605e-05, 2.15791864e-05, 2.56621220e-05,
00947     3.05175781e-05, 3.62917210e-05, 4.31583729e-05, 5.13242441e-05,
00948     6.10351562e-05, 7.25834421e-05, 8.63167458e-05, 1.02648488e-04,
00949     1.22070312e-04, 1.45166884e-04, 1.72633492e-04, 2.05296976e-04,
00950     2.44140625e-04, 2.90333768e-04, 3.45266983e-04, 4.10593953e-04,
00951     4.88281250e-04, 5.80667537e-04, 6.90533966e-04, 8.21187906e-04,
00952     9.76562500e-04, 1.16133507e-03, 1.38106793e-03, 1.64237581e-03,
00953     1.95312500e-03, 2.32267015e-03, 2.76213586e-03, 3.28475162e-03,
00954     3.90625000e-03, 4.64534029e-03, 5.52427173e-03, 6.56950324e-03,
00955     7.81250000e-03, 9.29068059e-03, 1.10485435e-02, 1.31390065e-02,
00956     1.56250000e-02, 1.85813612e-02, 2.20970869e-02, 2.62780130e-02,
00957     3.12500000e-02, 3.71627223e-02, 4.41941738e-02, 5.25560260e-02,
00958     6.25000000e-02, 7.43254447e-02, 8.83883476e-02, 1.05112052e-01,
00959     1.25000000e-01, 1.48650889e-01, 1.76776695e-01, 2.10224104e-01,
00960     2.50000000e-01, 2.97301779e-01, 3.53553391e-01, 4.20448208e-01,
00961     5.00000000e-01, 5.94603558e-01, 7.07106781e-01, 8.40896415e-01,
00962     1.00000000e+00, 1.18920712e+00, 1.41421356e+00, 1.68179283e+00,
00963     2.00000000e+00, 2.37841423e+00, 2.82842712e+00, 3.36358566e+00,
00964     4.00000000e+00, 4.75682846e+00, 5.65685425e+00, 6.72717132e+00,
00965     8.00000000e+00, 9.51365692e+00, 1.13137085e+01, 1.34543426e+01,
00966     1.60000000e+01, 1.90273138e+01, 2.26274170e+01, 2.69086853e+01,
00967     3.20000000e+01, 3.80546277e+01, 4.52548340e+01, 5.38173706e+01,
00968     6.40000000e+01, 7.61092554e+01, 9.05096680e+01, 1.07634741e+02,
00969     1.28000000e+02, 1.52218511e+02, 1.81019336e+02, 2.15269482e+02,
00970     2.56000000e+02, 3.04437021e+02, 3.62038672e+02, 4.30538965e+02,
00971     5.12000000e+02, 6.08874043e+02, 7.24077344e+02, 8.61077929e+02,
00972     1.02400000e+03, 1.21774809e+03, 1.44815469e+03, 1.72215586e+03,
00973     2.04800000e+03, 2.43549617e+03, 2.89630938e+03, 3.44431172e+03,
00974     4.09600000e+03, 4.87099234e+03, 5.79261875e+03, 6.88862343e+03,
00975     8.19200000e+03, 9.74198469e+03, 1.15852375e+04, 1.37772469e+04,
00976     1.63840000e+04, 1.94839694e+04, 2.31704750e+04, 2.75544937e+04,
00977     3.27680000e+04, 3.89679387e+04, 4.63409500e+04, 5.51089875e+04,
00978     6.55360000e+04, 7.79358775e+04, 9.26819000e+04, 1.10217975e+05,
00979     1.31072000e+05, 1.55871755e+05, 1.85363800e+05, 2.20435950e+05,
00980     2.62144000e+05, 3.11743510e+05, 3.70727600e+05, 4.40871900e+05,
00981     5.24288000e+05, 6.23487020e+05, 7.41455200e+05, 8.81743800e+05,
00982     1.04857600e+06, 1.24697404e+06, 1.48291040e+06, 1.76348760e+06,
00983     2.09715200e+06, 2.49394808e+06, 2.96582080e+06, 3.52697520e+06,
00984     4.19430400e+06, 4.98789616e+06, 5.93164160e+06, 7.05395040e+06,
00985     8.38860800e+06, 9.97579232e+06, 1.18632832e+07, 1.41079008e+07,
00986     1.67772160e+07, 1.99515846e+07, 2.37265664e+07, 2.82158016e+07,
00987     3.35544320e+07, 3.99031693e+07, 4.74531328e+07, 5.64316032e+07,
00988     6.71088640e+07, 7.98063385e+07, 9.49062656e+07, 1.12863206e+08,
00989     1.34217728e+08, 1.59612677e+08, 1.89812531e+08, 2.25726413e+08,
00990     2.68435456e+08, 3.19225354e+08, 3.79625062e+08, 4.51452825e+08,
00991     5.36870912e+08, 6.38450708e+08, 7.59250125e+08, 9.02905651e+08,
00992     1.07374182e+09, 1.27690142e+09, 1.51850025e+09, 1.80581130e+09,
00993     2.14748365e+09, 2.55380283e+09, 3.03700050e+09, 3.61162260e+09,
00994     4.29496730e+09, 5.10760567e+09, 6.07400100e+09, 7.22324521e+09,
00995     8.58993459e+09, 1.02152113e+10, 1.21480020e+10, 1.44464904e+10,
00996     1.71798692e+10, 2.04304227e+10, 2.42960040e+10, 2.88929808e+10,
00997     3.43597384e+10, 4.08608453e+10, 4.85920080e+10, 5.77859616e+10,
00998     6.87194767e+10, 8.17216907e+10, 9.71840160e+10, 1.15571923e+11,
00999     1.37438953e+11, 1.63443381e+11, 1.94368032e+11, 2.31143847e+11,
01000     2.74877907e+11, 3.26886763e+11, 3.88736064e+11, 4.62287693e+11,
01001     5.49755814e+11, 6.53773525e+11, 7.77472128e+11, 9.24575386e+11,
01002     1.09951163e+12, 1.30754705e+12, 1.55494426e+12, 1.84915077e+12,
01003     2.19902326e+12, 2.61509410e+12, 3.10988851e+12, 3.69830155e+12,
01004     4.39804651e+12, 5.23018820e+12, 6.21977702e+12, 7.39660309e+12,
01005     8.79609302e+12, 1.04603764e+13, 1.24395540e+13, 1.47932062e+13,
01006     1.75921860e+13, 2.09207528e+13, 2.48791081e+13, 2.95864124e+13,
01007     3.51843721e+13, 4.18415056e+13, 4.97582162e+13, 5.91728247e+13,
01008     7.03687442e+13, 8.36830112e+13, 9.95164324e+13, 1.18345649e+14,
01009     1.40737488e+14, 1.67366022e+14, 1.99032865e+14, 2.36691299e+14,
01010     2.81474977e+14, 3.34732045e+14, 3.98065730e+14, 4.73382598e+14,
01011     5.62949953e+14, 6.69464090e+14, 7.96131459e+14, 9.46765196e+14,
01012     1.12589991e+15, 1.33892818e+15, 1.59226292e+15, 1.89353039e+15,
01013     2.25179981e+15, 2.67785636e+15, 3.18452584e+15, 3.78706078e+15,
01014     4.50359963e+15, 5.35571272e+15, 6.36905167e+15, 7.57412156e+15,
01015     9.00719925e+15, 1.07114254e+16, 1.27381033e+16, 1.51482431e+16,
01016     1.80143985e+16, 2.14228509e+16, 2.54762067e+16, 3.02964863e+16,
01017     3.60287970e+16, 4.28457018e+16, 5.09524134e+16, 6.05929725e+16,
01018     7.20575940e+16, 8.56914035e+16, 1.01904827e+17, 1.21185945e+17,
01019 };
01020 
01021 #else
01022 
01023 float ff_aac_pow2sf_tab[428];
01024 
01025 #endif /* CONFIG_HARDCODED_TABLES */

Generated on Tue Nov 4 2014 12:59:21 for ffmpeg by  doxygen 1.7.1