📄 qpisf_2s.tab
字号:
/*-------------------------------------------------------------------*
* qpisf_2s.h
*-------------------------------------------------------------------*
* Quantization tables for two-stage of ISFs (split by 2 in 1st stage)
* Version whith prediction MU = 0.25
*-------------------------------------------------------------------*/
#define ORDER 16 /* order of linear prediction filter */
#define ISF_GAP 128 /* 50 Hz */
#define N_SURV 4
#define SIZE_BK1 256
#define SIZE_BK2 256
#define SIZE_BK21 64
#define SIZE_BK22 128
#define SIZE_BK23 128
#define SIZE_BK24 32
#define SIZE_BK25 32
#define SIZE_BK21_36b 128
#define SIZE_BK22_36b 128
#define SIZE_BK23_36b 64
/* means of ISFs */
static Word16 mean_isf[ORDER] = {
738, 1326, 2336, 3578, 4596, 5662, 6711, 7730,
8750, 9753, 10705, 11728, 12833, 13971, 15043, 4037};
/* 46 bits */
/*-------------------------------------------------------------------*
* isf codebooks: two-stage VQ with split-by-5 in 2nd stage *
* *
* codebook vector dimension number of vectors *
* ~~~~~~~~ ~~~~~~~~~~~~~~~~ ~~~~~~~~~~~~~~~~~ *
* 1_1 9 256 *
* 1_2 7 256 *
* 2_1 3 64 *
* 2_2 3 128 *
* 2_3 3 128 *
* 2_4 3 32 *
* 2_5 4 32 *
*-------------------------------------------------------------------*/
/*------------------------------------------------*
* 1st stage codebook; 1st split: isf0 to isf8
*------------------------------------------------*/
static Word16 dico1_isf[SIZE_BK1*9] = {
579, 1081, 1035, 390, 3, -263, -198, -82, 38,
18, -68, -12, 313, 761, 405, 249, 111, -76,
740, 1263, 1292, 1006, 997, 1019, 1017, 976, 923,
-91, 827, 948, 648, 613, 535, 522, 490, 421,
41, -44, -281, -472, 652, 534, 193, 135, -90,
41, -121, -356, -60, 663, 307, 61, -48, -344,
557, 946, 1049, 867, 846, 990, 1112, 1262, 1241,
-118, -204, 328, 512, 870, 793, 610, 402, 186,
156, 293, 74, -338, -475, -897, -594, -161, -497,
226, 131, -138, 307, 169, -271, -164, -387, -624,
62, -32, -61, -252, -541, -828, -1027, -523, -662,
102, -61, 141, 112, -270, -251, -541, 25, -150,
6, -132, -356, -686, -96, -322, -522, -31, -326,
-36, -209, -521, -229, 307, -132, -5, -99, -384,
60, -51, -237, -668, -973, -407, -708, -75, -172,
26, -138, -266, 111, -302, 43, -278, -356, -359,
570, 822, 496, -154, -312, -92, 137, 279, 371,
-146, 368, 409, 68, 6, 77, 167, 202, 162,
633, 898, 996, 756, 662, 683, 783, 909, 996,
-103, 294, 607, 415, 483, 462, 480, 431, 408,
-120, -338, -612, -524, 584, 331, 92, 433, 276,
-178, -293, -154, -41, 269, 100, -9, 213, 160,
830, 736, 278, 820, 1254, 686, 712, 1039, 473,
-218, -304, 463, 454, 397, 273, 202, 286, 273,
-232, 7, 6, -388, -472, -427, -378, -167, -100,
-294, -183, 134, -47, 101, -88, -84, -117, -3,
57, 17, -202, -634, -989, -1119, -533, 176, -36,
120, -28, 23, 111, -319, 318, -22, -77, 266,
-271, -464, -434, -658, -640, -385, -385, -99, -69,
-198, -259, -266, -44, -39, -139, -137, 171, 66,
9, -145, -377, -846, -1000, -111, -325, 342, 135,
-81, -286, -380, 192, -57, 307, 76, -24, -140,
677, 702, 247, 56, 249, 141, -105, -236, -99,
36, -39, -69, 348, 198, -93, 322, 91, -72,
503, 885, 1508, 1307, 1282, 1172, 1119, 1209, 1061,
416, 719, 989, 1227, 1001, 1052, 954, 741, 1044,
-127, -376, -657, 139, 623, 223, 501, 306, 220,
-113, -384, -796, 504, 438, 85, 213, -83, -194,
585, 1132, 1233, 1091, 1247, 1433, 1512, 1448, 1314,
-174, -422, 7, 1155, 1089, 1182, 1003, 945, 806,
8, -126, -317, -103, -351, -695, -98, -268, -537,
33, -103, -290, 167, -39, -407, 44, -208, -375,
104, -23, -64, -291, -637, -851, -1084, -61, -112,
-75, -306, -434, 218, -148, -354, -680, -133, -216,
-121, -377, -718, -97, -130, -361, -156, -379, -599,
-56, -254, -586, 235, 157, -214, 11, -260, -149,
-124, -267, -397, -580, -593, -527, -805, -385, 346,
-193, -440, -708, -351, -141, -255, -499, -147, -185,
448, 660, 494, 208, 509, 461, 338, 291, 149,
-223, 88, 335, 159, 212, 191, 286, 308, 205,
-31, 469, 803, 659, 619, 658, 843, 987, 1113,
-171, -242, 514, 362, 295, 524, 552, 694, 585,
-64, -308, -448, -21, 284, 786, 446, 289, 92,
-218, -390, -7, 169, 206, 330, 352, 408, 358,
-36, 702, 959, 859, 861, 1115, 1269, 1357, 1305,
-133, -341, -65, 678, 417, 440, 486, 518, 780,
33, -44, -191, -344, -461, -755, -201, 217, -31,
-353, -547, -44, 123, -61, -68, -79, 29, 60,
73, -57, -406, -766, -1243, -1203, 240, 400, 165,
-73, -282, -601, -213, -171, -375, 332, 35, -103,
-29, -207, -553, -476, -638, -908, 172, -22, -135,
-192, -239, -164, -103, -111, -47, 153, 125, 110,
-1, -203, -570, -1030, -1424, -535, 155, 1, 147,
-333, -653, -865, -197, -158, -21, -44, 95, 108,
389, 588, 490, 33, -237, -524, -628, -136, -260,
40, -177, -462, 453, 862, 380, 131, -130, -405,
842, 1678, 1841, 1549, 1474, 1256, 1082, 905, 742,
370, 1216, 1768, 1633, 1212, 636, 22, -330, 71,
-76, -281, -741, -742, 898, 619, 277, 71, -222,
-32, -265, -556, -25, 994, 682, 305, 126, -165,
73, 738, 893, 968, 993, 1768, 2273, 1840, 1391,
-69, -349, -585, 234, 1158, 903, 626, 510, 251,
-1, -99, -272, -210, -603, -351, -540, -811, -383,
-16, -230, -504, 410, 149, -205, -343, -651, -639,
103, -9, -227, -205, -562, -781, -1079, -1208, -156,
143, 63, -135, -67, -317, -602, -784, -1154, -640,
-144, -391, -674, -622, -200, -254, -660, -947, -395,
-40, -250, -625, 27, 543, 94, -131, -386, -673,
-123, -371, -757, -451, -564, -614, -415, -711, -35,
-116, -309, -593, -268, 239, -33, -338, -650, -135,
94, 251, 554, 57, -312, -423, -154, -57, 235,
-268, -71, 381, 114, -44, -87, 125, 173, 133,
1513, 1714, 1238, 534, 276, 315, 461, 459, 508,
-131, -19, 1149, 670, 486, 356, 309, 369, 296,
-223, -501, -899, -722, -70, 6, 131, 310, 394,
-99, -303, -517, 249, 64, -53, 135, -11, 453,
-147, -399, -730, -401, 817, 738, 802, 749, 575,
-154, -435, -739, 800, 593, 366, 529, 318, 326,
-224, 45, -39, -387, -515, -518, -608, -384, -321,
-315, -377, 143, -101, -113, -377, -177, -144, -12,
117, 40, -239, -651, -1051, -581, -737, -990, -328,
26, -50, -157, -23, -453, -283, -531, -546, 192,
-252, -501, -743, -589, -627, -499, -328, -118, -72,
-324, -494, -244, -306, -144, -177, -262, -135, -78,
-36, -234, -519, -961, -1290, -314, -479, -371, -45,
-95, -292, -535, -8, -300, 112, -164, -277, 198,
-99, -128, 880, 836, 579, 351, 23, -95, -217,
-27, -258, 124, 1011, 597, 425, 144, 7, -73,
421, 1293, 1640, 1623, 1742, 1617, 1499, 1284, 1006,
-95, 752, 1680, 1569, 1618, 1436, 1200, 980, 712,
-69, -300, -683, -435, 1132, 899, 504, 332, 109,
-74, -323, -637, 563, 1074, 608, 371, 105, -49,
-78, 831, 1194, 1110, 1378, 1481, 1492, 1365, 1217,
-259, -121, 1440, 1334, 1628, 1490, 1438, 1223, 933,
-82, -306, -613, -222, -378, -675, -545, -671, -845,
53, -124, -347, 422, 52, -125, -270, -529, 9,
79, -89, -320, -662, -999, -1199, -1243, -676, -297,
-68, -273, -611, 137, -146, -397, -627, -845, -220,
-112, -346, -797, -826, 234, -132, -188, -278, -522,
-159, -405, -734, -419, 293, 74, -167, -167, 184,
-153, -437, -833, -1080, -336, -472, -561, -340, -253,
-169, -423, -820, -904, -131, -19, -346, -604, 31,
33, -31, 312, 62, -148, 49, -59, 564, 486,
-306, -333, 194, -44, 67, 72, 147, 205, 243,
-207, -49, 1360, 983, 969, 991, 1014, 1110, 973,
-211, -172, 883, 627, 711, 674, 705, 798, 746,
-88, -325, -763, -974, 687, 908, 514, 382, 172,
-292, -612, -805, 63, 131, 270, 259, 352, 348,
-235, -84, 955, 818, 1120, 1289, 1559, 1480, 1285,
-180, -461, -614, 657, 691, 745, 854, 783, 713,
-97, -309, -477, -614, -777, -734, -768, -526, -472,
-344, -476, -35, -169, 49, -77, -150, -240, -141,
-52, -268, -639, -919, -1278, -1113, -342, -333, -151,
-68, -242, -585, -73, -209, -478, -159, -429, 133,
-197, -499, -1005, -1268, -272, -224, -105, -67, 17,
-363, -618, -414, -116, -62, 20, 10, 116, 108,
-195, -475, -906, -1260, -891, -441, -277, -142, -28,
-226, -519, -950, -700, -275, -266, -116, -105, 82,
404, 511, 520, 327, 17, -194, -333, -536, -586,
-114, -130, 276, 237, 204, 342, 135, -16, -111,
670, 1208, 1168, 860, 742, 601, 528, 403, 309,
397, 621, 966, 752, 579, 398, 400, 329, 252,
191, 180, -137, -467, 272, 106, -95, 17, -192,
-80, -290, -626, 194, 598, 196, 21, -281, 77,
510, 864, 1108, 807, 939, 902, 925, 717, 481,
137, 367, 534, 764, 670, 382, 296, 153, 84,
303, 497, 144, -85, -125, -539, -482, -464, -764,
233, 347, 68, -147, 169, -210, -242, -226, -482,
307, 422, 154, -175, -386, -722, -724, -904, -1015,
309, 308, 160, -60, -470, -420, -598, -791, -219,
68, 121, -137, -560, -146, -446, -515, -494, -729,
130, 53, -227, 46, 474, 32, -161, -192, -490,
213, 164, -71, -465, -876, -161, -456, -587, -48,
218, 117, 39, 177, -194, -88, -226, -418, 50,
210, 547, 569, 279, 121, -44, -50, 10, -84,
58, 140, 182, -5, 267, 117, 106, 211, 198,
539, 835, 913, 719, 617, 544, 591, 565, 642,
153, 559, 872, 460, 222, 108, 188, 180, 183,
158, 119, 284, -153, -271, 229, 87, 110, -57,
-183, 82, 118, 21, 13, 40, 118, 191, 185,
162, 889, 654, 108, -34, 244, 488, 561, 532,
163, 56, 609, 341, 50, 329, 68, 266, 218,
100, 206, 18, -304, -107, -436, -487, -65, -306,
-86, 154, 134, -30, -45, -73, -104, -80, -96,
245, 330, 10, -440, -849, -1082, 79, 40, -265,
196, 372, 272, -181, -493, -389, 275, 80, -59,
2, -12, -246, -505, -100, -436, 21, -187, -431,
-221, -48, 36, -271, -186, -147, -109, 26, 71,
213, 140, 72, -351, -620, -84, -363, 69, 46,
91, 167, -3, -95, -99, -105, -48, 114, 147,
259, 249, 172, 607, 406, 52, 59, -189, -320,
115, -85, -54, 574, 128, 226, -59, -253, 130,
-62, 1033, 1308, 1035, 1127, 1098, 1029, 961, 823,
39, 364, 757, 940, 728, 660, 659, 583, 770,
-115, -338, -760, -471, 394, 37, 441, 178, 6,
-57, -305, -525, 796, 453, 188, -4, -114, 248,
71, 444, 797, 731, 1096, 1157, 1222, 1029, 811,
135, 359, 551, 425, 749, 815, 874, 704, 502,
132, 247, 0, -206, -449, -750, -258, -514, -633,
248, 249, 91, 121, -195, -499, -90, -282, -435,
78, 20, -277, -623, -983, -1224, -415, -458, -639,
347, 509, 208, -179, -464, -728, -76, -237, -486,
-103, -343, -756, -713, -265, -609, -191, -398, -636,
-121, -383, -749, 567, 252, -36, -354, -417, -50,
204, 100, -149, -650, -1081, -47, -7, -263, 111,
-46, -180, -267, -324, -562, -394, -692, 398, 292,
482, 670, 683, 624, 442, 165, 116, 36, -149,
108, 247, 291, 247, 355, 122, 109, 224, 296,
-14, 945, 990, 801, 755, 815, 847, 913, 892,
292, 349, 725, 482, 388, 329, 429, 620, 667,
-34, 197, 213, -127, 84, 494, 620, 575, 375,
126, 207, 172, 167, 362, 202, 296, 395, 455,
-6, 250, 539, 467, 636, 801, 1149, 1287, 1118,
27, 240, 369, 280, 440, 411, 634, 892, 953,
159, 170, -58, -395, -797, -690, 77, -211, -334,
-5, -28, -13, -74, -335, -603, 300, 88, -205,
82, -33, -364, -698, -1203, -1153, 110, -146, -289,
113, 1, -243, -588, -994, -496, 414, 160, 42,
-56, -247, -440, -693, -996, -479, 11, -178, -357,
-151, -353, -327, -211, -340, 141, 65, 425, 453,
34, -169, -455, -932, -1215, 138, 499, 256, 324,
68, 139, -15, -547, -478, 17, 306, 502, 481,
-32, -134, 445, 129, -143, -244, -503, -507, -599,
61, -140, -345, 496, 458, -2, 20, -227, -514,
394, 1765, 1666, 1339, 1117, 806, 642, 479, 380,
215, 519, 920, 1053, 1090, 791, 528, 290, 155,
-54, -233, -647, -602, 639, 294, -2, -167, -442,
-78, -315, -791, -113, 820, 403, 158, -116, -356,
529, 1851, 2003, 1228, 622, -41, -416, 344, 819,
-105, -379, -236, 1224, 893, 749, 568, 356, 214,
-17, -199, -144, 50, -283, -247, -578, -846, -1087,
69, -11, -381, -206, 209, -284, -387, -416, -716,
39, -5, -145, -374, -682, -909, -1074, -1169, -1066,
287, 226, 67, -221, -662, -171, -421, -642, -707,
-132, -348, -538, -448, -20, -4, -354, -748, -933,
4, -75, -289, -598, 317, 52, -208, -297, -559,
-88, -264, -358, -589, -631, -248, -523, -822, -1071,
70, -8, 54, -314, -515, 92, -146, -274, -493,
199, 62, 391, 158, -141, 71, -219, -203, -207,
152, 40, 329, 162, -29, 48, -149, 108, 127,
635, 1058, 883, 492, 372, 312, 317, 274, 241,
267, 722, 1256, 882, 625, 248, 8, -81, -60,
-58, -138, -291, -600, -12, -2, -39, 147, 117,
-107, -345, -513, 459, 76, 92, -272, 388, 262,
362, 516, 203, -409, -716, -831, -331, 185, 209,
-117, -391, -298, 671, 292, 538, 257, 166, -38,
-102, -319, -194, -283, -573, -262, -579, -219, -444,
-235, 78, 11, -168, -101, -229, -263, -321, -123,
70, 50, -170, -599, -996, -588, -263, -516, -455,
394, 363, 229, -136, -538, 21, -183, -348, -201,
-124, -368, -640, -879, -847, -209, -409, -494, -515,
-127, -341, -541, -425, -510, -10, -252, -473, -291,
84, -69, -201, -676, -868, 103, -311, -132, -320,
5, -173, -188, -297, -628, 197, -57, 7, -11,
49, -160, 56, 558, 111, 33, -311, -440, -463,
-1, -246, -307, 862, 453, 139, -170, -355, -232,
279, 966, 1642, 1478, 1463, 1123, 795, 525, 339,
-197, -38, 1702, 1331, 1252, 950, 692, 504, 426,
-108, -344, -861, -1172, 444, 354, 88, -46, -220,
-53, -321, -494, 1113, 744, 364, 198, -34, -75,
457, 955, 1177, 1214, 1427, 1457, 1345, 917, 539,
-69, 199, 897, 1140, 1343, 1183, 977, 742, 522,
122, 44, -269, 27, -155, -562, -307, -590, -773,
154, 42, -160, 252, -129, -305, -471, -733, -371,
135, 185, -82, -416, -722, -913, -504, -743, -880,
149, 214, -84, -329, -680, -835, -426, -661, -81,
-128, -380, -735, -998, -337, 17, -182, -467, -697,
-84, -290, -510, -592, 13, 440, 154, -38, -279,
70, -61, -246, -727, -1047, -80, -381, -535, -704,
178, -2, -146, -670, -938, 482, 138, 63, 65,
-11, 15, 772, 443, 142, -20, -209, -126, -161,
-32, -249, 95, 552, 124, 30, -343, 82, -86,
148, 751, 1515, 1105, 867, 606, 474, 448, 399,
-163, -257, 899, 1097, 906, 751, 502, 390, 294,
-51, -258, -447, -806, -368, 763, 464, 364, 183,
-166, -374, -367, 87, 35, 399, 418, 856, 833,
-205, -310, 588, 778, 785, 1065, 1118, 1245, 1157,
-173, -312, 107, 345, 400, 790, 870, 1113, 1001,
-7, -120, -387, -410, -614, -943, -226, -384, -491,
-203, -288, -51, -331, -90, -178, -408, -573, -338,
56, -29, -273, -627, -1041, -798, -247, -467, 148,
66, -2, -205, -205, -575, -349, -57, -352, -58,
-45, -225, -471, -924, -497, 77, -32, 44, -135,
-277, -491, -497, -502, -424, -202, -137, 77, 96,
26, -179, -469, -1008, -1260, 262, -35, -132, -259,
-66, -232, -447, -533, -789, -191, -100, -267, 364};
/*------------------------------------------------*
* 1st stage codebook; 2nd split: isf9 to isf15
*------------------------------------------------*/
static Word16 dico2_isf[SIZE_BK2*7] = {
1357, 1313, 1136, 784, 438, 181, 145,
636, 648, 667, 568, 442, 217, 362,
427, 440, 674, 524, 332, 117, -417,
121, 295, 468, 465, 230, 44, -221,
-147, -240, 149, 80, 390, 278, 106,
-418, -556, 552, 511, 235, 144, -95,
43, 193, 274, 150, 67, 34, -273,
-43, -126, 171, 416, 282, 63, -354,
-372, -86, -344, -108, -94, -182, -89,
-600, -840, -200, 465, 258, -11, -253,
-48, 329, 97, -290, -543, -795, -354,
-570, -117, 187, 10, -133, -416, -76,
-618, -129, -247, -371, 45, -76, 277,
-1022, -1079, 126, 474, 254, 127, 52,
-281, 76, -167, -361, -283, -551, -283,
-119, -52, -1, 134, -32, -204, -415,
1064, 827, 637, 684, 464, 209, 12,
482, 416, 449, 371, 335, 294, 194,
719, 576, 365, 135, 113, 91, -199,
298, 176, 493, 366, 194, 163, 36,
-35, -236, -259, -36, -4, 99, 152,
-98, -306, -27, 228, 90, 111, -86,
91, 13, -211, -258, -106, 86, -64,
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -