Commit bf0492e5 authored by vasilache's avatar vasilache
Browse files

fix 2492 scales

parent 5b0b6910
Loading
Loading
Loading
Loading
+415 −1
Original line number Diff line number Diff line
@@ -27459,6 +27459,7 @@ const Word16 cos_scale_tbl_512[512] = /* Q15 */
    };
#ifdef FIX_2492_REMOVE_DUPLICATES_FOR_DECODE_INDEXES
#if 0
const Word16 scales_fx[][MAX_NO_SCALES * 2] = /* 2 subvectors    Q11*/
    {
        { 3129, 0, 0, 3138, 0, 0 },
@@ -27872,6 +27873,419 @@ const Word16 scales_p_fx[][MAX_NO_SCALES * 2] = /* 2 subvectors 20 modes Q11 */
        { 1612, 2574, 1221, 2265, 1505, 3398 }
    };
#endif
const Word16 scales_fx[][MAX_NO_SCALES * 2] = /* 2 subvectors    Q11*/
{
    { 3129, 0, 0, 3138, 0, 0 }, /* 14 */
    { 3287, 0, 0, 3138, 0, 0 }, /* 15 */
    { 2611, 5034, 0, 3138, 0, 0 }, /* 18 */
    { 2611, 5034, 0, 3340, 0, 0 }, /* 19 */
    { 2165, 3674, 5931, 2363, 3809, 6281 }, /* 25 */
    { 1898, 2986, 4745, 2116, 3668, 7045 }, /* 28*/ /* mode 0 UV WB*/
    { 2630, 5480, 0, 2972, 0, 0 }, /* 18 */
    { 2802, 0, 0, 2869, 5073, 0 }, /* 19 */
    { 1763, 2546, 3723, 2515, 4559, 21109 }, /* 24 */
    { 2195, 3961, 7440, 2501, 6017, 21961 }, /* 25 */
    { 1841, 2902, 1386, 2116, 3762, 22309 }, /* 29 */
    { 1700, 2710, 1288, 1866, 3246, 20660 }, /* 32 */ /* mode 1 UV NB*/
    { 3222, 0, 0, 3391, 0, 0 }, /* 17 */
    { 2537, 4923, 0, 3187, 0, 0 }, /* 18 */
    { 2816, 4229, 6398, 3676, 0, 0 }, /* (18.745) 19 */
    { 2816, 4229, 6398, 3893, 0, 0 }, /* (19.838) 20 */
    { 2161, 3482, 9091, 3391, 0, 0 }, /* 21 */
    { 2560, 4923, 8462, 2775, 4835, 0 }, /* 22 */
    { 2552, 3803, 5620, 3072, 5538, 0 }, /* (22.959) 23 */
    { 2546, 4207, 7451, 3230, 0, 0 }, /* (23.949) 24 */
    { 2163, 3656, 9263, 2699, 5296, 0 }, /* 25 */
    { 2040, 3082, 6871, 2427, 3637, 5587 },
    { 1903, 2841, 6875, 2212, 3484, 5908 },
    { 1888, 3058, 6900, 2212, 3484, 5908 },
    { 1888, 3058, 6900, 2183, 3469, 6420 },
    { 1888, 3058, 6900, 1970, 3174, 8081 }, /* 30 */
    { 2634, 1855, 4960, 2302, 3478, 5083 }, /* (30.994) 31 */
    { 1528, 2269, 5876, 1964, 3033, 8002 }, /* 32 */
    { 1577, 2445, 5782, 1858, 2871, 4334 }, /* 33*/
    { 1532, 2259, 5870, 2421, 1661, 6824 }, /* 34*/
    { 1567, 2318, 3777, 2544, 3877, 1888 }, /* (34.981) 35 */
    { 1569, 2320, 3781, 2183, 3361, 1665 }, /* (35.998) 36 */
    { 1386, 1972, 4356, 1487, 2216, 4514 }, /* 37*/ /* mode 2 V WB*/
    { 3357, 0, 0, 2494, 4426, 0 }, /* 17 */
    { 2634, 5009, 0, 2888, 0, 0 }, /* 18 */
    { 2224, 3539, 7696, 2494, 4426, 0 }, /* 22 */
    { 2120, 3226, 9861, 2494, 4426, 0 }, /* 23 */
    { 1974, 3140, 10121, 2494, 4426, 0 }, /* 24 */
    { 1722, 2454, 4059, 2494, 4426, 0 }, /* 25 */
    { 1839, 2658, 4473, 2490, 5456, 0 }, /* 27 */
    { 1722, 2533, 4581, 2038, 3394, 5808 }, /* 29 */
    { 1427, 2009, 4184, 1915, 3082, 1350 }, /* 34 */
    { 1370, 1862, 2720, 2017, 1339, 3914 }, /* 37 */ /* mode 3 V NB*/
    { 2482, 3885, 0, 0, 0, 0 }, /* 12 (11.883) */
    { 2376, 3828, 6975, 0, 0, 0 }, /* (12.997) 13 */
    { 3396, 0, 0, 3883, 0, 0 }, /* (13.640) 14 */
    { 3564, 0, 0, 3883, 0, 0 }, /* (14.733) 15 */
    { 3346, 0, 0, 3418, 0, 0 }, /* 16 (15.826) */
    { 3564, 0, 0, 4129, 0, 0 }, /* (15.826) 16 */
    { 2820, 5218, 0, 3883, 0, 0 }, /* (17.479) 18 */
    { 2638, 4962, 0, 3418, 0, 0 }, /* 19 (18.572) */
    { 2482, 3885, 0, 3418, 0, 0 }, /* 20 (19.796) */
    { 2218, 3617, 6502, 3418, 0, 0 }, /* 21 (20.910) */
    { 2124, 3295, 8659, 3418, 0, 0 }, /* 22 (21.776) */
    { 2243, 3398, 5562, 2693, 5132, 0 }, /* 23 (22.959) */
    { 2388, 4024, 7483, 3453, 0, 0 }, /* (23.949) 24 */
    { 1927, 2839, 4549, 2693, 5132, 0 }, /* 25 (24.992) */
    { 1860, 2675, 3893, 2703, 5372, 0 }, /* 26 (25.904) */
    { 2202, 3619, 1618, 2703, 5372, 0 }, /* 27 (26.829) */
    { 2093, 3135, 1554, 2273, 3594, 5313 }, /* 28 (27.989) */
    { 2202, 3619, 1618, 2238, 3895, 6173 }, /* 29 (28.984) */
    { 1829, 3015, 1382, 2259, 3625, 5820 }, /* 30 (29.980) */
    { 1864, 3170, 1403, 2114, 3381, 5147 }, /* 31 (30.966) */
    { 1692, 2572, 1294, 2009, 3158, 4540 }, /* 32 (31.995) */ /* G WB*/
    { 2425, 3707, 5655, 0, 0, 0 }, /* 12 (11.925) */
    { 3299, 0, 0, 3314, 0, 0 }, /* 16 (15.826) */
    { 2425, 3707, 5655, 3174, 0, 0 }, /* 19 (18.745) */
    { 2425, 3707, 5655, 3314, 0, 0 }, /* 20 (19.838) */
    { 2177, 3557, 6113, 3314, 0, 0 }, /* 21 (20.910) */
    { 2208, 3738, 6476, 3009, 4606, 0 }, /* 22 (21.985) */
    { 2816, 1874, 4264, 3009, 4606, 0 }, /* 23 (22.815) */
    { 1966, 2914, 1434, 2683, 4366, 0 }, /* 25 (24.996) */
    { 2302, 1626, 3895, 2628, 4714, 0 }, /* 26 (25.993) */
    { 2206, 3537, 1571, 2560, 3996, 6105 }, /* 27 (26.954) */
    { 1911, 3013, 1403, 2560, 3996, 6105 }, /* 28 (27.992) */
    { 1898, 3277, 1380, 2363, 3637, 5845 }, /* 29 (28.996) */
    { 2144, 1479, 3656, 2163, 3363, 5532 }, /* 30 (29.988) */
    { 1989, 1409, 3090, 2136, 3543, 6003 }, /* 31 (30.962) */
    { 1882, 1356, 2800, 2165, 3703, 6285 }, /* 32 (31.987) */ /* G NB*/
    { 3312, 0, 0, 3394, 0, 0 }, /* 17 */
    { 2611, 4706, 0, 3201, 0, 0 }, /* 18 */
    { 2820, 5218, 0, 4129, 0, 0 }, /* (18.572) 19 */  /* from GEWB */
    { 2660, 4135, 0, 4129, 0, 0 }, /* (19.796) 20 */
    { 2679, 4821, 0, 2841, 0, 0 }, /* 21 */
    { 2644, 4952, 0, 2775, 5003, 0 }, /* 22 */
    { 2402, 3619, 5726, 3252, 6201, 0 }, /* (22.959) 23 */ /* from GEWB */
    { 2210, 3623, 6169, 2841, 0, 0 }, /* 24 */
    { 2210, 3623, 6169, 2714, 5233, 0 }, /* 25 */
    { 1993, 2851, 4125, 3262, 6519, 0 }, /* (25.904) 26 */ /* from GEWB */
    { 2353, 3836, 1737, 3262, 6519, 0 }, /* (26.829) 27 */
    { 1837, 2744, 5333, 2191, 3459, 5175 }, /* 28 */
    { 2353, 3836, 1737, 2701, 4686, 7551 }, /* (28.984) 29 */ /* from GEWB */
    { 1837, 2744, 5333, 1923, 2978, 4266 }, /* 30 */
    { 1853, 2718, 5323, 2271, 1591, 3492 },
    { 1561, 2255, 4831, 1923, 2978, 4266 },
    { 1626, 2511, 6513, 2271, 1591, 3492 }, /* 33 */ /* mode 6 T WB */
    { 3336, 0, 0, 2439, 4528, 0 }, /* 17 */
    { 2615, 5237, 0, 2800, 0, 0 }, /* 18 */
    { 2216, 3607, 8047, 2439, 4528, 0 }, /* 22 */
    { 2085, 3144, 5751, 2439, 4528, 0 }, /* 23 */
    { 1933, 3025, 5659, 2439, 4528, 0 }, /* 24 */
    { 1864, 3572, 6793, 2439, 4528, 0 }, /* 25 */
    { 1884, 3375, 6283, 1985, 3447, 8096 }, /* 28 */
    { 1513, 2275, 5517, 1800, 2890, 4721 }, /* 31 */
    { 1452, 2114, 5564, 1659, 2550, 3736 }, /* 32*/ /* mode 7 T NB*/
    { 1552, 2286, 4022, 4139, 1634, 2497 }, /* 31 */
    { 1432, 2118, 4051, 4139, 1634, 2497 }, /* 32 */ /* mode 8 G 16k */
    { 1487, 2150, 3779, 2775, 1761, 4516 }, /* 32 (31.998) */
    { 1386, 2042, 3418, 2775, 1761, 4516 }, /* 33 (32.983) mode 9 T16k */
    { 3371, 0, 0, 2568, 5036, 0 }, /* 17 */
    { 3031, 6023, 0, 3734, 0, 0 }, /* (17.479) 18 */
    { 2802, 4704, 0, 3734, 0, 0 }, /* (18.703) 19 */
    { 2802, 4704, 0, 4065, 0, 0 }, /* (19.796) 20 */
    { 2198, 3815, 6617, 3437, 0, 0 }, /* 21 */
    { 2198, 3815, 6617, 2568, 5036, 0 }, /* 22 */
    { 2163, 3230, 5052, 3699, 6124, 0 }, /* (22.917) 23 */
    { 2314, 3723, 1712, 4065, 0, 0 }, /* (23.978) 24 */
    { 1948, 3056, 5112, 2570, 6085, 0 }, /* 25 */
    { 2351, 3770, 1665, 2570, 6085, 0 }, /* 26 */
    { 2351, 1657, 3932, 3133, 5603, 0 }, /* (26.953) 27 */
    { 2470, 1743, 4465, 3099, 6504, 0 }, /* (27.992) 28 */
    { 1647, 2458, 4047, 3080, 6574, 0 }, /* (28.992) 29 */
    { 2337, 1651, 3922, 4041, 2388, 7604 }, /* (29.976) 30 */
    { 2290, 1593, 4149, 2537, 4381, 7731 }, /* (30.963) 31 */
    { 1577, 2322, 3922, 2521, 4706, 7946 }, /* (31.995) 32 */
    { 2099, 1452, 3545, 2521, 4706, 7946 }, /* (32.996) 33 */
    { 1980, 1460, 3385, 3768, 2253, 5794 }, /* (33.994) 34 */
    { 2025, 1430, 3279, 2224, 4022, 5902 }, /* (34.954) 35 */
    { 1233, 1780, 2904, 2589, 1565, 4542 }, /* 36 */ /* mode 10 AUDIO_WB LVQ bitrate 15-36 + 4 + 1*/
    { 1747, 3623, 9062, 2048, 2048, 2048 }, /* 17 */
    { 2071, 3406, 9017, 3232, 0, 0 }, /* 21 */
    { 2071, 3406, 9017, 2462, 4964, 0 }, /* 22 */
    { 1804, 3314, 8471, 2462, 4964, 0 }, /* 25 */
    { 1735, 3668, 9146, 2462, 4964, 0 }, /* 26 */
    { 1372, 2277, 4893, 2462, 4964, 0 }, /* 28 */ /* mode 11 AUDIO_NB */
    { 2316, 3717, 1630, 2591, 5722, 0 }, /* 26 */
    { 1167, 1647, 2451, 2380, 3992, 1491 }, /* 36*/ /* mode 12 AUDIO_WB 16k bitrate 15-36 + 4 + 1*/
    { 2140, 3248, 7688, 3418, 0, 0 }, /* 22 (21.776) */
    { 2253, 3285, 4700, 2732, 4962, 0 }, /* (22.959) 23 */
    { 2234, 3588, 6480, 2882, 0, 0 }, /* (23.949) 24 */
    { 2234, 3588, 6480, 2757, 5171, 0 }, /* (24.889) 25 */
    { 2234, 3588, 6480, 2230, 3449, 5167 }, /* (25.821) 26 */
    { 1925, 2763, 3897, 2456, 3666, 5251 }, /* (26.982) 27 */
    { 1802, 2621, 5784, 2251, 3553, 0 }, /* 28 (27.994) */
    { 1702, 2488, 5994, 2230, 3498, 5077 }, /* 29 (28.996) */
    { 1782, 2718, 5951, 2183, 3521, 5480 }, /* 30 (29.991) */
    { 1567, 6380, 3723, 2300, 4729, 9779 }, /* (30.985) 31 */
    { 1581, 2298, 4815, 2961, 1933, 4243 }, /* 32 (31.992) */
    { 1436, 2001, 3559, 1939, 2976, 4264 }, /* 33 (32.993) */
    { 1473, 2091, 3484, 2292, 1626, 3473 }, /* 34 (33.968) */
    { 1718, 1311, 3117, 2290, 3475, 1630 }, /* (34.968) 35 */
    { 1718, 1311, 3117, 1968, 3009, 1448 }, /* (35.990) 36 */
    { 1311, 1810, 3547, 1546, 2232, 3170 }, /* 37 (36.995) */ /* VOICED 16k */
    { 2494, 1630, 4676, 2642, 6810, 0 }, /* 25 (24.980) */
    { 3256, 1710, 9085, 2247, 6287, 0 }, /* 25 (24.974) */
    { 2036, 5360, 0, 2234, 4573, 7080 }, /* 25 (24.852) */
    { 1817, 3222, 7256, 2228, 3742, 6281 }, /* 25 (24.994) */
    { 1714, 2535, 3897, 2658, 5728, 0 }, /* 25 (24.996) */
    { 2331, 5788, 0, 2265, 5726, 8993 }, /* 25 (24.671) */
    { 1927, 3955, 9161, 1395, 2593, 4768 }, /* 25 (24.936) */
    { 2769, 8872, 0, 1679, 3164, 8550 }, /* 25 (24.955) */
    { 2750, 7387, 0, 1759, 2976, 5304 }, /* 25 (24.853) */
    { 2474, 5612, 0, 1554, 2540, 4469 }, /* 25 (24.881) */
    { 2300, 5603, 0, 1790, 3068, 5296 }, /* 25 (24.939) */
    { 1882, 5061, 0, 1260, 2195, 4293 }, /* 25 (24.996) */
    { 3170, 9232, 0, 1690, 4461, 8817 }, /* 25 (24.310) */
    { 2492, 5935, 0, 1509, 2492, 3953 }, /* 25 (24.955) */
    { 1999, 4485, 11706, 3084, 1315, 8624 }, /* 25 (24.984) */
    { 2267, 5315, 0, 2666, 1237, 1802 } /* 25 (24.866) */
};
const Word16 scales_p_fx[][MAX_NO_SCALES * 2] = /* 2 subvectors 20 modes Q11 */
    {
        { 2998, 4862, 0, 0, 0, 0 }, /*  9 (8.464) */
        { 2630, 4422, 0, 0, 0, 0 }, /* (8.910) 9 */
        { 2550, 5304, 0, 0, 0, 0 }, /* (10.659) 11 */
        { 2339, 3805, 5994, 0, 0, 0 }, /* (11.925) 12 */
        { 2126, 3762, 6162, 0, 0, 0 }, /* (12.997) 13 */
        { 3103, 0, 0, 3154, 0, 0 }, /* (13.640) 14 */
        { 3244, 0, 0, 3154, 0, 0 }, /* (14.733) 15 */
        { 3244, 0, 0, 3318, 0, 0 }, /* (15.826) 16 */
        { 2630, 4422, 0, 3318, 0, 0 }, /* (16.823) 17 */
        { 2550, 5304, 0, 3154, 0, 0 }, /* (17.479) 18 */
        { 2591, 5251, 0, 3355, 0, 0 }, /* 19 (18.572) */
        { 2339, 3805, 5994, 3318, 0, 0 }, /* (19.838) 20 */
        { 2126, 3762, 6162, 3318, 0, 0 }, /* (20.910) 21 */
        { 2023, 3402, 5200, 3318, 0, 0 }, /* (21.776) 22 */
        { 2177, 3488, 5745, 2650, 4819, 0 }, /* 23 (22.959) */
        { 2177, 3926, 6273, 2796, 0, 0 }, /* 24 (23.949) */
        { 1872, 2892, 4553, 2650, 4819, 0 }, /* 25 (24.992) */
        { 1843, 2888, 4616, 2658, 4942, 0 }, /* (25.718) 26 */
        { 1806, 2869, 4919, 2689, 4999, 0 }, /* 27 (26.902) */
        { 2777, 1776, 4868, 2191, 3453, 5214 }, /* 28 (27.996) */
        { 1733, 2761, 5214, 2204, 3568, 5444 }, /* 29 (28.937) */
        { 1731, 2824, 5255, 2087, 3230, 5003 }, /* 30 (29.954) */
        { 1548, 2435, 5732, 2220, 3695, 5648 }, /* 31 (30.978) */
        { 1546, 2494, 5777, 1933, 2935, 4041 }, /* 32 (31.978) */
        { 1526, 2451, 5935, 2544, 1726, 3998 }, /* (32.988) 33 */
        { 1483, 2529, 6025, 2570, 1737, 4096 }, /* 34 (33.975) */
        { 1407, 2279, 4788, 1747, 2720, 3981 }, /* 35 (34.975) */
        { 1327, 2107, 3760, 1749, 2777, 4016 }, /* 36 (35.889) */
        { 1243, 1913, 3107, 1604, 2484, 3142 }, /* (36.996) 37 */
        { 1227, 1853, 3131, 1497, 2275, 3072 }, /* (37.993) 38 */
        { 1327, 2107, 3760, 1407, 2167, 3891 }, /* 39 (38.488) */ /* V WB*/
        { 3303, 0, 0, 0, 0, 0 }, /*  8 (7.913) */
        { 2595, 5069, 0, 3316, 0, 0 }, /* 19 (18.572) */
        { 2077, 3338, 5046, 2632, 4405, 0 }, /* 23 (22.773) */
        { 1829, 2847, 4739, 3000, 4708, 0 }, /* 24 (23.999) */
        { 1905, 2869, 4403, 2621, 4616, 0 }, /* 25 (24.992) */
        { 1829, 2847, 4739, 2613, 4518, 6111 }, /* 27 (26.962) */
        { 1829, 2847, 4739, 2122, 3371, 5061 }, /* 28 (27.835) */
        { 1755, 2738, 5046, 2136, 3543, 5376 }, /* 29 (28.937) */
        { 1567, 2497, 3181, 2122, 3371, 5061 }, /* 30 (29.969) */
        { 1616, 2720, 3383, 2154, 3654, 5542 }, /* 31 (30.952) */
        { 1565, 2507, 3185, 1884, 2955, 4168 }, /* 32 (31.978) */
        { 1358, 2173, 2535, 2824, 1839, 3996 }, /* 34 (33.992) */
        { 1378, 2261, 2675, 2578, 1696, 4002 }, /* 35 (35.000) */
        { 1364, 2193, 2558, 1645, 2542, 3541 }, /* 36 (35.980) */
        { 1348, 2128, 2486, 1946, 1333, 2927 }, /* 39 (38.512) */ /* V NB*/
        { 3277, 0, 0, 3181, 0, 0 }, /* 15 (14.733) */
        { 2675, 4970, 0, 3236, 0, 0 }, /* (15.730) 16 */
        { 2675, 4970, 0, 3432, 0, 0 }, /* (16.823) 17 */
        { 2560, 5927, 0, 3236, 0, 0 }, /* (17.479) 18 */
        { 2322, 4067, 6748, 3181, 0, 0 }, /* 19 (18.745) */
        { 2341, 4202, 6851, 3432, 0, 0 }, /* (19.838) 20 */
        { 2138, 4159, 7141, 3432, 0, 0 }, /* (20.910) 21 */
        { 2021, 3662, 5446, 3373, 0, 0 }, /* 22 (21.776) */
        { 1841, 3281, 5282, 3373, 0, 0 }, /* 23 (22.791) */
        { 1632, 2650, 4383, 3373, 0, 0 }, /* 24 (23.999) */
        { 1632, 2650, 4383, 2734, 4557, 0 }, /* 25 (24.996) */
        { 1518, 2357, 3719, 2734, 4557, 0 }, /* 26 (25.934) */
        { 2007, 3486, 1446, 2697, 5382, 0 }, /* (26.887) 27 */
        { 1632, 2650, 4383, 2429, 3957, 0 }, /* 28 (27.969) */
        { 1518, 2357, 3719, 2384, 3734, 5671 }, /* 29 (28.996) */
        { 1450, 2306, 4000, 2204, 3543, 5687 }, /* 30 (29.988) */
        { 1352, 2148, 3217, 2204, 3543, 5687 }, /* 31 (30.931) */
        { 1356, 2101, 3183, 2200, 3918, 6189 }, /* 32 (31.987) */
        { 1352, 2148, 3217, 2947, 1896, 4364 }, /* 33 (32.982) */
        { 1290, 1978, 3117, 2687, 1804, 4520 }, /* 34 (33.967) */
        { 1264, 1886, 2963, 2114, 3172, 1548 }, /* 35 (34.994) */ /* G WB*/
        { 3267, 0, 0, 3076, 0, 0 }, /* 15 (14.733) */
        { 2300, 3985, 7643, 3076, 0, 0 }, /* 19 (18.792) */
        { 2116, 4250, 8886, 2906, 5009, 0 }, /* 22 (21.985) */
        { 2017, 3672, 12216, 2623, 4760, 0 }, /* 23 (22.773) */
        { 1804, 3289, 14326, 2906, 5009, 0 }, /* 24 (23.932) */
        { 1729, 3240, 14377, 2623, 4760, 0 }, /* 25 (24.955) */
        { 1616, 3113, 14752, 2623, 4760, 0 }, /* 26 (25.991) */
        { 1780, 3168, 14326, 2109, 3592, 6353 }, /* 28 (27.979) */
        { 1673, 3056, 14582, 2109, 3592, 6353 }, /* 29 (28.878) */
        { 1546, 2830, 14608, 2109, 3592, 6353 }, /* 30 (29.954) */
        { 1446, 2693, 14797, 2109, 3592, 6353 }, /* 31 (30.893) */
        { 1411, 2654, 14930, 2081, 3840, 6633 }, /* 32 (31.963) */
        { 1430, 2611, 14764, 1872, 3170, 4983 }, /* 33 (32.997) */
        { 1391, 2693, 14930, 2517, 3779, 1665 }, /* 34 (33.986) */
        { 1391, 2693, 14930, 2433, 1581, 4004 }, /* 35 (34.952) */ /* G NB*/
        { 2071, 3639, 5652, 3305, 0, 0 }, /* 21 */
        { 1974, 3236, 8184, 3541, 0, 0 }, /* (21.776) 22 */
        { 1798, 2949, 4688, 3541, 0, 0 }, /* (22.784) 23 */
        { 1745, 3365, 4975, 3541, 0, 0 }, /* (23.980) 24 */
        { 1747, 2830, 4231, 2550, 5487, 0 }, /* 25 */
        { 2472, 1593, 4522, 2550, 5487, 0 }, /* 26 */
        { 1647, 2773, 5421, 2884, 5356, 0 }, /* (26.931) 27 */
        { 1602, 2568, 5732, 2822, 5546, 0 }, /* (27.977) 28 */
        { 2472, 1593, 4522, 2075, 3752, 6253 }, /* 29 */
        { 2472, 1593, 4522, 2908, 1786, 4772 }, /* 30 */
        { 1399, 2081, 3662, 2306, 3863, 5988 }, /* (30.993) 31 */
        { 1284, 1878, 2966, 2306, 3863, 5988 }, /* (31.998) 32 */
        { 1348, 2105, 3189, 3035, 1997, 4397 }, /* (32.996) 33 */
        { 1626, 1188, 2726, 3035, 1997, 4397 }, /* (33.994) 34 */
        { 1686, 1212, 2710, 2757, 1833, 4727 }, /* (34.999) 35 */
        { 2249, 1511, 1137, 1780, 2642, 3813 }, /* (35.984) 36 */
        { 1552, 2275, 1126, 1784, 2800, 3903 }, /* (36.969) 37 */
        { 1128, 1569, 2286, 1620, 2460, 3406 }, /* (37.971) 38 */
        { 1128, 1569, 2286, 1972, 1427, 2710 }, /* (38.973) 39 */
        { 1075, 1577, 2198, 1669, 2533, 1161 }, /* 40 */ /* mode 7 AUDIO_WB 19-40 + 0 + 1 */
        { 2191, 3668, 7993, 3275, 0, 0 }, /* 21 */
        { 1679, 2492, 4278, 2570, 4690, 0 }, /* 25 */
        { 1597, 2394, 5110, 2570, 4690, 0 }, /* 26 */
        { 2202, 1481, 4835, 2273, 4016, 7150 }, /* 30 */
        { 1415, 2107, 4786, 2118, 3668, 8200 }, /* 31 */
        { 1374, 2204, 5337, 1956, 3168, 5149 }, /* 32 */ /*mode 8 AUDIO_NB  */
        { 2425, 1589, 4336, 2165, 3420, 1380 }, /* 30 */
        { 1937, 2966, 5577, 2855, 5417, 9382 }, /* (30.967) 31 */
        { 1942, 2978, 5577, 4035, 2404, 7135 }, /* (31.990) 32 */
        { 1812, 2879, 5659, 4035, 2404, 7135 }, /* (32.979) 33 */
        { 2550, 1724, 4870, 4094, 2392, 7541 }, /* (33.989) 34 */
        { 1782, 2757, 5763, 3572, 2167, 5933 }, /* (34.991) 35 */
        { 1694, 2497, 4456, 3252, 5325, 2038 }, /* (35.990) 36 */
        { 1673, 2429, 4080, 3262, 1995, 5364 }, /* (36.986) 37 */
        { 1683, 2468, 4299, 2998, 1851, 4911 }, /* (37.982) 38 */
        { 1683, 2468, 4299, 4205, 1714, 2783 }, /* (38.995) 39 */
        { 1067, 1530, 2116, 1630, 2730, 1110 }, /* 40 */ /* mode 9 AUDIO_WB 16k 30-40 + 5 MA pred for WB2 (AV: not used?)*/
        { 3439, 0, 0, 2626, 5061, 0 }, /* 17 (16.823) */
        { 2228, 3787, 6543, 3455, 0, 0 }, /* 21 (20.910) */
        { 2228, 3787, 6543, 2626, 5061, 0 }, /* 22 (21.907) */
        { 2306, 3459, 1618, 2626, 5061, 0 }, /* 25 (24.863) */
        { 1905, 2830, 1397, 2626, 5061, 0 }, /* 26 (25.921) */
        { 2284, 1626, 3793, 2623, 6212, 0 }, /* 27 (26.837) */
        { 1720, 2818, 1276, 1638, 2900, 8724 }, /* 36 (35.998) */ /* INACTIVE NB */
        { 1640, 2351, 3690, 0, 0, 0 }, /* 17 (16.932) */
        { 2753, 5380, 0, 3224, 0, 0 }, /* (17.479) 18 */
        { 2580, 4188, 0, 3224, 0, 0 }, /* (18.703) 19 */
        { 2580, 4188, 0, 3430, 0, 0 }, /* (19.796) 20 */
        { 2230, 3711, 6496, 3434, 0, 0 }, /* 21 (20.910) */
        { 2230, 3899, 6597, 3115, 5396, 0 }, /* 22 (21.985) */
        { 1972, 2949, 4336, 3430, 0, 0 }, /* (22.934) 23 */
        { 1972, 2949, 4336, 2666, 4936, 0 }, /* (23.931) 24 */
        { 1731, 2482, 3961, 2689, 4954, 0 }, /* 25 (24.845) */
        { 1595, 2243, 3482, 2689, 4954, 0 }, /* 26 (25.999) */
        { 1481, 2079, 3408, 2689, 4954, 0 }, /* 27 (26.981) */
        { 2066, 3414, 1540, 2677, 6187, 0 }, /* (27.988) 28 */
        { 2058, 3373, 1534, 2179, 3832, 6857 }, /* (28.936) 29 */
        { 1833, 3052, 1397, 2179, 3832, 6857 }, /* (29.855) 30 */
        { 1612, 2605, 1245, 2179, 3832, 6857 }, /* (30.968) 31 */
        { 1763, 1327, 2988, 2179, 3832, 6857 }, /* (31.943) 32 */
        { 1698, 1292, 2738, 2169, 4162, 7021 }, /* (32.999) 33 */
        { 1763, 1327, 2988, 3156, 1884, 5143 }, /* (33.994) 34 */
        { 1737, 1296, 2781, 2884, 1800, 5552 }, /* (34.989) 35 */
        { 1829, 1335, 2945, 2204, 1475, 3674 }, /* 36 (35.929) */ /* INACTIVE WB*/
        { 2783, 4723, 0, 3418, 0, 0 }, /* 17 (16.823) */
        { 2206, 3946, 7262, 3418, 0, 0 }, /* 21 (20.910) */
        { 2206, 4162, 7328, 2927, 5552, 0 }, /* 22 (21.985) */
        { 1706, 2566, 4311, 2628, 5235, 0 }, /* 25 (24.845) */
        { 1589, 2359, 3805, 2628, 5235, 0 }, /* 26 (25.934) */
        { 1473, 2183, 3547, 2628, 5235, 0 }, /* 27 (26.914) */
        { 1927, 1333, 3205, 1479, 2437, 3973 }, /* 36 (35.915) */  /* INACTIVE 16k*/
        { 2646, 5077, 0, 3156, 0, 0 }, /* 18 (17.479) */
        { 2462, 3897, 0, 3156, 0, 0 }, /* 19 (18.703) */
        { 2105, 3361, 5028, 3375, 0, 0 }, /* 22 (21.776) */
        { 2554, 1798, 4770, 3375, 0, 0 }, /* 23 (22.791) */
        { 1767, 2781, 5165, 3375, 0, 0 }, /* 24 (23.999) */
        { 1673, 2503, 4116, 2200, 3656, 5597 }, /* 29 (28.966) */
        { 1669, 1253, 2623, 2161, 3531, 6046 }, /* 32 (31.990) */ /* UNVOICED NB */
        { 3164, 0, 0, 3170, 0, 0 }, /* 14 (13.640) */
        { 3359, 0, 0, 3170, 0, 0 }, /* 15 (14.733) */
        { 2724, 0, 0, 3271, 0, 0 }, /* (15.826) 16 */
        { 2529, 4743, 0, 3271, 0, 0 }, /* (16.376) 17 */
        { 2636, 5630, 0, 3170, 0, 0 }, /* 18 (17.479) */
        { 2636, 5630, 0, 3387, 0, 0 }, /* 19 (18.572) */
        { 2437, 4149, 0, 3387, 0, 0 }, /* 20 (19.796) */
        { 1950, 3428, 5657, 3271, 0, 0 }, /* (20.910) 21 */
        { 1880, 3217, 6574, 3271, 0, 0 }, /* (21.776) 22 */
        { 2572, 1622, 4256, 3271, 0, 0 }, /* (22.784) 23 */
        { 1550, 2464, 3838, 3271, 0, 0 }, /* (23.999) 24 */
        { 1907, 2986, 5018, 2650, 5616, 0 }, /* 25 (24.992) */
        { 2288, 1507, 3840, 2562, 5257, 0 }, /* (25.993) 26 */
        { 1581, 2531, 3934, 2562, 5257, 0 }, /* (26.883) 27 */
        { 1796, 2859, 5605, 2214, 3719, 6881 }, /* 28 (27.996) */ /* UNVOICED WB*/
        { 2316, 3351, 0, 2808, 0, 0 }, /* 24 (23.818) */
        { 1827, 3260, 7012, 2658, 6566, 0 }, /* (24.961) 25 */
        { 1792, 3168, 7084, 2632, 5937, 8499 }, /* (25.964) 26 */
        { 1733, 3379, 6773, 2611, 5009, 8202 }, /* (26.946) 27 */
        { 1655, 6285, 3514, 2611, 5009, 8202 }, /* (27.856) 28 */
        { 1567, 6406, 3734, 2611, 5009, 8202 }, /* (28.977) 29 */
        { 1913, 2615, 1491, 2370, 3475, 0 }, /* 30 (29.992) */
        { 1706, 2380, 1348, 2357, 3455, 0 }, /* 31 (30.998) */
        { 1538, 2114, 1225, 2357, 3455, 0 }, /* 32 (31.987) */
        { 1554, 6427, 3779, 1888, 3088, 6369 }, /* (32.975) 33 */
        { 1452, 2058, 1167, 2171, 3629, 5569 }, /* 34 (33.994) */
        { 1528, 2050, 1231, 2056, 3693, 5923 }, /* 35 (35.000) */
        { 1522, 2048, 1227, 1917, 3811, 5886 }, /* 36 (35.994) */
        { 1536, 6492, 3942, 1509, 2914, 5503 }, /* (36.977) 37 */
        { 1536, 6492, 3942, 1350, 2169, 4045 }, /* (37.984) 38 */
        { 1587, 1257, 2124, 1630, 2671, 3901 }, /* 39 (38.301) */ /* VOICED 16k */
        { 1831, 2742, 5220, 2679, 5327, 0 }, /* 26 (25.917) */
        { 1704, 2568, 3967, 2677, 5353, 0 }, /* (26.887) 27 */
        { 1704, 2523, 3924, 2372, 4049, 0 }, /* (27.974) 28 */
        { 1690, 2580, 4082, 2095, 3561, 5726 }, /* (28.910) 29 */
        { 1536, 2281, 3201, 2140, 3690, 5491 }, /* (29.976) 30 */
        { 1417, 2048, 2931, 2095, 3561, 5726 }, /* (30.956) 31 */
        { 1475, 2073, 3273, 3097, 1896, 4377 }, /* 32 (31.980) */
        { 1395, 1993, 3377, 2828, 1794, 4360 }, /* 33 (32.990) */
        { 1401, 1974, 3359, 2392, 3637, 1612 }, /* 34 (33.974) */
        { 1368, 1915, 3176, 2081, 3109, 1458 }, /* 35 (34.989) */
        { 1350, 1866, 2918, 2738, 1821, 1315 }, /* 36 (35.988) */
        { 1350, 1866, 2918, 1718, 2636, 1243 }, /* 37 (36.989) */ /* GENERIC 16k*/
        { 3344, 0, 0, 3455, 0, 0 }, /* 16 (15.826) */
        { 3463, 0, 0, 3428, 0, 0 }, /* (15.826) 16 */
        { 2720, 5251, 0, 3181, 0, 0 }, /* (17.479) 18 */
        { 2560, 4080, 0, 3181, 0, 0 }, /* (18.703) 19 */
        { 2560, 4080, 0, 3428, 0, 0 }, /* (19.796) 20 */
        { 2204, 3666, 6025, 3455, 0, 0 }, /* 21 (20.910) */
        { 2183, 3447, 8350, 3428, 0, 0 }, /* (21.776) 22 */
        { 2621, 1866, 5073, 3428, 0, 0 }, /* (22.791) 23 */
        { 1708, 2517, 3871, 3455, 0, 0 }, /* 24 (23.999) */
        { 1921, 2875, 4409, 2675, 5386, 0 }, /* 25 (24.992) */
        { 2744, 1815, 4751, 2675, 5386, 0 }, /* 26 (25.917) */
        { 1706, 2560, 3908, 2675, 5386, 0 }, /* 27 (26.883) */
        { 1706, 2484, 3836, 2304, 3766, 5773 }, /* 28 (27.901) */
        { 1749, 2595, 3744, 2138, 3604, 5902 }, /* (28.937) 29 */
        { 1567, 2380, 3461, 2097, 3559, 5812 }, /* 30 (29.916) */
        { 1485, 2150, 3668, 3031, 1888, 6357 }, /* 31 (30.993) */
        { 1458, 2073, 3172, 3060, 1849, 6889 }, /* 32 (31.980) */
        { 1350, 1898, 2779, 3060, 1849, 6889 }, /* 33 (32.958) */
        { 1683, 1257, 2638, 1864, 3090, 4618 }, /* 34 (33.987) */
        { 1722, 1278, 2617, 2378, 1561, 3703 }, /* 35 (34.994) */
        { 1716, 1274, 2593, 2212, 1456, 3502 }, /* 36 (35.968) */
        { 1704, 1268, 2611, 1921, 2929, 1319 }, /* 37 (36.971) */ /* GENERIC 12.8k MA*/
        { 1810, 2763, 5263, 2691, 5343, 0 }, /* 26 (25.917) */
        { 2009, 3017, 5702, 3461, 6844, 0 }, /* (26.981) 27 */
        { 1976, 3101, 5501, 2886, 5089, 8081 }, /* (27.989) 28 */
        { 1999, 2984, 5454, 4405, 2603, 8552 }, /* (28.976) 29 */
        { 2030, 3080, 6320, 5091, 2693, 9277 }, /* (29.968) 30 */
        { 1937, 2966, 5577, 2855, 5417, 9382 }, /* (30.967) 31 */
        { 1456, 2085, 3308, 3035, 1886, 7027 }, /* 32 (31.980) */
        { 1391, 1995, 3398, 1942, 3172, 7062 }, /* 33 (32.995) */
        { 1702, 1266, 3033, 1911, 3101, 4731 }, /* 34 (33.993) */
        { 1671, 1249, 2871, 2920, 1796, 4639 }, /* 35 (34.992) */
        { 1612, 2574, 1221, 1759, 2963, 4979 }, /* 36 (35.997) */
        { 1612, 2574, 1221, 2265, 1505, 3398 } /* 37 (36.961) */ /* AUDIO 16k */
    };
    #else
const Word16 scales_ivas_fx[][MAX_NO_SCALES * 2] = /* 2 subvectors    Q11*/
    {