📄 hufftables.h
字号:
//==========================================================================//// THIS CODE AND INFORMATION IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY// KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE// IMPLIED WARRANTIES OF MERCHANTABILITY AND/OR FITNESS FOR A PARTICULAR// PURPOSE.//// Copyright (c) 1999 - 2001 On2 Technologies Inc. All Rights Reserved.////--------------------------------------------------------------------------/****************************************************************************** Module Title : HuffTables.h** Description : Video CODEC********************************************************************************/#ifndef HUFFTAB_H#define HUFFTAB_H#include "type_aliases.h"/***************************************************************************** Hufman tables******************************************************************************/HUFF_ENTRY * HuffRoot_VP31[NUM_HUFF_TABLES] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL };HUFF_ENTRY * HuffRoot_VP33[NUM_HUFF_TABLES] = { NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL, NULL };UINT32 HuffCodeArray_VP31[NUM_HUFF_TABLES][ MAX_ENTROPY_TOKENS ];UINT32 HuffCodeArray_VP33[NUM_HUFF_TABLES][ MAX_ENTROPY_TOKENS ];UINT8 HuffCodeLengthArray_VP31[NUM_HUFF_TABLES][ MAX_ENTROPY_TOKENS ];UINT8 HuffCodeLengthArray_VP33[NUM_HUFF_TABLES][ MAX_ENTROPY_TOKENS ];UINT8 ExtraBitLengths_VP31[MAX_ENTROPY_TOKENS] = { 0, 0, 0, 2, 3, 4, 12,3, 6, // EOB and Zero-run tokens. 0, 0, 0, 0, // Very low value tokens. 1, 1, 1, 1, 2, 3, 4, 5, 6, 10, // Other value tokens 1, 1, 1, 1, 1, 3, 4, // Category 1 runs. 2, 3, // Category 2 runs. };// Frequency tables for encoder version < 2UINT32 FrequencyCounts1[NUM_HUFF_TABLES][MAX_ENTROPY_TOKENS] = { // DC Intra bias { 198, 62, 22, 31, 14, 6, 6, 205, 3, 843, 843, 415, 516, 660, 509, 412, 347, 560, 779, 941, 930, 661, 377, 170, 155, 39, 2, 9, 15, 11, 128, 86, }, { 299, 92, 34, 39, 15, 6, 6, 132, 1, 851, 851, 484, 485, 666, 514, 416, 351, 567, 788, 953, 943, 670, 383, 117, 119, 26, 4, 17, 7, 1, 93, 56, }, { 367, 115, 42, 47, 16, 6, 6, 105, 1, 896, 896, 492, 493, 667, 510, 408, 342, 547, 760, 932, 927, 656, 379, 114, 103, 10, 3, 6, 2, 1, 88, 49, }, { 462, 158, 63, 76, 28, 9, 8, 145, 1, 1140, 1140, 573, 574, 754, 562, 435, 357, 555, 742, 793, 588, 274, 81, 154, 117, 13, 6, 12, 2, 1, 104, 62, }, { 558, 196, 81, 99, 36, 11, 9, 135, 1, 1300, 1301, 606, 607, 779, 560, 429, 349, 536, 680, 644, 405, 153, 30, 171, 120, 12, 5, 14, 3, 1, 104, 53, }, { 635, 233, 100, 122, 46, 14, 12, 113, 1, 1414, 1415, 631, 631, 785, 555, 432, 335, 513, 611, 521, 284, 89, 13, 170, 113, 10, 5, 14, 3, 1, 102, 62, }, { 720, 276, 119, 154, 62, 20, 16, 101, 1, 1583, 1583, 661, 661, 794, 556, 407, 318, 447, 472, 343, 153, 35, 1, 172, 115, 11, 7, 14, 3, 1, 112, 70, }, { 853, 326, 144, 184, 80, 27, 19, 52, 1, 1739, 1740, 684, 685, 800, 540, 381, 277, 364, 352, 218, 78, 13, 1, 139, 109, 9, 6, 20, 2, 1, 94, 50, }, // DC Inter Bias { 490, 154, 57, 53, 10, 2, 1, 238, 160, 1391, 1390, 579, 578, 491, 273, 172, 118, 152, 156, 127, 79, 41, 39, 712, 547, 316, 125, 183, 306, 237, 451, 358, }, { 566, 184, 70, 65, 11, 2, 1, 235, 51, 1414, 1414, 599, 598, 510, 285, 180, 124, 157, 161, 131, 82, 42, 40, 738, 551, 322, 138, 195, 188, 93, 473, 365, }, { 711, 261, 111, 126, 27, 4, 1, 137, 52, 1506, 1505, 645, 645, 567, 316, 199, 136, 172, 175, 142, 88, 45, 48, 548, 449, 255, 145, 184, 174, 121, 260, 227, }, { 823, 319, 144, 175, 43, 7, 1, 53, 42, 1648, 1648, 653, 652, 583, 329, 205, 139, 175, 176, 139, 84, 44, 34, 467, 389, 211, 137, 181, 186, 107, 106, 85, }, { 948, 411, 201, 276, 85, 16, 2, 39, 33, 1778, 1777, 584, 583, 489, 265, 162, 111, 140, 140, 108, 64, 38, 23, 428, 356, 201, 139, 186, 165, 94, 78, 63, }, { 1002, 470, 248, 386, 153, 39, 6, 23, 23, 1866, 1866, 573, 573, 467, 249, 155, 103, 130, 128, 94, 60, 38, 14, 323, 263, 159, 111, 156, 153, 74, 46, 34, }, { 1020, 518, 291, 504, 242, 78, 18, 14, 14, 1980, 1979, 527, 526, 408, 219, 132, 87, 110, 104, 79, 55, 31, 7, 265, 213, 129, 91, 131, 111, 50, 31, 20, }, { 1018, 544, 320, 591, 338, 139, 47, 5, 2, 2123, 2123, 548, 547, 414, 212, 126, 83, 101, 96, 79, 60, 23, 1, 120, 97, 55, 39, 60, 38, 15, 11, 8, }, // AC INTRA Tables // AC Intra bias group 1 tables { 242, 62, 22, 20, 4, 1, 1, 438, 1, 593, 593, 489, 490, 657, 580, 471, 374, 599, 783, 869, 770, 491, 279, 358, 144, 82, 54, 49, 70, 5, 289, 107, }, { 317, 95, 38, 41, 8, 1, 1, 479, 1, 653, 654, 500, 501, 682, 611, 473, 376, 582, 762, 806, 656, 358, 155, 419, 162, 86, 58, 36, 34, 1, 315, 126, }, { 382, 121, 49, 59, 15, 3, 1, 496, 1, 674, 674, 553, 554, 755, 636, 487, 391, 576, 718, 701, 488, 221, 72, 448, 161, 107, 56, 37, 29, 1, 362, 156, }, { 415, 138, 57, 73, 21, 5, 1, 528, 1, 742, 741, 562, 563, 753, 669, 492, 388, 563, 664, 589, 340, 129, 26, 496, 184, 139, 71, 48, 33, 2, 387, 166, }, { 496, 170, 73, 94, 31, 8, 2, 513, 1, 855, 855, 604, 604, 769, 662, 477, 356, 486, 526, 381, 183, 51, 5, 590, 214, 160, 85, 60, 39, 3, 427, 203, }, { 589, 207, 89, 116, 40, 13, 3, 491, 1, 919, 919, 631, 631, 769, 633, 432, 308, 408, 378, 247, 94, 17, 1, 659, 247, 201, 105, 73, 51, 3, 466, 242, }, { 727, 266, 115, 151, 49, 17, 6, 439, 1, 977, 977, 642, 642, 718, 572, 379, 243, 285, 251, 133, 40, 1, 1, 756, 287, 253, 126, 94, 66, 4, 492, 280, }, { 940, 392, 180, 247, 82, 30, 14, 343, 1, 1064, 1064, 615, 616, 596, 414, 235, 146, 149, 108, 41, 1, 1, 1, 882, 314, 346, 172, 125, 83, 6, 489, 291, }, // AC Inter bias group 1 tables { 440, 102, 33, 23, 2, 1, 1, 465, 85, 852, 852, 744, 743, 701, 496, 297, 193, 225, 200, 129, 58, 18, 2, 798, 450, 269, 202, 145, 308, 154, 646, 389, }, { 592, 151, 53, 43, 6, 1, 1, 409, 34, 875, 875, 748, 747, 723, 510, 305, 196, 229, 201, 130, 59, 18, 2, 800, 436, 253, 185, 115, 194, 88, 642, 368, }, { 759, 222, 86, 85, 17, 2, 1, 376, 46, 888, 888, 689, 688, 578, 408, 228, 143, 165, 141, 84, 35, 7, 1, 878, 488, 321, 244, 147, 266, 124, 612, 367, }, { 912, 298, 122, 133, 34, 7, 1, 261, 44, 1092, 1091, 496, 496, 409, 269, 150, 95, 106, 87, 49, 16, 1, 1, 1102, 602, 428, 335, 193, 323, 157, 423, 253, }, { 1072, 400, 180, 210, 60, 16, 3, 210, 40, 1063, 1063, 451, 451, 345, 221, 121, 73, 79, 64, 31, 6, 1, 1, 1105, 608, 462, 358, 202, 330, 155, 377, 228, }, { 1164, 503, 254, 330, 109, 34, 9, 167, 35, 1038, 1037, 390, 390, 278, 170, 89, 54, 56, 40, 13, 1, 1, 1, 1110, 607, 492, 401, 218, 343, 141, 323, 192, }, { 1173, 583, 321, 486, 196, 68, 23, 124, 23, 1037, 1037, 347, 346, 232, 139, 69, 40, 37, 20, 2, 1, 1, 1, 1128, 584, 506, 410, 199, 301, 113, 283, 159, }, { 1023, 591, 366, 699, 441, 228, 113, 79, 5, 1056, 1056, 291, 291, 173, 96, 38, 19, 8, 1, 1, 1, 1, 1, 1187, 527, 498, 409, 147, 210, 56, 263, 117, },
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -