39 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
44 qtblptr = & cinfo->quant_tbl_ptrs[
which_tbl];
60 (*qtblptr)->sent_table =
FALSE;
69 16, 11, 10, 16, 24, 40, 51, 61,
70 12, 12, 14, 19, 26, 58, 60, 55,
71 14, 13, 16, 24, 40, 57, 69, 56,
72 14, 17, 22, 29, 51, 87, 80, 62,
73 18, 22, 37, 56, 68, 109, 103, 77,
74 24, 35, 55, 64, 81, 104, 113, 92,
75 49, 64, 78, 87, 103, 121, 120, 101,
76 72, 92, 95, 98, 112, 100, 103, 99
79 17, 18, 24, 47, 99, 99, 99, 99,
80 18, 21, 26, 66, 99, 99, 99, 99,
81 24, 26, 56, 99, 99, 99, 99, 99,
82 47, 66, 99, 99, 99, 99, 99, 99,
83 99, 99, 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
171 if (cinfo->dc_huff_tbl_ptrs[0] !=
NULL)
174 if (cinfo->ac_huff_tbl_ptrs[0] !=
NULL)
177 if (cinfo->dc_huff_tbl_ptrs[1] !=
NULL)
180 if (cinfo->ac_huff_tbl_ptrs[1] !=
NULL)
202 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
208 if (cinfo->comp_info ==
NULL)
215 cinfo->scale_num = 1;
216 cinfo->scale_denom = 1;
225 cinfo->arith_dc_L[
i] = 0;
226 cinfo->arith_dc_U[
i] = 1;
227 cinfo->arith_ac_K[
i] = 5;
231 cinfo->scan_info =
NULL;
232 cinfo->num_scans = 0;
235 cinfo->raw_data_in =
FALSE;
244 cinfo->arith_code = cinfo->data_precision > 8 ?
TRUE :
FALSE;
247 cinfo->optimize_coding =
FALSE;
250 cinfo->CCIR601_sampling =
FALSE;
253 cinfo->do_fancy_downsampling =
TRUE;
256 cinfo->smoothing_factor = 0;
262 cinfo->restart_interval = 0;
263 cinfo->restart_in_rows = 0;
277 cinfo->JFIF_major_version = 1;
278 cinfo->JFIF_minor_version = 1;
279 cinfo->density_unit = 0;
280 cinfo->X_density = 1;
281 cinfo->Y_density = 1;
299 switch (cinfo->in_color_space) {
326 ERREXIT(cinfo, JERR_BAD_IN_COLORSPACE);
341#define SET_COMP(index,id,hsamp,vsamp,quant,dctbl,actbl) \
342 (compptr = &cinfo->comp_info[index], \
343 compptr->component_id = (id), \
344 compptr->h_samp_factor = (hsamp), \
345 compptr->v_samp_factor = (vsamp), \
346 compptr->quant_tbl_no = (quant), \
347 compptr->dc_tbl_no = (dctbl), \
348 compptr->ac_tbl_no = (actbl) )
352 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
360 cinfo->write_JFIF_header =
FALSE;
361 cinfo->write_Adobe_marker =
FALSE;
365 cinfo->num_components = cinfo->input_components;
366 if (cinfo->num_components < 1 || cinfo->num_components >
MAX_COMPONENTS)
367 ERREXIT2(cinfo, JERR_COMPONENT_COUNT, cinfo->num_components,
369 for (ci = 0; ci < cinfo->num_components; ci++) {
374 cinfo->write_JFIF_header =
TRUE;
375 cinfo->num_components = 1;
380 cinfo->write_Adobe_marker =
TRUE;
381 cinfo->num_components = 3;
391 cinfo->write_JFIF_header =
TRUE;
392 cinfo->num_components = 3;
400 cinfo->write_Adobe_marker =
TRUE;
401 cinfo->num_components = 4;
408 cinfo->write_Adobe_marker =
TRUE;
409 cinfo->num_components = 4;
416 cinfo->write_JFIF_header =
TRUE;
417 cinfo->JFIF_major_version = 2;
418 cinfo->num_components = 3;
429 cinfo->write_JFIF_header =
TRUE;
430 cinfo->JFIF_major_version = 2;
431 cinfo->num_components = 3;
439 ERREXIT(cinfo, JERR_BAD_J_COLORSPACE);
444#ifdef C_PROGRESSIVE_SUPPORTED
448 int Ss,
int Se,
int Ah,
int Al)
463 int Ss,
int Se,
int Ah,
int Al)
468 for (ci = 0; ci < ncomps; ci++) {
481fill_dc_scans (
jpeg_scan_info * scanptr,
int ncomps,
int Ah,
int Al)
489 for (ci = 0; ci < ncomps; ci++)
491 scanptr->
Ss = scanptr->
Se = 0;
497 scanptr = fill_scans(scanptr, ncomps, 0, 0, Ah, Al);
517 ERREXIT1(cinfo, JERR_BAD_STATE, cinfo->global_state);
530 nscans = 2 + 4 * ncomps;
555 scanptr = fill_dc_scans(scanptr, ncomps, 0, 1);
557 scanptr = fill_a_scan(scanptr, 0, 1, 5, 0, 2);
559 scanptr = fill_a_scan(scanptr, 2, 1, 63, 0, 1);
560 scanptr = fill_a_scan(scanptr, 1, 1, 63, 0, 1);
562 scanptr = fill_a_scan(scanptr, 0, 6, 63, 0, 2);
564 scanptr = fill_a_scan(scanptr, 0, 1, 63, 2, 1);
566 scanptr = fill_dc_scans(scanptr, ncomps, 1, 0);
568 scanptr = fill_a_scan(scanptr, 2, 1, 63, 1, 0);
569 scanptr = fill_a_scan(scanptr, 1, 1, 63, 1, 0);
571 scanptr = fill_a_scan(scanptr, 0, 1, 63, 1, 0);
575 scanptr = fill_dc_scans(scanptr, ncomps, 0, 1);
576 scanptr = fill_scans(scanptr, ncomps, 1, 5, 0, 2);
577 scanptr = fill_scans(scanptr, ncomps, 6, 63, 0, 2);
579 scanptr = fill_scans(scanptr, ncomps, 1, 63, 2, 1);
581 scanptr = fill_dc_scans(scanptr, ncomps, 1, 0);
582 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)
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]