39 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
44 qtblptr = & cinfo->quant_tbl_ptrs[
which_tbl];
60 (*qtblptr)->sent_table =
FALSE;
70 16, 11, 10, 16, 24, 40, 51, 61,
71 12, 12, 14, 19, 26, 58, 60, 55,
72 14, 13, 16, 24, 40, 57, 69, 56,
73 14, 17, 22, 29, 51, 87, 80, 62,
74 18, 22, 37, 56, 68, 109, 103, 77,
75 24, 35, 55, 64, 81, 104, 113, 92,
76 49, 64, 78, 87, 103, 121, 120, 101,
77 72, 92, 95, 98, 112, 100, 103, 99
80 16, 18, 24, 47, 99, 99, 99, 99,
81 18, 21, 26, 66, 99, 99, 99, 99,
82 24, 26, 56, 99, 99, 99, 99, 99,
83 47, 66, 99, 99, 99, 99, 99, 99,
84 99, 99, 99, 99, 99, 99, 99, 99,
85 99, 99, 99, 99, 99, 99, 99, 99,
86 99, 99, 99, 99, 99, 99, 99, 99,
87 99, 99, 99, 99, 99, 99, 99, 99
172 if (cinfo->dc_huff_tbl_ptrs[0] !=
NULL)
175 if (cinfo->ac_huff_tbl_ptrs[0] !=
NULL)
178 if (cinfo->dc_huff_tbl_ptrs[1] !=
NULL)
181 if (cinfo->ac_huff_tbl_ptrs[1] !=
NULL)
203 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
209 if (cinfo->comp_info ==
NULL)
216 cinfo->scale_num = 1;
217 cinfo->scale_denom = 1;
226 cinfo->arith_dc_L[
i] = 0;
227 cinfo->arith_dc_U[
i] = 1;
228 cinfo->arith_ac_K[
i] = 5;
232 cinfo->scan_info =
NULL;
233 cinfo->num_scans = 0;
236 cinfo->raw_data_in =
FALSE;
245 cinfo->arith_code = cinfo->data_precision > 8 ?
TRUE :
FALSE;
248 cinfo->optimize_coding =
FALSE;
251 cinfo->CCIR601_sampling =
FALSE;
254 cinfo->do_fancy_downsampling =
TRUE;
257 cinfo->smoothing_factor = 0;
263 cinfo->restart_interval = 0;
264 cinfo->restart_in_rows = 0;
278 cinfo->JFIF_major_version = 1;
279 cinfo->JFIF_minor_version = 1;
280 cinfo->density_unit = 0;
281 cinfo->X_density = 1;
282 cinfo->Y_density = 1;
301 switch (cinfo->in_color_space) {
328 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE);
343#define SET_COMP(index,id,hsamp,vsamp,quant,dctbl,actbl) \
344 (compptr = &cinfo->comp_info[index], \
345 compptr->component_id = (id), \
346 compptr->h_samp_factor = (hsamp), \
347 compptr->v_samp_factor = (vsamp), \
348 compptr->quant_tbl_no = (quant), \
349 compptr->dc_tbl_no = (dctbl), \
350 compptr->ac_tbl_no = (actbl) )
354 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
362 cinfo->write_JFIF_header =
FALSE;
363 cinfo->write_Adobe_marker =
FALSE;
367 cinfo->num_components = cinfo->input_components;
368 if (cinfo->num_components < 1 || cinfo->num_components >
MAX_COMPONENTS)
369 ERREXIT2(cinfo, JERR_COMPONENT_COUNT, cinfo->num_components,
371 for (ci = 0; ci < cinfo->num_components; ci++) {
376 cinfo->write_JFIF_header =
TRUE;
377 cinfo->num_components = 1;
382 cinfo->write_Adobe_marker =
TRUE;
383 cinfo->num_components = 3;
395 cinfo->write_JFIF_header =
TRUE;
396 cinfo->num_components = 3;
404 cinfo->write_Adobe_marker =
TRUE;
405 cinfo->num_components = 4;
412 cinfo->write_Adobe_marker =
TRUE;
413 cinfo->num_components = 4;
420 cinfo->write_JFIF_header =
TRUE;
421 cinfo->JFIF_major_version = 2;
422 cinfo->num_components = 3;
435 cinfo->write_JFIF_header =
TRUE;
436 cinfo->JFIF_major_version = 2;
437 cinfo->num_components = 3;
445 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
450#ifdef C_PROGRESSIVE_SUPPORTED
454 int Ss,
int Se,
int Ah,
int Al)
469 int Ss,
int Se,
int Ah,
int Al)
474 for (ci = 0; ci < ncomps; ci++) {
487fill_dc_scans (
jpeg_scan_info * scanptr,
int ncomps,
int Ah,
int Al)
495 for (ci = 0; ci < ncomps; ci++)
497 scanptr->
Ss = scanptr->
Se = 0;
503 scanptr = fill_scans(scanptr, ncomps, 0, 0, Ah, Al);
523 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
536 nscans = 2 + 4 * ncomps;
561 scanptr = fill_dc_scans(scanptr, ncomps, 0, 1);
563 scanptr = fill_a_scan(scanptr, 0, 1, 5, 0, 2);
565 scanptr = fill_a_scan(scanptr, 2, 1, 63, 0, 1);
566 scanptr = fill_a_scan(scanptr, 1, 1, 63, 0, 1);
568 scanptr = fill_a_scan(scanptr, 0, 6, 63, 0, 2);
570 scanptr = fill_a_scan(scanptr, 0, 1, 63, 2, 1);
572 scanptr = fill_dc_scans(scanptr, ncomps, 1, 0);
574 scanptr = fill_a_scan(scanptr, 2, 1, 63, 1, 0);
575 scanptr = fill_a_scan(scanptr, 1, 1, 63, 1, 0);
577 scanptr = fill_a_scan(scanptr, 0, 1, 63, 1, 0);
581 scanptr = fill_dc_scans(scanptr, ncomps, 0, 1);
582 scanptr = fill_scans(scanptr, ncomps, 1, 5, 0, 2);
583 scanptr = fill_scans(scanptr, ncomps, 6, 63, 0, 2);
585 scanptr = fill_scans(scanptr, ncomps, 1, 63, 2, 1);
587 scanptr = fill_dc_scans(scanptr, ncomps, 1, 0);
588 scanptr = fill_scans(scanptr, ncomps, 1, 63, 1, 0);
char boolean force_baseline
GLsizei GLenum const GLvoid GLsizei GLenum GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLint GLint GLint GLshort GLshort GLshort GLubyte GLubyte GLubyte GLuint GLuint GLuint GLushort GLushort GLushort GLbyte GLbyte GLbyte GLbyte GLdouble GLdouble GLdouble GLdouble GLfloat GLfloat GLfloat GLfloat GLint GLint GLint GLint GLshort GLshort GLshort GLshort GLubyte GLubyte GLubyte GLubyte GLuint GLuint GLuint GLuint GLushort GLushort GLushort GLushort GLboolean const GLdouble const GLfloat const GLint const GLshort const GLbyte const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLdouble const GLfloat const GLfloat const GLint const GLint const GLshort const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort const GLdouble const GLfloat const GLint const GLshort GLenum GLenum GLenum GLfloat GLenum GLint GLenum GLenum GLenum GLfloat GLenum GLenum GLint GLenum GLfloat GLenum GLint GLint GLushort GLenum GLenum GLfloat GLenum GLenum GLint GLfloat const GLubyte GLenum GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLint GLint GLsizei GLsizei GLint GLenum GLenum const GLvoid GLenum GLenum const GLfloat GLenum GLenum const GLint GLenum GLenum const GLdouble GLenum GLenum const GLfloat GLenum GLenum const GLint GLsizei GLuint GLfloat GLuint GLbitfield GLfloat GLint GLuint GLboolean GLenum GLfloat GLenum GLbitfield GLenum GLfloat GLfloat GLint GLint const GLfloat GLenum GLfloat GLfloat GLint GLint GLfloat GLfloat GLint GLint const GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat GLint GLfloat GLfloat const GLdouble const GLfloat const GLdouble const GLfloat GLint i
jpeg_alloc_quant_table(j_common_ptr cinfo)
jpeg_std_huff_table(j_common_ptr cinfo, boolean isDC, int tblno)
#define SET_COMP(index, id, hsamp, vsamp, quant, dctbl, actbl)
jpeg_default_qtables(j_compress_ptr cinfo, boolean force_baseline)
jpeg_set_colorspace(j_compress_ptr cinfo, J_COLOR_SPACE colorspace)
std_huff_tables(j_compress_ptr cinfo)
jpeg_set_quality(j_compress_ptr cinfo, int quality, boolean force_baseline)
jpeg_set_linear_quality(j_compress_ptr cinfo, int scale_factor, boolean force_baseline)
static const unsigned int std_luminance_quant_tbl[DCTSIZE2]
jpeg_add_quant_table(j_compress_ptr cinfo, int which_tbl, const unsigned int *basic_table, int scale_factor, boolean force_baseline)
jpeg_set_defaults(j_compress_ptr cinfo)
static const unsigned int std_chrominance_quant_tbl[DCTSIZE2]
jpeg_default_colorspace(j_compress_ptr cinfo)
jpeg_quality_scaling(int quality)
jpeg_component_info * compptr
#define ERREXIT1(cinfo, code, p1)
#define ERREXIT2(cinfo, code, p1, p2)
#define JPEG_DATA_PRECISION
struct jpeg_common_struct * j_common_ptr
int const unsigned int * basic_table
#define MAX_COMPS_IN_SCAN
const jpeg_scan_info * scan_info
J_COLOR_SPACE jpeg_color_space
jpeg_scan_info * script_space
int component_index[MAX_COMPS_IN_SCAN]