10 #define JPEG_INTERNALS 51 #ifdef DCT_IFAST_SUPPORTED 54 #ifdef DCT_FLOAT_SUPPORTED 62 #ifdef DCT_ISLOW_SUPPORTED 63 #define PROVIDE_ISLOW_TABLES 65 #ifdef IDCT_SCALING_SUPPORTED 66 #define PROVIDE_ISLOW_TABLES 83 inverse_DCT_method_ptr method_ptr =
nullptr;
86 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
92 #ifdef IDCT_SCALING_SUPPORTED 102 method_ptr = jpeg_idct_4x4;
107 switch (cinfo->dct_method)
109 #ifdef DCT_ISLOW_SUPPORTED 111 method_ptr = jpeg_idct_islow;
115 #ifdef DCT_IFAST_SUPPORTED 117 method_ptr = jpeg_idct_ifast;
121 #ifdef DCT_FLOAT_SUPPORTED 123 method_ptr = jpeg_idct_float;
128 ERREXIT(cinfo, JERR_NOT_COMPILED);
152 #ifdef PROVIDE_ISLOW_TABLES 168 #ifdef DCT_IFAST_SUPPORTED 184 16384, 22725, 21407, 19266, 16384, 12873, 8867, 4520,
185 22725, 31521, 29692, 26722, 22725, 17855, 12299, 6270,
186 21407, 29692, 27969, 25172, 21407, 16819, 11585, 5906,
187 19266, 26722, 25172, 22654, 19266, 15137, 10426, 5315,
188 16384, 22725, 21407, 19266, 16384, 12873, 8867, 4520,
189 12873, 17855, 16819, 15137, 12873, 10114, 6967, 3552,
190 8867, 12299, 11585, 10426, 8867, 6967, 4799, 2446,
191 4520, 6270, 5906, 5315, 4520, 3552, 2446, 1247};
198 (
INT32)qtbl->quantval[i], (
INT32)aanscales[i]),
204 #ifdef DCT_FLOAT_SUPPORTED 216 static const double aanscalefactor[
DCTSIZE] = {
217 1.0, 1.387039845, 1.306562965, 1.175875602,
218 1.0, 0.785694958, 0.541196100, 0.275899379};
223 for (col = 0; col <
DCTSIZE; col++)
226 (
double)qtbl->quantval[i] * aanscalefactor[
row] *
227 aanscalefactor[col]);
235 ERREXIT(cinfo, JERR_NOT_COMPILED);
257 for (ci = 0,
compptr = cinfo->comp_info; ci < cinfo->num_components;
jinit_inverse_dct(j_decompress_ptr cinfo)
jpeg_idct_2x2(j_decompress_ptr cinfo, jpeg_component_info *compptr, JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col)
inverse_DCT_method_ptr inverse_DCT[MAX_COMPONENTS]
struct jpeg_common_struct * j_common_ptr
my_idct_controller * my_idct_ptr
int cur_method[MAX_COMPONENTS]
#define ERREXIT(cinfo, code)
for(ctr=DCTSIZE;ctr > 0;ctr--)
MULTIPLIER ISLOW_MULT_TYPE
FAST_FLOAT FLOAT_MULT_TYPE
#define ERREXIT1(cinfo, code, p1)
struct jpeg_inverse_dct pub
jpeg_idct_1x1(j_decompress_ptr cinfo, jpeg_component_info *compptr, JCOEFPTR coef_block, JSAMPARRAY output_buf, JDIMENSION output_col)
GLenum GLenum GLvoid * row
start_pass(j_decompress_ptr cinfo)
#define MEMZERO(target, size)
jpeg_component_info * compptr
#define MULTIPLY16V16(var1, var2)