| @@ -75,18 +75,7 @@ static const uint8_t lps_state[64]= { | |||
| 33,33,34,34,35,35,35,36, | |||
| 36,36,37,37,37,38,38,63, | |||
| }; | |||
| #if 0 | |||
| const uint8_t ff_h264_norm_shift_old[128]= { | |||
| 7,6,5,5,4,4,4,4,3,3,3,3,3,3,3,3, | |||
| 2,2,2,2,2,2,2,2,2,2,2,2,2,2,2,2, | |||
| 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |||
| 1,1,1,1,1,1,1,1,1,1,1,1,1,1,1,1, | |||
| 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, | |||
| 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, | |||
| 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, | |||
| 0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0, | |||
| }; | |||
| #endif | |||
| const uint8_t ff_h264_norm_shift[512]= { | |||
| 9,8,7,7,6,6,6,6,5,5,5,5,5,5,5,5, | |||
| 4,4,4,4,4,4,4,4,4,4,4,4,4,4,4,4, | |||
| @@ -1269,29 +1269,6 @@ static int mjpeg_decode_com(MJpegDecodeContext *s) | |||
| return 0; | |||
| } | |||
| #if 0 | |||
| static int valid_marker_list[] = | |||
| { | |||
| /* 0, 1, 2, 3, 4, 5, 6, 7, 8, 9, a, b, c, d, e, f */ | |||
| /* 0 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 1 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 2 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 3 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 4 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 5 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 6 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 7 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 8 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* 9 */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* a */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* b */ 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, | |||
| /* c */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | |||
| /* d */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | |||
| /* e */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, | |||
| /* f */ 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 0, | |||
| } | |||
| #endif | |||
| /* return the 8 bit start code value and update the search | |||
| state. Return -1 if no start code found */ | |||
| static int find_marker(const uint8_t **pbuf_ptr, const uint8_t *buf_end) | |||
| @@ -235,100 +235,4 @@ static const uint8_t sp5x_quant_table[20][64]= | |||
| 124,124,124,124,124,124,124,124,124,124,124,124,124,124,124,124 } | |||
| }; | |||
| #if 0 | |||
| /* 4NF-M, not ZigZag */ | |||
| static const uint8_t sp5x_quant_table_orig[18][64] = | |||
| { | |||
| /* index 0, Q50 */ | |||
| { 16, 11, 10, 16, 24, 40, 51, 61, 12, 12, 14, 19, 26, 58, 60, 55, | |||
| 14, 13, 16, 24, 40, 57, 69, 56, 14, 17, 22, 29, 51, 87, 80, 62, | |||
| 18, 22, 37, 56, 68,109,103, 77, 24, 35, 55, 64, 81,104,113, 92, | |||
| 49, 64, 78, 87,103,121,120,101, 72, 92, 95, 98,112,100,103, 99 }, | |||
| { 17, 18, 24, 47, 99, 99, 99, 99, 18, 21, 26, 66, 99, 99, 99, 99, | |||
| 24, 26, 56, 99, 99, 99, 99, 99, 47, 66, 99, 99, 99, 99, 99, 99, | |||
| 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, | |||
| 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99, 99 }, | |||
| /* index 1, Q70 */ | |||
| { 10, 7, 6, 10, 14, 24, 31, 37, 7, 7, 8, 11, 16, 35, 36, 33, | |||
| 8, 8, 10, 14, 24, 34, 41, 34, 8, 10, 13, 17, 31, 52, 48, 37, | |||
| 11, 13, 22, 34, 41, 65, 62, 46, 14, 21, 33, 38, 49, 62, 68, 55, | |||
| 29, 38, 47, 52, 62, 73, 72, 61, 43, 55, 57, 59, 67, 60, 62, 59 }, | |||
| { 10, 11, 14, 28, 59, 59, 59, 59, 11, 13, 16, 40, 59, 59, 59, 59, | |||
| 14, 16, 34, 59, 59, 59, 59, 59, 28, 40, 59, 59, 59, 59, 59, 59, | |||
| 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, | |||
| 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59, 59 }, | |||
| /* index 2, Q80 */ | |||
| { 6, 4, 4, 6, 10, 16, 20, 24, 5, 5, 6, 8, 10, 23, 24, 22, | |||
| 6, 5, 6, 10, 16, 23, 28, 22, 6, 7, 9, 12, 20, 35, 32, 25, | |||
| 7, 9, 15, 22, 27, 44, 41, 31, 10, 14, 22, 26, 32, 42, 45, 37, | |||
| 20, 26, 31, 35, 41, 48, 48, 40, 29, 37, 38, 39, 45, 40, 41, 40 }, | |||
| { 7, 7, 10, 19, 40, 40, 40, 40, 7, 8, 10, 26, 40, 40, 40, 40, | |||
| 10, 10, 22, 40, 40, 40, 40, 40, 19, 26, 40, 40, 40, 40, 40, 40, | |||
| 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, | |||
| 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40, 40 }, | |||
| /* index 3, Q85 */ | |||
| { 5, 3, 3, 5, 7, 12, 15, 18, 4, 4, 4, 6, 8, 17, 18, 17, | |||
| 4, 4, 5, 7, 12, 17, 21, 17, 4, 5, 7, 9, 15, 26, 24, 19, | |||
| 5, 7, 11, 17, 20, 33, 31, 23, 7, 11, 17, 19, 24, 31, 34, 28, | |||
| 15, 19, 23, 26, 31, 36, 36, 30, 22, 28, 29, 29, 34, 30, 31, 30 }, | |||
| { 5, 5, 7, 14, 30, 30, 30, 30, 5, 6, 8, 20, 30, 30, 30, 30, | |||
| 7, 8, 17, 30, 30, 30, 30, 30, 14, 20, 30, 30, 30, 30, 30, 30, | |||
| 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, | |||
| 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30, 30 }, | |||
| /* index 4, Q90 */ | |||
| { 3, 2, 2, 3, 5, 8, 10, 12, 2, 2, 3, 4, 5, 12, 12, 11, | |||
| 3, 3, 3, 5, 8, 11, 14, 11, 3, 3, 4, 6, 10, 17, 16, 12, | |||
| 4, 4, 7, 11, 14, 22, 21, 15, 5, 7, 11, 13, 16, 21, 23, 18, | |||
| 10, 13, 16, 17, 21, 24, 24, 20, 14, 18, 19, 20, 22, 20, 21, 20 }, | |||
| { 3, 4, 5, 9, 20, 20, 20, 20, 4, 4, 5, 13, 20, 20, 20, 20, | |||
| 5, 5, 11, 20, 20, 20, 20, 20, 9, 13, 20, 20, 20, 20, 20, 20, | |||
| 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, | |||
| 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20, 20 }, | |||
| /* index 5, Q60 */ | |||
| { 13, 9, 8, 13, 19, 32, 41, 49, 10, 10, 11, 15, 21, 46, 48, 44, | |||
| 11, 10, 13, 19, 32, 46, 55, 45, 11, 14, 18, 23, 41, 70, 64, 50, | |||
| 14, 18, 30, 45, 54, 87, 82, 62, 19, 28, 44, 51, 65, 83, 90, 74, | |||
| 39, 51, 62, 70, 82, 97, 96, 81, 58, 74, 76, 78, 90, 80, 82, 79 }, | |||
| { 14, 14, 19, 38, 79, 79, 79, 79, 14, 17, 21, 53, 79, 79, 79, 79, | |||
| 19, 21, 45, 79, 79, 79, 79, 79, 38, 53, 79, 79, 79, 79, 79, 79, | |||
| 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, | |||
| 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79, 79 }, | |||
| /* index 6, Q25 */ | |||
| { 32, 22, 20, 32, 48, 80,102,122, 24, 24, 28, 38, 52,116,120,110, | |||
| 28, 26, 32, 48, 80,114,138,112, 28, 34, 44, 58,102,174,160,124, | |||
| 36, 44, 74,112,136,218,206,154, 48, 70,110,128,162,208,226,184, | |||
| 98,128,156,174,206,242,240,202,144,184,190,196,224,200,206,198 }, | |||
| { 34, 36, 48, 94,198,198,198,198, 36, 42, 52,132,198,198,198,198, | |||
| 48, 52,112,198,198,198,198,198, 94,132,198,198,198,198,198,198, | |||
| 198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198, | |||
| 198,198,198,198,198,198,198,198,198,198,198,198,198,198,198,198 }, | |||
| /* index 7, Q95 */ | |||
| { 2, 1, 1, 2, 2, 4, 5, 6, 1, 1, 1, 2, 3, 6, 6, 6, | |||
| 1, 1, 2, 2, 4, 6, 7, 6, 1, 2, 2, 3, 5, 9, 8, 6, | |||
| 2, 2, 4, 6, 7, 11, 10, 8, 2, 4, 6, 6, 8, 10, 11, 9, | |||
| 5, 6, 8, 9, 10, 12, 12, 10, 7, 9, 10, 10, 11, 10, 10, 10 }, | |||
| { 2, 2, 2, 5, 10, 10, 10, 10, 2, 2, 3, 7, 10, 10, 10, 10, | |||
| 2, 3, 6, 10, 10, 10, 10, 10, 5, 7, 10, 10, 10, 10, 10, 10, | |||
| 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, | |||
| 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10, 10 }, | |||
| /* index 8, Q93 */ | |||
| { 2, 2, 1, 2, 3, 6, 7, 9, 2, 2, 2, 3, 4, 8, 8, 8, | |||
| 2, 2, 2, 3, 6, 8, 10, 8, 2, 2, 3, 4, 7, 12, 11, 9, | |||
| 3, 3, 5, 8, 10, 15, 14, 11, 3, 5, 8, 9, 11, 15, 16, 13, | |||
| 7, 9, 11, 12, 14, 17, 17, 14, 10, 13, 13, 14, 16, 14, 14, 14 }, | |||
| { 2, 3, 3, 7, 14, 14, 14, 14, 3, 3, 4, 9, 14, 14, 14, 14, | |||
| 3, 4, 8, 14, 14, 14, 14, 14, 7, 9, 14, 14, 14, 14, 14, 14, | |||
| 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, | |||
| 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 14 } | |||
| }; | |||
| #endif | |||
| #endif /* AVCODEC_SP5X_H */ | |||
| @@ -187,75 +187,6 @@ const uint8_t ff_vc1_norm6_bits[64] = { | |||
| 4, 8, 8, 10, 8, 10, 10, 13, 8, 10, 10, 13, 10, 13, 13, 9, | |||
| 8, 10, 10, 13, 10, 13, 13, 9, 10, 13, 13, 9, 13, 9, 9, 6, | |||
| }; | |||
| #if 0 | |||
| /* Normal-6 imode */ | |||
| const uint8_t ff_vc1_norm6_spec[64][5] = { | |||
| { 0, 1, 1 }, | |||
| { 1, 2, 4 }, | |||
| { 2, 3, 4 }, | |||
| { 3, 0, 8 }, | |||
| { 4, 4, 4 }, | |||
| { 5, 1, 8 }, | |||
| { 6, 2, 8 }, | |||
| { 7, 2, 5, 7, 5 }, | |||
| { 8, 5, 4 }, | |||
| { 9, 3, 8 }, | |||
| {10, 4, 8 }, | |||
| {11, 2, 5, 11, 5 }, | |||
| {12, 5, 8 }, | |||
| {13, 2, 5, 13, 5 }, | |||
| {14, 2, 5, 14, 5 }, | |||
| {15, 3, 5, 14, 8 }, | |||
| {16, 6, 4 }, | |||
| {17, 6, 8 }, | |||
| {18, 7, 8 }, | |||
| {19, 2, 5, 19, 5 }, | |||
| {20, 8, 8 }, | |||
| {21, 2, 5, 21, 5 }, | |||
| {22, 2, 5, 22, 5 }, | |||
| {23, 3, 5, 13, 8 }, | |||
| {24, 9, 8 }, | |||
| {25, 2, 5, 25, 5 }, | |||
| {26, 2, 5, 26, 5 }, | |||
| {27, 3, 5, 12, 8 }, | |||
| {28, 2, 5, 28, 5 }, | |||
| {29, 3, 5, 11, 8 }, | |||
| {30, 3, 5, 10, 8 }, | |||
| {31, 3, 5, 7, 4 }, | |||
| {32, 7, 4 }, | |||
| {33, 10, 8 }, | |||
| {34, 11, 8 }, | |||
| {35, 2, 5, 3, 5 }, | |||
| {36, 12, 8 }, | |||
| {37, 2, 5, 5, 5 }, | |||
| {38, 2, 5, 6, 5 }, | |||
| {39, 3, 5, 9, 8 }, | |||
| {40, 13, 8 }, | |||
| {41, 2, 5, 9, 5 }, | |||
| {42, 2, 5, 10, 5 }, | |||
| {43, 3, 5, 8, 8 }, | |||
| {44, 2, 5, 12, 5 }, | |||
| {45, 3, 5, 7, 8 }, | |||
| {46, 3, 5, 6, 8 }, | |||
| {47, 3, 5, 6, 4 }, | |||
| {48, 14, 8 }, | |||
| {49, 2, 5, 17, 5 }, | |||
| {50, 2, 5, 18, 5 }, | |||
| {51, 3, 5, 5, 8 }, | |||
| {52, 2, 5, 20, 5 }, | |||
| {53, 3, 5, 4, 8 }, | |||
| {54, 3, 5, 3, 8 }, | |||
| {55, 3, 5, 5, 4 }, | |||
| {56, 2, 5, 24, 5 }, | |||
| {57, 3, 5, 2, 8 }, | |||
| {58, 3, 5, 1, 8 }, | |||
| {59, 3, 5, 4, 4 }, | |||
| {60, 3, 5, 0, 8 }, | |||
| {61, 3, 5, 3, 4 }, | |||
| {62, 3, 5, 2, 4 }, | |||
| {63, 3, 5, 1, 1 }, | |||
| }; | |||
| #endif | |||
| /* 4MV Block pattern VLC tables */ | |||
| const uint8_t ff_vc1_4mv_block_pattern_codes[4][16] = { | |||
| @@ -276,7 +207,7 @@ const uint8_t wmv3_dc_scale_table[32]={ | |||
| }; | |||
| /* P-Picture CBPCY VLC tables */ | |||
| #if 1 // Looks like original tables are not conforming to standard at all. Are they used for old WMV? | |||
| // Looks like original tables are not conforming to standard at all. Are they used for old WMV? | |||
| const uint16_t ff_vc1_cbpcy_p_codes[4][64] = { | |||
| { | |||
| 0, 6, 15, 13, 13, 11, 3, 13, 5, 8, 49, 10, 12, 114, 102, 119, | |||
| @@ -330,60 +261,6 @@ const uint8_t ff_vc1_cbpcy_p_bits[4][64] = { | |||
| 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 8 | |||
| } | |||
| }; | |||
| #else | |||
| const uint16_t ff_vc1_cbpcy_p_codes[4][64] = { | |||
| { | |||
| 0, 1, 1, 4, 5, 1, 12, 4, 13, 14, 10, 11, 12, 7, 13, 2, | |||
| 15, 1, 96, 1, 49, 97, 2, 100, 3, 4, 5, 101, 102, 52, 53, 4, | |||
| 6, 7, 54, 103, 8, 9, 10, 110, 11, 12, 111, 56, 114, 58, 115, 5, | |||
| 13, 7, 8, 9, 10, 11, 12, 30, 13, 14, 15, 118, 119, 62, 63, 3 | |||
| }, | |||
| { | |||
| 0, 1, 2, 1, 3, 1, 16, 17, 5, 18, 12, 19, 13, 1, 28, 58, | |||
| 1, 1, 1, 2, 3, 2, 3, 236, 237, 4, 5, 238, 6, 7, 239, 8, | |||
| 9, 240, 10, 11, 121, 122, 12, 13, 14, 15, 241, 246, 16, 17, 124, 63, | |||
| 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, 28, 29, 30, 31, 247, 125 | |||
| }, | |||
| { | |||
| 0, 1, 2, 3, 2, 3, 1, 4, 5, 24, 7, 13, 16, 17, 9, 5, | |||
| 25, 1, 1, 1, 2, 3, 96, 194, 1, 2, 98, 99, 195, 200, 101, 26, | |||
| 201, 102, 412, 413, 414, 54, 220, 111, 221, 3, 224, 113, 225, 114, 230, 29, | |||
| 231, 415, 240, 4, 241, 484, 5, 243, 3, 244, 245, 485, 492, 493, 247, 31 | |||
| }, | |||
| { | |||
| 0, 1, 1, 1, 2, 2, 3, 4, 3, 5, 6, 7, 8, 9, 10, 11, | |||
| 12, 13, 14, 15, 16, 17, 18, 19, 20, 21, 22, 23, 24, 25, 26, 27, | |||
| 28, 29, 30, 31, 32, 33, 34, 35, 36, 37, 38, 39, 40, 41, 42, 43, | |||
| 44, 45, 46, 47, 48, 49, 50, 51, 52, 53, 54, 55, 28, 29, 30, 31 | |||
| } | |||
| }; | |||
| const uint8_t ff_vc1_cbpcy_p_bits[4][64] = { | |||
| { | |||
| 13, 6, 5, 6, 6, 7, 7, 5, 7, 7, 6, 6, 6, 5, 6, 3, | |||
| 7, 8, 8, 13, 7, 8, 13, 8, 13, 13, 13, 8, 8, 7, 7, 3, | |||
| 13, 13, 7, 8, 13, 13, 13, 8, 13, 13, 8, 7, 8, 7, 8, 3, | |||
| 13, 12, 12, 12, 12, 12, 12, 6, 12, 12, 12, 8, 8, 7, 7, 2 | |||
| }, | |||
| { | |||
| 14, 3, 3, 5, 3, 4, 5, 5, 3, 5, 4, 5, 4, 6, 5, 6, | |||
| 8, 14, 13, 8, 8, 13, 13, 8, 8, 13, 13, 8, 13, 13, 8, 13, | |||
| 13, 8, 13, 13, 7, 7, 13, 13, 13, 13, 8, 8, 13, 13, 7, 6, | |||
| 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 13, 8, 7 | |||
| }, | |||
| { | |||
| 13, 5, 5, 5, 4, 4, 6, 4, 4, 6, 4, 5, 5, 5, 4, 3, | |||
| 6, 8, 10, 9, 8, 8, 7, 8, 13, 13, 7, 7, 8, 8, 7, 5, | |||
| 8, 7, 9, 9, 9, 6, 8, 7, 8, 13, 8, 7, 8, 7, 8, 5, | |||
| 8, 9, 8, 13, 8, 9, 13, 8, 12, 8, 8, 9, 9, 9, 8, 5 | |||
| }, | |||
| { | |||
| 9, 2, 3, 9, 2, 9, 9, 9, 2, 9, 9, 9, 9, 9, 9, 9, | |||
| 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, | |||
| 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, | |||
| 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 9, 8, 8, 8, 8 | |||
| } | |||
| }; | |||
| #endif | |||
| /* MacroBlock Transform Type: 7.1.3.11, p89 | |||
| * 8x8:B | |||