6 #define TOTAL_HUFF_TBLS 4
7 #define TOTAL_QUANT_TBLS 4
9 #define CENTERJSAMPLE 128
14 #define HUFF_LOOKAHEAD 8
15 #define JPEG_APP1_MJPA 0x6D6A7067
16 #define RANGE_MASK (MAXJSAMPLE * 4 + 3) /* 2 bits wider than legal samples */
20 unsigned long long hvsample
;
21 unsigned long ac_htbl_num
;
22 unsigned long dc_htbl_num
;
23 unsigned long qtbl_num
;
26 } quicktime_jpeg_comp_header
;
40 } quicktime_mjpa_info
;
47 unsigned QUICKTIME_INT16 cache
[256];
48 unsigned char vals
[256];
49 unsigned char bits
[17];
50 } quicktime_jpeg_huffman
;
54 int allocated
; /* If these buffers were allocated by fastjpg */
58 } quicktime_mjpa_buffs
;
62 unsigned long Uskip_mask
;
68 } quicktime_mjpa_yuvtabs
;
74 long *quant_tables
[TOTAL_QUANT_TBLS
];
75 unsigned char *jpg_samp_limit
;
76 unsigned char *byte_limit
;
78 long jpg_comps_in_scan
;
79 long jpg_rst_interval
;
80 quicktime_jpeg_comp_header jpg_comps
[MAX_COMPS
+ 1];
83 quicktime_jpeg_huffman jpg_ac_huff
[TOTAL_HUFF_TBLS
];
84 quicktime_jpeg_huffman jpg_dc_huff
[TOTAL_HUFF_TBLS
];
85 QUICKTIME_INT16 jpg_dct_buf
[DCTSIZE2
];
86 long jpg_h_bnum
; /* this must be signed */
87 unsigned long jpg_h_bbuf
;
93 quicktime_mjpa_info mjpa_info
;
95 quicktime_mjpa_buffs yuvbufs
;
96 quicktime_mjpa_yuvtabs yuvtabs
;