Changes quantization values for 10/12 bit

Improves performance by eliminating some values at the very low
quantizer range, because entropy coding is not too efficient
at this range.

Change-Id: I3cacc7352dc2e58cfe8448d89a693e992ef93ee7
This commit is contained in:
Deb Mukherjee
2014-07-07 11:59:27 -07:00
parent 91c222491e
commit d5f6cd1b38

View File

@@ -50,73 +50,73 @@ static const int16_t dc_qlookup[QINDEX_RANGE] = {
#if CONFIG_VP9_HIGH && CONFIG_HIGH_TRANSFORMS && CONFIG_HIGH_QUANT #if CONFIG_VP9_HIGH && CONFIG_HIGH_TRANSFORMS && CONFIG_HIGH_QUANT
static const int16_t dc_qlookup_10[QINDEX_RANGE] = { static const int16_t dc_qlookup_10[QINDEX_RANGE] = {
4, 8, 8, 9, 10, 11, 12, 13, 8, 15, 17, 19, 21, 23, 25, 27,
13, 14, 15, 16, 17, 18, 19, 20, 29, 31, 33, 35, 36, 38, 40, 42,
21, 22, 22, 23, 24, 25, 26, 27, 44, 47, 49, 51, 53, 55, 57, 59,
28, 29, 30, 30, 31, 32, 33, 34, 61, 63, 65, 67, 70, 72, 74, 76,
35, 36, 37, 38, 38, 39, 40, 41, 78, 80, 83, 85, 87, 89, 92, 94,
42, 43, 44, 45, 45, 46, 47, 48, 96, 98, 101, 103, 105, 108, 110, 112,
49, 50, 51, 52, 53, 53, 54, 55, 115, 117, 119, 122, 124, 126, 129, 131,
56, 57, 58, 59, 60, 60, 61, 62, 134, 136, 139, 141, 144, 146, 149, 151,
63, 64, 65, 66, 67, 67, 69, 71, 154, 156, 159, 161, 164, 166, 169, 171,
73, 74, 76, 78, 80, 81, 83, 85, 174, 177, 179, 182, 184, 187, 190, 192,
87, 88, 90, 92, 94, 95, 97, 99, 195, 198, 200, 203, 206, 209, 211, 214,
101, 103, 106, 108, 111, 113, 116, 119, 217, 219, 222, 225, 228, 231, 233, 236,
121, 124, 126, 129, 131, 134, 137, 141, 241, 246, 251, 256, 261, 266, 271, 276,
144, 148, 151, 154, 158, 161, 164, 168, 281, 286, 291, 296, 301, 306, 312, 317,
172, 176, 180, 185, 189, 193, 197, 202, 322, 327, 332, 337, 342, 348, 353, 358,
207, 212, 217, 222, 227, 232, 237, 243, 363, 371, 378, 385, 393, 400, 408, 415,
249, 254, 260, 266, 273, 279, 286, 292, 422, 430, 437, 445, 452, 460, 467, 474,
299, 306, 313, 320, 328, 336, 344, 352, 482, 489, 499, 508, 518, 527, 537, 546,
360, 368, 377, 385, 394, 403, 413, 422, 556, 566, 575, 585, 594, 604, 613, 624,
432, 442, 452, 462, 473, 483, 494, 506, 636, 647, 659, 670, 682, 693, 704, 716,
517, 529, 541, 553, 565, 578, 591, 604, 727, 740, 754, 767, 780, 793, 806, 819,
618, 631, 645, 659, 674, 688, 703, 719, 832, 845, 860, 875, 889, 904, 919, 933,
734, 750, 767, 783, 800, 817, 834, 851, 948, 964, 980, 997, 1013, 1029, 1045, 1063,
869, 888, 906, 925, 944, 963, 983, 1003, 1080, 1098, 1115, 1133, 1150, 1169, 1188, 1207,
1023, 1044, 1065, 1086, 1108, 1130, 1152, 1174, 1226, 1245, 1266, 1286, 1307, 1327, 1348, 1370,
1197, 1220, 1244, 1268, 1292, 1317, 1342, 1367, 1392, 1414, 1436, 1459, 1483, 1507, 1531, 1556,
1393, 1419, 1446, 1474, 1501, 1530, 1558, 1588, 1582, 1608, 1634, 1662, 1690, 1718, 1748, 1778,
1618, 1649, 1681, 1713, 1746, 1781, 1816, 1853, 1809, 1842, 1876, 1909, 1946, 1982, 2020, 2060,
1890, 1930, 1971, 2013, 2058, 2104, 2153, 2204, 2101, 2143, 2188, 2234, 2283, 2334, 2386, 2441,
2257, 2314, 2374, 2438, 2505, 2577, 2654, 2737, 2499, 2561, 2625, 2693, 2764, 2841, 2920, 3006,
2825, 2920, 3022, 3132, 3251, 3380, 3518, 3669, 3094, 3190, 3290, 3397, 3509, 3630, 3756, 3891,
3831, 4009, 4203, 4412, 4641, 4890, 5162, 5459, 4033, 4186, 4351, 4524, 4710, 4910, 5121, 5347,
}; };
static const int16_t dc_qlookup_12[QINDEX_RANGE] = { static const int16_t dc_qlookup_12[QINDEX_RANGE] = {
4, 8, 8, 9, 10, 11, 12, 13, 16, 31, 35, 40, 44, 48, 52, 57,
13, 14, 15, 16, 17, 18, 19, 20, 61, 66, 71, 75, 80, 85, 90, 95,
21, 22, 22, 23, 24, 25, 26, 27, 100, 105, 111, 116, 121, 127, 132, 138,
28, 29, 30, 31, 31, 32, 33, 34, 144, 149, 155, 161, 167, 173, 180, 186,
35, 36, 37, 38, 39, 40, 40, 41, 192, 198, 205, 211, 218, 225, 231, 238,
42, 43, 44, 45, 46, 47, 48, 48, 245, 252, 259, 266, 273, 281, 288, 295,
49, 50, 51, 52, 53, 54, 55, 56, 303, 310, 318, 326, 333, 341, 349, 357,
57, 59, 61, 63, 65, 66, 68, 70, 365, 373, 381, 389, 398, 406, 414, 423,
72, 74, 75, 77, 79, 81, 82, 85, 431, 440, 449, 458, 466, 475, 484, 493,
88, 90, 93, 96, 99, 101, 104, 107, 502, 512, 521, 530, 539, 549, 558, 568,
109, 112, 115, 119, 123, 126, 130, 133, 578, 587, 597, 607, 617, 627, 637, 647,
137, 140, 145, 149, 154, 158, 162, 167, 657, 667, 677, 688, 698, 709, 719, 730,
172, 178, 183, 188, 193, 200, 206, 212, 747, 764, 782, 800, 817, 835, 853, 871,
218, 224, 231, 238, 245, 253, 261, 269, 889, 907, 926, 944, 963, 981, 1000, 1019,
277, 286, 294, 303, 313, 322, 332, 342, 1038, 1057, 1076, 1095, 1115, 1134, 1154, 1173,
353, 364, 375, 387, 399, 411, 424, 437, 1193, 1220, 1247, 1274, 1301, 1328, 1356, 1383,
450, 464, 479, 493, 509, 524, 540, 557, 1411, 1439, 1466, 1494, 1522, 1551, 1579, 1607,
574, 592, 611, 629, 648, 669, 690, 711, 1636, 1664, 1700, 1736, 1772, 1808, 1844, 1880,
732, 755, 778, 802, 827, 852, 879, 906, 1916, 1953, 1989, 2026, 2062, 2099, 2136, 2180,
933, 962, 991, 1021, 1053, 1085, 1118, 1151, 2224, 2268, 2312, 2356, 2400, 2444, 2488, 2533,
1186, 1222, 1259, 1296, 1335, 1375, 1416, 1459, 2577, 2628, 2680, 2731, 2782, 2834, 2885, 2936,
1502, 1546, 1592, 1639, 1687, 1736, 1787, 1840, 2988, 3039, 3097, 3155, 3214, 3272, 3330, 3388,
1893, 1948, 2005, 2063, 2122, 2183, 2245, 2309, 3446, 3510, 3575, 3639, 3703, 3768, 3832, 3903,
2375, 2442, 2510, 2580, 2652, 2726, 2801, 2878, 3973, 4044, 4114, 4185, 4255, 4332, 4408, 4485,
2956, 3036, 3117, 3201, 3287, 3374, 3463, 3554, 4561, 4638, 4721, 4804, 4887, 4970, 5053, 5142,
3646, 3740, 3837, 3935, 4035, 4137, 4241, 4347, 5231, 5321, 5411, 5508, 5604, 5701, 5799, 5903,
4455, 4564, 4676, 4790, 4905, 5023, 5144, 5266, 6008, 6114, 6220, 6334, 6448, 6564, 6687, 6812,
5391, 5519, 5649, 5782, 5918, 6057, 6199, 6345, 6938, 7073, 7210, 7349, 7497, 7648, 7802, 7966,
6496, 6651, 6810, 6975, 7146, 7324, 7509, 7702, 8133, 8305, 8488, 8676, 8878, 9084, 9297, 9525,
7905, 8119, 8344, 8582, 8835, 9105, 9393, 9704, 9760, 10013, 10274, 10554, 10844, 11156, 11480, 11828,
10039, 10401, 10794, 11222, 11689, 12200, 12761, 13379, 12191, 12581, 12987, 13425, 13882, 14374, 14888, 15442,
14060, 14812, 15645, 16567, 17591, 18728, 19993, 21402, 16021, 16646, 17319, 18024, 18784, 19603, 20462, 21388,
}; };
#endif #endif
@@ -157,73 +157,73 @@ static const int16_t ac_qlookup[QINDEX_RANGE] = {
#if CONFIG_VP9_HIGH && CONFIG_HIGH_TRANSFORMS && CONFIG_HIGH_QUANT #if CONFIG_VP9_HIGH && CONFIG_HIGH_TRANSFORMS && CONFIG_HIGH_QUANT
static const int16_t ac_qlookup_10[QINDEX_RANGE] = { static const int16_t ac_qlookup_10[QINDEX_RANGE] = {
4, 8, 9, 10, 11, 12, 13, 14, 8, 16, 18, 20, 22, 25, 27, 29,
15, 16, 17, 18, 19, 20, 21, 22, 31, 33, 35, 38, 40, 42, 44, 47,
23, 24, 25, 26, 27, 28, 29, 30, 49, 51, 54, 56, 58, 61, 63, 66,
31, 32, 33, 34, 35, 36, 37, 38, 68, 71, 73, 75, 78, 80, 83, 86,
39, 40, 41, 42, 43, 44, 45, 46, 88, 91, 93, 96, 98, 101, 104, 106,
47, 48, 49, 50, 51, 52, 53, 54, 109, 112, 114, 117, 120, 123, 125, 128,
55, 56, 57, 58, 59, 60, 61, 62, 131, 134, 137, 140, 142, 145, 148, 151,
63, 64, 65, 66, 67, 68, 69, 70, 154, 157, 160, 163, 166, 169, 172, 175,
71, 72, 73, 74, 75, 76, 78, 80, 178, 181, 184, 187, 190, 194, 197, 200,
82, 84, 86, 88, 90, 92, 94, 96, 203, 206, 209, 213, 216, 219, 222, 226,
98, 100, 102, 104, 106, 108, 110, 112, 229, 232, 236, 239, 242, 246, 249, 253,
114, 117, 120, 123, 126, 129, 132, 135, 256, 260, 263, 266, 270, 273, 277, 281,
138, 141, 144, 147, 150, 153, 157, 161, 287, 293, 300, 306, 312, 319, 325, 332,
165, 169, 173, 177, 181, 185, 189, 193, 338, 345, 352, 358, 365, 372, 378, 385,
198, 203, 208, 213, 218, 223, 228, 234, 392, 399, 406, 413, 420, 427, 434, 441,
240, 246, 252, 258, 264, 270, 277, 284, 448, 458, 468, 478, 488, 498, 509, 519,
291, 298, 305, 313, 321, 329, 337, 345, 529, 540, 550, 561, 571, 582, 593, 603,
354, 363, 372, 381, 391, 401, 411, 421, 614, 625, 639, 653, 667, 681, 695, 709,
432, 443, 454, 465, 477, 489, 501, 514, 724, 738, 752, 767, 782, 796, 811, 829,
527, 540, 554, 568, 582, 597, 612, 628, 847, 865, 883, 901, 920, 938, 956, 975,
644, 660, 677, 694, 712, 730, 749, 768, 994, 1016, 1038, 1060, 1082, 1104, 1127, 1149,
788, 808, 829, 850, 872, 894, 917, 941, 1172, 1195, 1221, 1247, 1274, 1300, 1327, 1353,
965, 990, 1016, 1042, 1069, 1097, 1125, 1154, 1380, 1411, 1441, 1472, 1502, 1533, 1564, 1598,
1184, 1215, 1246, 1278, 1311, 1345, 1380, 1416, 1633, 1668, 1703, 1738, 1773, 1812, 1851, 1890,
1453, 1491, 1530, 1570, 1611, 1653, 1696, 1740, 1929, 1969, 2012, 2055, 2099, 2142, 2186, 2234,
1785, 1831, 1879, 1928, 1978, 2030, 2083, 2137, 2281, 2329, 2377, 2429, 2481, 2534, 2586, 2643,
2193, 2250, 2309, 2369, 2431, 2494, 2559, 2626, 2699, 2756, 2813, 2874, 2935, 2996, 3062, 3127,
2695, 2765, 2837, 2911, 2987, 3065, 3145, 3227, 3193, 3262, 3332, 3403, 3477, 3551, 3626, 3705,
3311, 3398, 3487, 3578, 3672, 3768, 3867, 3968, 3784, 3864, 3947, 4031, 4119, 4207, 4295, 4388,
4072, 4179, 4288, 4400, 4515, 4633, 4754, 4879, 4481, 4578, 4676, 4778, 4880, 4986, 5093, 5204,
5007, 5138, 5273, 5411, 5553, 5699, 5848, 6001, 5316, 5431, 5547, 5668, 5789, 5914, 6040, 6170,
6158, 6320, 6486, 6656, 6831, 7010, 7194, 7383, 6301, 6436, 6575, 6715, 6860, 7009, 7158, 7312,
}; };
static const int16_t ac_qlookup_12[QINDEX_RANGE] = { static const int16_t ac_qlookup_12[QINDEX_RANGE] = {
4, 8, 9, 10, 11, 12, 13, 14, 16, 33, 37, 42, 47, 51, 56, 61,
15, 16, 17, 18, 19, 20, 21, 22, 66, 72, 77, 82, 88, 93, 99, 105,
23, 24, 25, 26, 27, 28, 29, 30, 110, 116, 122, 128, 135, 141, 147, 154,
31, 32, 33, 34, 35, 36, 37, 38, 160, 167, 174, 181, 188, 195, 202, 209,
39, 40, 41, 42, 43, 44, 45, 46, 216, 224, 231, 239, 247, 254, 262, 270,
47, 48, 49, 50, 51, 52, 53, 54, 278, 287, 295, 303, 312, 320, 329, 338,
55, 56, 57, 58, 59, 60, 61, 62, 346, 355, 364, 373, 383, 392, 401, 411,
64, 66, 68, 70, 72, 74, 76, 78, 420, 430, 440, 450, 460, 470, 480, 490,
80, 82, 84, 86, 88, 90, 92, 95, 500, 511, 521, 532, 543, 553, 564, 575,
98, 101, 104, 107, 110, 113, 116, 119, 586, 598, 609, 620, 632, 643, 655, 667,
122, 125, 129, 133, 137, 141, 145, 149, 678, 690, 702, 714, 727, 739, 751, 764,
153, 157, 162, 167, 172, 177, 182, 187, 776, 789, 802, 815, 828, 841, 854, 867,
193, 199, 205, 211, 217, 224, 231, 238, 889, 911, 933, 956, 978, 1001, 1024, 1047,
245, 252, 260, 268, 276, 285, 294, 303, 1071, 1094, 1118, 1142, 1166, 1190, 1215, 1240,
312, 322, 332, 342, 353, 364, 375, 387, 1264, 1289, 1315, 1340, 1366, 1392, 1418, 1444,
399, 412, 425, 438, 452, 466, 481, 496, 1470, 1506, 1543, 1580, 1617, 1654, 1692, 1730,
512, 528, 545, 562, 580, 598, 617, 637, 1768, 1807, 1846, 1885, 1924, 1964, 2004, 2044,
657, 678, 700, 722, 745, 769, 794, 819, 2084, 2125, 2177, 2229, 2281, 2334, 2387, 2440,
845, 872, 900, 929, 959, 990, 1022, 1055, 2494, 2548, 2603, 2658, 2713, 2769, 2825, 2893,
1089, 1124, 1160, 1197, 1236, 1276, 1317, 1359, 2961, 3029, 3098, 3168, 3237, 3308, 3379, 3450,
1403, 1448, 1495, 1543, 1593, 1644, 1697, 1752, 3522, 3606, 3690, 3775, 3861, 3947, 4033, 4121,
1809, 1867, 1927, 1989, 2053, 2119, 2188, 2259, 4208, 4297, 4398, 4499, 4602, 4704, 4808, 4912,
2332, 2408, 2486, 2567, 2650, 2736, 2825, 2917, 5017, 5135, 5254, 5373, 5493, 5614, 5736, 5871,
3012, 3110, 3211, 3315, 3423, 3534, 3649, 3767, 6006, 6143, 6281, 6419, 6558, 6711, 6865, 7020,
3889, 4015, 4145, 4280, 4419, 4563, 4711, 4864, 7176, 7333, 7503, 7675, 7848, 8022, 8197, 8386,
5022, 5185, 5354, 5528, 5708, 5894, 6086, 6284, 8577, 8768, 8961, 9168, 9377, 9587, 9798, 10024,
6488, 6699, 6917, 7142, 7374, 7614, 7862, 8118, 10251, 10480, 10710, 10955, 11201, 11450, 11713, 11978,
8382, 8655, 8937, 9228, 9528, 9838, 10158, 10489, 12245, 12527, 12811, 13096, 13397, 13700, 14005, 14326,
10831, 11184, 11548, 11924, 12312, 12713, 13127, 13555, 14649, 14973, 15314, 15657, 16016, 16378, 16741, 17121,
13997, 14453, 14924, 15410, 15912, 16430, 16965, 17518, 17503, 17903, 18304, 18723, 19144, 19582, 20023, 20481,
18089, 18678, 19287, 19915, 20564, 21234, 21926, 22640, 20941, 21420, 21901, 22400, 22901, 23421, 23944, 24484,
23378, 24140, 24927, 25739, 26578, 27444, 28338, 29262, 25028, 25590, 26171, 26755, 27357, 27979, 28604, 29248,
}; };
#endif #endif