• Home
  • Raw
  • Download

Lines Matching refs:cinfo

45 use_merged_upsample (j_decompress_ptr cinfo)  in use_merged_upsample()  argument
56 if (cinfo->do_fancy_upsampling) in use_merged_upsample()
59 if (cinfo->CCIR601_sampling) in use_merged_upsample()
62 if ((cinfo->jpeg_color_space != JCS_YCbCr && in use_merged_upsample()
63 cinfo->jpeg_color_space != JCS_BG_YCC) || in use_merged_upsample()
64 cinfo->num_components != 3 || in use_merged_upsample()
65 cinfo->out_color_space != JCS_RGB || in use_merged_upsample()
66 cinfo->out_color_components != RGB_PIXELSIZE || in use_merged_upsample()
67 cinfo->color_transform) in use_merged_upsample()
70 if (cinfo->comp_info[0].h_samp_factor != 2 || in use_merged_upsample()
71 cinfo->comp_info[1].h_samp_factor != 1 || in use_merged_upsample()
72 cinfo->comp_info[2].h_samp_factor != 1 || in use_merged_upsample()
73 cinfo->comp_info[0].v_samp_factor > 2 || in use_merged_upsample()
74 cinfo->comp_info[1].v_samp_factor != 1 || in use_merged_upsample()
75 cinfo->comp_info[2].v_samp_factor != 1) in use_merged_upsample()
78 if (cinfo->comp_info[0].DCT_h_scaled_size != cinfo->min_DCT_h_scaled_size || in use_merged_upsample()
79 cinfo->comp_info[1].DCT_h_scaled_size != cinfo->min_DCT_h_scaled_size || in use_merged_upsample()
80 cinfo->comp_info[2].DCT_h_scaled_size != cinfo->min_DCT_h_scaled_size || in use_merged_upsample()
81 cinfo->comp_info[0].DCT_v_scaled_size != cinfo->min_DCT_v_scaled_size || in use_merged_upsample()
82 cinfo->comp_info[1].DCT_v_scaled_size != cinfo->min_DCT_v_scaled_size || in use_merged_upsample()
83 cinfo->comp_info[2].DCT_v_scaled_size != cinfo->min_DCT_v_scaled_size) in use_merged_upsample()
101 jpeg_calc_output_dimensions (j_decompress_ptr cinfo) in jpeg_calc_output_dimensions() argument
112 if (cinfo->global_state != DSTATE_READY) in jpeg_calc_output_dimensions()
113 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state); in jpeg_calc_output_dimensions()
116 jpeg_core_output_dimensions(cinfo); in jpeg_calc_output_dimensions()
125 for (ci = 0, compptr = cinfo->comp_info; ci < cinfo->num_components; in jpeg_calc_output_dimensions()
128 if (! cinfo->raw_data_out) in jpeg_calc_output_dimensions()
129 while (cinfo->min_DCT_h_scaled_size * ssize <= in jpeg_calc_output_dimensions()
130 (cinfo->do_fancy_upsampling ? DCTSIZE : DCTSIZE / 2) && in jpeg_calc_output_dimensions()
131 (cinfo->max_h_samp_factor % (compptr->h_samp_factor * ssize * 2)) == in jpeg_calc_output_dimensions()
135 compptr->DCT_h_scaled_size = cinfo->min_DCT_h_scaled_size * ssize; in jpeg_calc_output_dimensions()
137 if (! cinfo->raw_data_out) in jpeg_calc_output_dimensions()
138 while (cinfo->min_DCT_v_scaled_size * ssize <= in jpeg_calc_output_dimensions()
139 (cinfo->do_fancy_upsampling ? DCTSIZE : DCTSIZE / 2) && in jpeg_calc_output_dimensions()
140 (cinfo->max_v_samp_factor % (compptr->v_samp_factor * ssize * 2)) == in jpeg_calc_output_dimensions()
144 compptr->DCT_v_scaled_size = cinfo->min_DCT_v_scaled_size * ssize; in jpeg_calc_output_dimensions()
157 jdiv_round_up((long) cinfo->image_width * in jpeg_calc_output_dimensions()
159 (long) (cinfo->max_h_samp_factor * cinfo->block_size)); in jpeg_calc_output_dimensions()
161 jdiv_round_up((long) cinfo->image_height * in jpeg_calc_output_dimensions()
163 (long) (cinfo->max_v_samp_factor * cinfo->block_size)); in jpeg_calc_output_dimensions()
170 switch (cinfo->out_color_space) { in jpeg_calc_output_dimensions()
172 cinfo->out_color_components = 1; in jpeg_calc_output_dimensions()
177 cinfo->out_color_components = RGB_PIXELSIZE; in jpeg_calc_output_dimensions()
182 cinfo->out_color_components = 3; in jpeg_calc_output_dimensions()
186 cinfo->out_color_components = 4; in jpeg_calc_output_dimensions()
189 cinfo->out_color_components = cinfo->num_components; in jpeg_calc_output_dimensions()
191 cinfo->output_components = (cinfo->quantize_colors ? 1 : in jpeg_calc_output_dimensions()
192 cinfo->out_color_components); in jpeg_calc_output_dimensions()
195 if (use_merged_upsample(cinfo)) in jpeg_calc_output_dimensions()
196 cinfo->rec_outbuf_height = cinfo->max_v_samp_factor; in jpeg_calc_output_dimensions()
198 cinfo->rec_outbuf_height = 1; in jpeg_calc_output_dimensions()
236 prepare_range_limit_table (j_decompress_ptr cinfo) in prepare_range_limit_table() argument
242 table = (JSAMPLE *) (*cinfo->mem->alloc_small) ((j_common_ptr) cinfo, in prepare_range_limit_table()
247 cinfo->sample_range_limit = table; in prepare_range_limit_table()
269 master_selection (j_decompress_ptr cinfo) in master_selection() argument
271 my_master_ptr master = (my_master_ptr) cinfo->master; in master_selection()
277 if (cinfo->data_precision != BITS_IN_JSAMPLE) in master_selection()
278 ERREXIT1(cinfo, JERR_BAD_PRECISION, cinfo->data_precision); in master_selection()
281 jpeg_calc_output_dimensions(cinfo); in master_selection()
282 prepare_range_limit_table(cinfo); in master_selection()
285 if (cinfo->output_height <= 0 || cinfo->output_width <= 0 || in master_selection()
286 cinfo->out_color_components <= 0) in master_selection()
287 ERREXIT(cinfo, JERR_EMPTY_IMAGE); in master_selection()
290 samplesperrow = (long) cinfo->output_width * (long) cinfo->out_color_components; in master_selection()
293 ERREXIT(cinfo, JERR_WIDTH_OVERFLOW); in master_selection()
297 master->using_merged_upsample = use_merged_upsample(cinfo); in master_selection()
303 if (! cinfo->quantize_colors || ! cinfo->buffered_image) { in master_selection()
304 cinfo->enable_1pass_quant = FALSE; in master_selection()
305 cinfo->enable_external_quant = FALSE; in master_selection()
306 cinfo->enable_2pass_quant = FALSE; in master_selection()
308 if (cinfo->quantize_colors) { in master_selection()
309 if (cinfo->raw_data_out) in master_selection()
310 ERREXIT(cinfo, JERR_NOTIMPL); in master_selection()
312 if (cinfo->out_color_components != 3) { in master_selection()
313 cinfo->enable_1pass_quant = TRUE; in master_selection()
314 cinfo->enable_external_quant = FALSE; in master_selection()
315 cinfo->enable_2pass_quant = FALSE; in master_selection()
316 cinfo->colormap = NULL; in master_selection()
317 } else if (cinfo->colormap != NULL) { in master_selection()
318 cinfo->enable_external_quant = TRUE; in master_selection()
319 } else if (cinfo->two_pass_quantize) { in master_selection()
320 cinfo->enable_2pass_quant = TRUE; in master_selection()
322 cinfo->enable_1pass_quant = TRUE; in master_selection()
325 if (cinfo->enable_1pass_quant) { in master_selection()
327 jinit_1pass_quantizer(cinfo); in master_selection()
328 master->quantizer_1pass = cinfo->cquantize; in master_selection()
330 ERREXIT(cinfo, JERR_NOT_COMPILED); in master_selection()
335 if (cinfo->enable_2pass_quant || cinfo->enable_external_quant) { in master_selection()
337 jinit_2pass_quantizer(cinfo); in master_selection()
338 master->quantizer_2pass = cinfo->cquantize; in master_selection()
340 ERREXIT(cinfo, JERR_NOT_COMPILED); in master_selection()
349 if (! cinfo->raw_data_out) { in master_selection()
352 jinit_merged_upsampler(cinfo); /* does color conversion too */ in master_selection()
354 ERREXIT(cinfo, JERR_NOT_COMPILED); in master_selection()
357 jinit_color_deconverter(cinfo); in master_selection()
358 jinit_upsampler(cinfo); in master_selection()
360 jinit_d_post_controller(cinfo, cinfo->enable_2pass_quant); in master_selection()
363 jinit_inverse_dct(cinfo); in master_selection()
365 if (cinfo->arith_code) in master_selection()
366 jinit_arith_decoder(cinfo); in master_selection()
368 jinit_huff_decoder(cinfo); in master_selection()
372 use_c_buffer = cinfo->inputctl->has_multiple_scans || cinfo->buffered_image; in master_selection()
373 jinit_d_coef_controller(cinfo, use_c_buffer); in master_selection()
375 if (! cinfo->raw_data_out) in master_selection()
376 jinit_d_main_controller(cinfo, FALSE /* never need full buffer here */); in master_selection()
379 (*cinfo->mem->realize_virt_arrays) ((j_common_ptr) cinfo); in master_selection()
382 (*cinfo->inputctl->start_input_pass) (cinfo); in master_selection()
389 if (cinfo->progress != NULL && ! cinfo->buffered_image && in master_selection()
390 cinfo->inputctl->has_multiple_scans) { in master_selection()
393 if (cinfo->progressive_mode) { in master_selection()
395 nscans = 2 + 3 * cinfo->num_components; in master_selection()
398 nscans = cinfo->num_components; in master_selection()
400 cinfo->progress->pass_counter = 0L; in master_selection()
401 cinfo->progress->pass_limit = (long) cinfo->total_iMCU_rows * nscans; in master_selection()
402 cinfo->progress->completed_passes = 0; in master_selection()
403 cinfo->progress->total_passes = (cinfo->enable_2pass_quant ? 3 : 2); in master_selection()
421 prepare_for_output_pass (j_decompress_ptr cinfo) in prepare_for_output_pass() argument
423 my_master_ptr master = (my_master_ptr) cinfo->master; in prepare_for_output_pass()
429 (*cinfo->cquantize->start_pass) (cinfo, FALSE); in prepare_for_output_pass()
430 (*cinfo->post->start_pass) (cinfo, JBUF_CRANK_DEST); in prepare_for_output_pass()
431 (*cinfo->main->start_pass) (cinfo, JBUF_CRANK_DEST); in prepare_for_output_pass()
433 ERREXIT(cinfo, JERR_NOT_COMPILED); in prepare_for_output_pass()
436 if (cinfo->quantize_colors && cinfo->colormap == NULL) { in prepare_for_output_pass()
438 if (cinfo->two_pass_quantize && cinfo->enable_2pass_quant) { in prepare_for_output_pass()
439 cinfo->cquantize = master->quantizer_2pass; in prepare_for_output_pass()
441 } else if (cinfo->enable_1pass_quant) { in prepare_for_output_pass()
442 cinfo->cquantize = master->quantizer_1pass; in prepare_for_output_pass()
444 ERREXIT(cinfo, JERR_MODE_CHANGE); in prepare_for_output_pass()
447 (*cinfo->idct->start_pass) (cinfo); in prepare_for_output_pass()
448 (*cinfo->coef->start_output_pass) (cinfo); in prepare_for_output_pass()
449 if (! cinfo->raw_data_out) { in prepare_for_output_pass()
451 (*cinfo->cconvert->start_pass) (cinfo); in prepare_for_output_pass()
452 (*cinfo->upsample->start_pass) (cinfo); in prepare_for_output_pass()
453 if (cinfo->quantize_colors) in prepare_for_output_pass()
454 (*cinfo->cquantize->start_pass) (cinfo, master->pub.is_dummy_pass); in prepare_for_output_pass()
455 (*cinfo->post->start_pass) (cinfo, in prepare_for_output_pass()
457 (*cinfo->main->start_pass) (cinfo, JBUF_PASS_THRU); in prepare_for_output_pass()
462 if (cinfo->progress != NULL) { in prepare_for_output_pass()
463 cinfo->progress->completed_passes = master->pass_number; in prepare_for_output_pass()
464 cinfo->progress->total_passes = master->pass_number + in prepare_for_output_pass()
469 if (cinfo->buffered_image && ! cinfo->inputctl->eoi_reached) { in prepare_for_output_pass()
470 cinfo->progress->total_passes += (cinfo->enable_2pass_quant ? 2 : 1); in prepare_for_output_pass()
481 finish_output_pass (j_decompress_ptr cinfo) in finish_output_pass() argument
483 my_master_ptr master = (my_master_ptr) cinfo->master; in finish_output_pass()
485 if (cinfo->quantize_colors) in finish_output_pass()
486 (*cinfo->cquantize->finish_pass) (cinfo); in finish_output_pass()
498 jpeg_new_colormap (j_decompress_ptr cinfo) in jpeg_new_colormap() argument
500 my_master_ptr master = (my_master_ptr) cinfo->master; in jpeg_new_colormap()
503 if (cinfo->global_state != DSTATE_BUFIMAGE) in jpeg_new_colormap()
504 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state); in jpeg_new_colormap()
506 if (cinfo->quantize_colors && cinfo->enable_external_quant && in jpeg_new_colormap()
507 cinfo->colormap != NULL) { in jpeg_new_colormap()
509 cinfo->cquantize = master->quantizer_2pass; in jpeg_new_colormap()
511 (*cinfo->cquantize->new_color_map) (cinfo); in jpeg_new_colormap()
514 ERREXIT(cinfo, JERR_MODE_CHANGE); in jpeg_new_colormap()
526 jinit_master_decompress (j_decompress_ptr cinfo) in jinit_master_decompress() argument
530 master = (my_master_ptr) (*cinfo->mem->alloc_small) in jinit_master_decompress()
531 ((j_common_ptr) cinfo, JPOOL_IMAGE, SIZEOF(my_decomp_master)); in jinit_master_decompress()
532 cinfo->master = &master->pub; in jinit_master_decompress()
538 master_selection(cinfo); in jinit_master_decompress()