7636 lines · 329.4 KB · C
RawDownload
/* * DCA compatible decoder data * Copyright (C) 2004 Gildas Bazin * Copyright (c) 2006 Benjamin Larsson * * This file is part of FFmpeg. * * FFmpeg is free software; you can redistribute it and/or * modify it under the terms of the GNU Lesser General Public * License as published by the Free Software Foundation; either * version 2.1 of the License, or (at your option) any later version. * * FFmpeg is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU * Lesser General Public License for more details. * * You should have received a copy of the GNU Lesser General Public * License along with FFmpeg; if not, write to the Free Software * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA */ #ifndef AVCODEC_DCADATA_H#define AVCODEC_DCADATA_H #include <stdint.h>#include "libavutil/mem.h" /* Generic tables */ static const uint32_t dca_sample_rates[16] ={    0, 8000, 16000, 32000, 0, 0, 11025, 22050, 44100, 0, 0,    12000, 24000, 48000, 96000, 192000}; static const uint32_t dca_bit_rates[32] ={    32000, 56000, 64000, 96000, 112000, 128000,    192000, 224000, 256000, 320000, 384000,    448000, 512000, 576000, 640000, 768000,    896000, 1024000, 1152000, 1280000, 1344000,    1408000, 1411200, 1472000, 1536000, 1920000,    2048000, 3072000, 3840000, 1/*open*/, 2/*variable*/, 3/*lossless*/}; static const uint8_t dca_channels[16] ={    1, 2, 2, 2, 2, 3, 3, 4, 4, 5, 6, 6, 6, 7, 8, 8}; static const uint8_t dca_bits_per_sample[7] ={    16, 16, 20, 20, 0, 24, 24};  /* Adpcm data */ /* 16bits signed fractional Q13 binary codes */static const int16_t adpcm_vb[4096][4] ={  {   9928,  -2618,  -1093,  -1263 },  {  11077,  -2876,  -1747,   -308 },  {  10503,  -1082,  -1426,  -1167 },  {   9337,  -2403,  -1495,    274 },  {  10698,  -2529,   -532,  -1122 },  {  10368,  -3974,  -1264,   -750 },  {  10070,  -3667,    346,    863 },  {  10278,  -3093,    311,   -576 },  {   9894,  -1330,  -1428,   -860 },  {  10544,  -1923,  -1058,   -971 },  {  10996,  -1632,   -841,  -1404 },  {  11832,  -3465,   1658,  -1990 },  {  10852,   -688,  -2658,   -499 },  {  10546,  -1749,   -147,  -1733 },  {  10801,  -1004,   -708,  -1453 },  {  10588,   -441,  -2113,   -952 },  {  10141,  -3331,   -582,  -1432 },  {   9608,  -2590,    383,    258 },  {  11422,  -3265,    229,  -1544 },  {  10460,  -1338,   -713,  -1568 },  {  10306,  -1721,  -1660,   -603 },  {   9580,  -1812,  -1235,  -1061 },  {  11471,  -2285,  -1617,   -607 },  {  10081,  -2225,  -1408,   -868 },  {  10715,  -2624,  -1367,   -704 },  {  10616,  -1871,  -2770,    -35 },  {   9352,  -2340,  -1024,  -1566 },  {  11065,  -1458,  -1926,   -735 },  {  11334,  -2056,  -1041,  -1144 },  {   9825,  -2048,   -794,  -1536 },  {  11850,  -2695,  -1123,   -867 },  {  10654,  -2226,  -1891,   -373 },  {  10024,  -1557,   -808,  -1069 },  {  11142,  -1266,  -3238,    128 },  {  11729,  -3282,   -514,  -1011 },  {  11402,  -2094,  -2335,   -189 },  {  10195,  -3658,    181,  -1875 },  {  11431,  -2626,   -404,  -1377 },  {  11001,  -3868,   -619,  -1077 },  {  10894,  -2559,    274,  -1758 },  {   9633,  -1482,  -2253,   -773 },  {  11245,  -3321,    830,  -1972 },  {   9768,  -2701,   -199,  -1859 },  {  10500,  -2042,    525,  -2043 },  {  11669,  -4069,    293,  -1468 },  {   9192,  -1991,   -583,    -61 },  {  10057,  -3220,  -2015,   -473 },  {   9497,  -2315,  -2490,   -467 },  {  10455,  -3069,  -1194,  -1007 },  {   9994,  -1936,    -60,  -1225 },  {   9295,  -2156,  -1761,  -1134 },  {  10085,  -3748,  -1026,    197 },  {   9334,  -2360,    804,   -351 },  {  11561,  -2553,   1352,  -2313 },  {  12837,  -3998,   1195,  -1958 },  {  10114,  -1100,  -2414,   -394 },  {   9341,  -2530,    315,    755 },  {  10131,  -3164,   1411,   -674 },  {   9535,   -905,  -1551,    579 },  {  11717,  -1519,  -3051,     91 },  {   9824,  -2911,  -2775,    192 },  {   9662,  -2934,   -561,   1450 },  {  11085,  -3392,  -1298,   -659 },  {   8955,  -2102,  -1899,    703 },  {   8607,  -1742,  -4348,    814 },  {   7640,  -2063,  -3617,     52 },  {   7074,   -826,  -4325,   4375 },  {   7714,    584,  -4238,   1927 },  {   6355,   -952,  -4912,   3127 },  {   7069,   -660,  -6413,   4087 },  {   8313,   -132,  -2964,   -876 },  {   6952,  -1422,  -3962,    -24 },  {   9299,   -734,  -3088,   -263 },  {   9484,   -574,  -4513,    466 },  {   7246,    -91,  -3735,   -704 },  {   8325,  -1417,  -3090,   -530 },  {   6469,  -1226,  -4757,    829 },  {   6652,   -368,  -5682,   1393 },  {   7971,  -1278,  -2284,   1205 },  {   7229,   -699,  -3556,   1840 },  {   7994,   1284,  -2729,    732 },  {   9005,   -698,  -4522,   2189 },  {   6963,    197,  -2727,    380 },  {   8527,    135,  -3991,   -213 },  {   8840,    934,  -3014,   -567 },  {  10125,    418,  -3284,   -371 },  {   6367,    361,  -2318,   2554 },  {   7892,    172,  -5247,   4673 },  {   6674,    387,  -5424,   4398 },  {   6240,    684,  -4047,   1219 },  {  11170,   -794,  -5081,   1195 },  {  11765,   -648,  -6265,   2052 },  {  10845,   -775,  -3837,    366 },  {  12496,   -689,  -8260,   3562 },  {   7893,  -1166,  -4972,    988 },  {   8592,   1052,  -5986,   3087 },  {   7277,   1874,  -5685,   3579 },  {   6900,   2016,  -4809,   3491 },  {   8530,  -2405,  -3250,   1986 },  {   9426,    494,  -7067,   5038 },  {  10285,    564,  -8210,   5370 },  {   8749,  -2207,  -3980,   2852 },  {   9653,  -2686,  -4300,   1400 },  {   9770,  -2286,  -5663,   4233 },  {   8490,     -4,  -7048,   4496 },  {   7697,  -1209,  -5328,   3183 },  {   6451,    801,  -4324,   -554 },  {   7387,   1806,  -5265,    545 },  {   7450,  -2302,  -4445,   1418 },  {   8817,  -1370,  -5827,   2168 },  {  10324,  -2406,  -5629,   2579 },  {   8863,  -2578,  -3537,    467 },  {   6901,  -1624,  -3169,   3392 },  {   7846,    156,  -6948,   3381 },  {   7928,  -1115,  -5972,   4816 },  {   6089,   -599,  -4368,   -320 },  {   7833,   1246,  -3960,   -621 },  {   8931,   2521,  -6768,   2052 },  {   8900,   1944,  -4126,     40 },  {   7661,    -34,  -2855,   2480 },  {   5873,    474,  -3262,   3712 },  {   7535,   -234,  -4699,    216 },  {   5856,    143,  -5142,     73 },  {   8944,   -106,  -5874,   3663 },  {   7134,    426,  -5879,   2895 },  {  10199,   1011,  -4762,    369 },  {   8454,    264,  -5971,   1291 },  {   7822,  -2449,  -4333,   4540 },  {   6200,  -2758,  -2632,   1497 },  {   6070,  -4315,  -2699,    414 },  {   7047,  -3739,  -3210,   1060 },  {   5675,  -3801,  -2717,   -407 },  {   4789,  -4063,  -2628,   -744 },  {   4023,  -3366,  -3133,   -726 },  {   4296,  -2407,  -3381,   -513 },  {   4388,  -2931,  -2820,   1512 },  {   4559,  -4233,  -1941,   1976 },  {   6702,  -3208,  -1755,   1680 },  {   4416,  -3521,  -1052,   2984 },  {   7154,  -4266,  -1203,   3732 },  {   3625,  -4242,  -3244,   1395 },  {   6518,  -2856,  -1304,   2887 },  {   6170,  -1949,  -3014,   3973 },  {   5189,  -2451,  -4020,   3477 },  {   6218,  -2988,  -1921,   3844 },  {   4827,  -3688,  -1928,   3343 },  {   6668,  -3991,  -2805,   3095 },  {   5297,  -3115,  -3684,   2390 },  {   5354,  -4614,  -2662,   1504 },  {   4196,  -3091,  -4147,   1135 },  {   3540,  -2893,  -4007,    100 },  {   5569,  -1602,  -4007,   1909 },  {   4341,  -2091,  -4272,    252 },  {   5559,  -2878,  -3832,    498 },  {   4548,  -4479,  -2898,    -27 },  {   5176,  -2494,  -4635,   1476 },  {   3294,  -3485,  -3738,    716 },  {   4920,  -1229,  -4195,   -365 },  {   3257,  -3518,  -3349,   2862 },  {   5286,  -1948,  -3485,   -778 },  {   6502,  -3051,   -152,   2854 },  {   5864,  -4192,  -1076,   3451 },  {   4656,  -3122,  -3448,    179 },  {   5907,   -754,  -1596,   3116 },  {   7229,  -3680,  -1590,   2892 },  {   5107,  -3888,  -3364,    806 },  {   6764,  -2635,  -3450,    134 },  {   5258,  -2827,  -2844,  -1052 },  {   5798,  -1725,  -4305,    205 },  {   5404,  -1213,  -3362,    449 },  {   6224,  -2738,  -3046,   -581 },  {   4223,  -2438,  -2725,   3745 },  {   4751,  -3411,  -2123,    116 },  {   3868,  -3000,  -3954,   2297 },  {   6819,  -2899,  -4277,   2825 },  {   4207,  -4754,  -2808,    865 },  {   4804,  -1494,  -1997,   4688 },  {   5282,  -2213,   -548,   3559 },  {   5580,  -1912,   -566,   4370 },  {   6168,  -2857,   -672,   4053 },  {   6583,  -4515,  -2850,   1670 },  {   6511,  -3093,  -3988,   1421 },  {   4646,  -1790,  -1443,   3650 },  {   5915,   -924,  -2020,    896 },  {   7814,  -4181,  -3152,   2007 },  {   6190,  -2238,  -4817,   2279 },  {   4737,  -4034,  -3288,   1835 },  {   8161,  -3633,  -3423,   3137 },  {   7415,  -2351,  -2088,   4290 },  {   4106,  -2517,    -62,   2905 },  {   4909,  -3145,   -614,   4112 },  {   4938,  -3281,   -397,   1100 },  {   -173,    919,   1589,  -5363 },  {    -13,    796,   -295,  -6655 },  {  -1860,   -829,   1141,  -4555 },  {   2298,   -838,   -664,  -5005 },  {   -884,  -1097,   2074,  -4613 },  {   -101,    281,   2846,  -4535 },  {   1166,    453,   2429,  -5910 },  {    879,   -664,   2370,  -5452 },  {   1415,   -370,  -1699,  -4727 },  {  -1413,   1277,   -669,  -6649 },  {   2133,    304,   -968,  -4624 },  {    380,    586,  -2087,  -4892 },  {   1336,    275,    -82,  -5789 },  {  -2459,   1057,    -34,  -5416 },  {   2278,  -1758,    866,  -5653 },  {   1945,  -2295,   -149,  -5302 },  {   1287,  -3525,    996,  -5255 },  {   2297,    803,   1177,  -6067 },  {    187,   -180,   -619,  -6202 },  {   -793,  -2537,   1554,  -5057 },  {  -2703,   -204,   -629,  -5853 },  {  -1007,   -146,    313,  -5582 },  {    830,    357,    869,  -6363 },  {   -228,   -575,  -3177,  -4433 },  {  -1001,  -1553,   -142,  -5708 },  {  -1644,   1683,   1721,  -4533 },  {    893,   1924,    -15,  -5791 },  {   2195,   2061,   -262,  -5471 },  {   3031,    270,    311,  -5096 },  {   1912,   1638,  -1523,  -4677 },  {  -3142,    -55,    253,  -4914 },  {    356,  -1680,    343,  -6123 },  {  -2241,  -1734,   -976,  -5939 },  {  -2196,  -2893,    547,  -4938 },  {  -1245,    126,  -1916,  -5419 },  {   -249,  -3755,  -1422,  -5594 },  {    575,  -2683,  -1926,  -4566 },  {   -762,   1885,    192,  -5880 },  {   -811,  -2562,  -1068,  -6013 },  {  -2264,  -3086,   -976,  -4775 },  {     70,  -1215,   2880,  -4410 },  {    714,  -3760,   2916,  -4691 },  {   -244,  -3404,   1740,  -4493 },  {    684,  -5137,   -328,  -5608 },  {   -529,  -3825,  -1786,  -4535 },  {   -713,  -4743,  -1118,  -5546 },  {   2718,  -3788,   1798,  -5708 },  {  -1639,  -3679,  -1564,  -6095 },  {   1693,  -2642,  -1389,  -4539 },  {    505,  -1573,  -1651,  -4878 },  {   -835,  -2256,  -1941,  -5352 },  {   1464,   -411,   1993,  -6441 },  {    493,  -3184,   -145,  -6148 },  {  -1413,    499,  -1617,  -6479 },  {   -294,   1722,  -1419,  -5725 },  {  -2937,  -1528,   -175,  -4624 },  {   -594,  -5911,    -56,  -6146 },  {   -300,  -4275,   1156,  -5947 },  {    552,  -2643,   2669,  -3959 },  {    905,  -4158,   1789,  -5809 },  {   1336,  -2009,   2108,  -5903 },  {   1555,  -3600,   1110,  -6759 },  {  -1294,  -3464,     77,  -6084 },  {  -1139,  -4006,  -1270,  -4181 },  {  -5094,  -3296,   1092,  -2847 },  {  -5503,  -2883,   1984,  -2067 },  {  -4671,  -4218,  -1417,  -4132 },  {  -3763,  -3818,   1262,  -3082 },  {  -5132,  -3430,   2928,   -728 },  {  -5957,  -2877,   1251,  -2446 },  {  -4425,  -2319,   -212,  -4276 },  {  -6201,  -1993,   1774,  -2182 },  {  -5500,  -3836,   2201,  -1396 },  {  -6934,  -2334,   2366,  -1293 },  {  -6124,  -4140,   1337,  -1977 },  {  -6553,  -4186,   1756,  -1325 },  {  -5126,  -1258,    744,  -3656 },  {  -5167,  -1390,   1581,  -2895 },  {  -4525,  -3398,   2429,  -1865 },  {  -4076,  -3183,   2027,  -2510 },  {  -6191,  -3274,   1838,  -1814 },  {  -4454,  -2753,   2723,  -1185 },  {  -6655,  -4797,    251,  -2595 },  {  -6332,  -2232,   1832,    217 },  {  -5869,  -1698,    134,    340 },  {  -6614,  -1045,   2126,  -1932 },  {  -4859,  -2107,   2010,  -2435 },  {  -6274,  -1622,   2808,  -1374 },  {  -3119,  -3209,    521,  -3988 },  {  -5676,  -2082,   -420,  -2711 },  {  -7073,  -3623,    696,  -2343 },  {  -5986,  -4224,    572,  -2454 },  {  -4340,  -4521,    882,  -2771 },  {  -6178,  -1933,    535,  -1444 },  {  -4923,  -4163,   1744,  -2066 },  {  -6410,  -1519,   1058,  -2683 },  {  -5077,  -1185,    856,  -2216 },  {  -7091,  -2444,    687,  -2597 },  {  -5284,  -2165,   3239,   -993 },  {  -4763,  -1497,    197,  -3179 },  {  -4128,  -4958,   -396,  -3578 },  {  -5054,  -3878,   -647,  -2672 },  {  -7005,  -3348,   1679,  -1579 },  {  -5767,  -1017,   2582,  -1915 },  {  -7069,  -2787,   1331,  -2070 },  {  -5532,  -2296,    706,  -2950 },  {  -5059,  -3543,   -821,  -3637 },  {  -6639,  -1835,   1016,   -696 },  {  -5611,  -5220,   -694,  -3371 },  {  -5994,  -2803,   2933,   -729 },  {  -5948,   -619,   1596,  -2676 },  {  -5486,  -4419,    153,  -3265 },  {  -4329,  -3440,   1646,  -1439 },  {  -4083,  -3978,    177,  -3569 },  {  -4289,  -2599,   1224,  -3075 },  {  -5707,  -3253,   1912,   -759 },  {  -6606,  -3437,   2562,   -571 },  {  -5254,  -2444,    769,   -352 },  {  -6545,  -3154,    582,  -1103 },  {  -5328,  -2241,   2566,  -1775 },  {  -7216,  -1936,   1538,  -1983 },  {  -3730,  -2451,    426,  -3869 },  {  -5110,  -1385,   2031,  -1169 },  {  -6470,  -2715,    269,  -3123 },  {  -5806,  -2480,    -97,  -3832 },  {  -3683,  -4916,   -490,  -4330 },  {  -6341,  -2083,   -669,   -115 },  {  -4913,  -4079,   -837,  -4673 },  {  -3274,  -2497,   2334,  -2652 },  {  -1286,  -1731,   2550,  -3756 },  {  -3375,   -877,    926,  -3977 },  {  -2525,  -2079,   2879,  -2625 },  {  -5308,   -504,   3111,  -1607 },  {  -4904,    460,   4093,  -1232 },  {  -1993,   1616,   4656,  -1913 },  {  -3481,  -1176,   3119,  -2236 },  {  -4132,  -1502,   2339,  -2545 },  {  -2542,   1151,   3569,  -2550 },  {  -4381,    430,   3147,  -2082 },  {  -3888,    867,   3899,  -1657 },  {  -2861,   1290,   4202,  -1979 },  {  -3893,   -253,   2363,  -2764 },  {  -1705,    688,   3827,  -2923 },  {  -2223,   2312,   3700,  -3148 },  {  -1986,   -720,   5021,   -795 },  {  -3177,    242,   1952,  -3352 },  {  -1854,   1509,   2528,  -3815 },  {  -3173,     97,   5019,   -706 },  {  -2689,   -145,   1375,  -3915 },  {  -4838,   -385,   2488,  -2427 },  {  -4557,   -355,   1603,  -3060 },  {  -3522,   1832,   3292,  -2674 },  {  -3769,    780,   2378,  -2704 },  {  -4323,  -1932,   3414,  -1169 },  {  -2740,   1158,   2729,  -3273 },  {  -3647,    210,   1464,  -2892 },  {  -2342,  -2097,   1513,  -3727 },  {  -4422,  -1242,   3130,  -1833 },  {  -1308,  -1039,   4290,  -1875 },  {  -1754,  -2535,   3298,  -2314 },  {  -4102,   -186,   4037,  -1094 },  {  -1008,   1570,   3290,    171 },  {  -3322,  -2621,   2791,  -1536 },  {  -2539,  -2597,   3442,  -1672 },  {  -3411,  -2015,   3670,  -1174 },  {  -2097,    730,   5581,  -1399 },  {  -1510,    -74,   4820,  -2004 },  {  -4086,   -868,   4425,   -771 },  {   -956,   -986,   3640,  -2925 },  {  -2087,  -1250,   3464,  -2458 },  {  -3308,  -2411,   1334,  -3667 },  {  -2264,   -389,   4004,  -1854 },  {   -680,    239,   4058,  -3388 },  {  -1357,     30,   2993,  -3658 },  {  -3601,   -552,   1177,  -1136 },  {  -2641,    442,   4374,  -1625 },  {  -2525,    770,   1640,  -3895 },  {  -3172,   -891,   3893,  -1608 },  {  -2996,     13,   3277,  -2414 },  {   -899,   1055,   4470,  -2501 },  {   -422,   -584,   3475,  -3787 },  {  -1978,   -593,   2566,  -3415 },  {  -3150,  -1280,   2362,  -3047 },  {  -3592,    224,   1026,  -3932 },  {  -4840,  -1189,   3633,   -879 },  {  -3952,  -2255,   2916,  -1826 },  {  -1695,     28,   1810,   -349 },  {   -745,  -2484,   3308,  -3293 },  {  -1016,   1563,   5365,  -1823 },  {  -2172,  -1787,   4266,  -1287 },  {  -1241,  -1951,   3982,  -2413 },  {  -2009,  -2639,   2330,  -3480 },  {   5105,  -1618,  -2588,  -2015 },  {   6497,  -1523,  -3218,   -910 },  {   6526,  -2305,  -2029,  -1790 },  {   5289,    -99,  -3436,   -400 },  {   5781,  -1623,  -1577,  -2617 },  {   5259,   -670,  -3125,  -1700 },  {   6343,  -1256,   -331,  -3222 },  {   7967,   -678,  -2195,  -1462 },  {   6119,   -695,  -2988,  -1538 },  {   6108,    494,  -3359,  -1548 },  {   5067,    969,  -2328,  -2707 },  {   7595,   -435,  -1497,  -2056 },  {   6929,   -719,  -2420,  -1665 },  {   5190,    584,  -2982,  -2103 },  {   6106,   -444,  -1411,  -2739 },  {   5584,    289,  -1804,  -2803 },  {   5276,    227,  -1180,  -3361 },  {   7544,  -1525,  -1834,  -1725 },  {   5986,  -1470,  -2606,  -1701 },  {   5096,   -765,  -1712,  -3006 },  {   5423,   -149,  -3933,  -1157 },  {   7651,     26,  -2445,  -1507 },  {   4745,   -464,  -1735,  -2362 },  {   5352,  -1011,  -1094,  -1999 },  {   6300,   -672,   -542,  -1950 },  {   6675,  -1020,  -1318,  -1059 },  {   7218,  -2036,   -603,  -2462 },  {   7755,  -1514,  -2430,  -1229 },  {   5041,    449,  -1056,  -2405 },  {   6710,  -2277,  -1344,  -2284 },  {   6824,  -1347,  -2254,    251 },  {   6068,  -1857,   -983,  -1316 },  {   5603,  -2177,  -2730,  -1477 },  {   5838,  -1059,  -3604,   -970 },  {   5076,   -789,   -335,  -2413 },  {   6191,  -1634,  -2000,  -2129 },  {   5092,  -1292,  -2543,  -1034 },  {   5305,    435,  -1710,  -1850 },  {   6140,    561,  -2176,  -2380 },  {   6752,    348,  -2496,  -1890 },  {   6405,    273,  -1098,  -2778 },  {   6942,  -1340,   -496,  -1381 },  {   5238,   -687,  -2454,  -2349 },  {   6959,   -882,  -1833,  -2061 },  {   6292,   -253,  -2125,  -2199 },  {   5838,   -574,   -759,  -3215 },  {   6954,  -1484,   -640,  -2771 },  {   7498,  -1706,  -1210,  -2154 },  {   6772,  -1003,  -1235,  -2532 },  {   6014,    228,  -2154,  -1108 },  {   6943,  -2178,  -2644,  -1122 },  {   7262,   -763,  -3056,  -1090 },  {   6273,  -1478,  -1072,    177 },  {   4734,    425,  -2912,    357 },

Lines 1–500 of 7636.

Keyboard shortcuts

General

Show keyboard shortcuts
?
Focus the current search
/

Issues and pull requests

Open filters
f

Issues, pull requests and Inbox

Select next item
j↓
Select previous item
k↑
Open selected item
Enter
Dismiss filters or clear selection
Esc

Repository code

Go to file
t