diff options
author | giraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8> | 2009-08-17 02:57:50 +0000 |
---|---|---|
committer | giraffedata <giraffedata@9d0c8265-081b-0410-96cb-a4ca84ce46f8> | 2009-08-17 02:57:50 +0000 |
commit | 950c8a0d2a493c9d7d2ba7a72b23bd303c82a745 (patch) | |
tree | 2b8f4109fd5b3b2b4ec6db59888226d08f2f7d47 /converter/ppm | |
parent | ce30a9aae47529c69ec5b9dfd7846b9f92598de7 (diff) | |
download | netpbm-mirror-950c8a0d2a493c9d7d2ba7a72b23bd303c82a745.tar.gz netpbm-mirror-950c8a0d2a493c9d7d2ba7a72b23bd303c82a745.tar.xz netpbm-mirror-950c8a0d2a493c9d7d2ba7a72b23bd303c82a745.zip |
Release 10.47.02
git-svn-id: http://svn.code.sf.net/p/netpbm/code/advanced@972 9d0c8265-081b-0410-96cb-a4ca84ce46f8
Diffstat (limited to 'converter/ppm')
-rw-r--r-- | converter/ppm/ppmtompeg/jpeg.c | 25 |
1 files changed, 12 insertions, 13 deletions
diff --git a/converter/ppm/ppmtompeg/jpeg.c b/converter/ppm/ppmtompeg/jpeg.c index a6e1eced..a703cf39 100644 --- a/converter/ppm/ppmtompeg/jpeg.c +++ b/converter/ppm/ppmtompeg/jpeg.c @@ -53,6 +53,17 @@ extern void jcopy_sample_rows JPP((JSAMPARRAY input_array, int source_row, #define HEADER_SIZE 607 /*JFIF header size used on output images*/ +static int +minDctVScaledSize(struct jpeg_decompress_struct const cinfo) { + +#if JPEG_LIB_VERSION >= 70 + return cinfo.min_DCT_v_scaled_size; +#else + return cinfo.min_DCT_scaled_size; +#endif +} + + /*=======================================================================* * * @@ -417,11 +428,7 @@ ReadJPEG(MpegFrame * const mf, */ /* set parameters for decompression */ -#ifdef JPEG4 - cinfo.want_raw_output = TRUE; -#else cinfo.raw_data_out = TRUE; -#endif cinfo.out_color_space = JCS_YCbCr; /* calculate image output dimensions */ @@ -467,11 +474,7 @@ ReadJPEG(MpegFrame * const mf, /* Make an 8-row-high sample array that will go away when done with image */ -#ifdef JPEG4 - buffer_height = 8; /* could be 2, 4,8 rows high */ -#else - buffer_height = cinfo.max_v_samp_factor * cinfo.min_DCT_scaled_size; -#endif + buffer_height = cinfo.max_v_samp_factor * minDctVScaledSize(cinfo); for(cp=0,compptr = cinfo.comp_info;cp<cinfo.num_components; cp++,compptr++) { @@ -495,11 +498,7 @@ ReadJPEG(MpegFrame * const mf, while (cinfo.output_scanline < cinfo.output_height) { -#ifdef JPEG4 - (void) jpeg_read_raw_scanlines(&cinfo, scanarray, buffer_height); -#else (void) jpeg_read_raw_data(&cinfo, scanarray, buffer_height); -#endif /* alter subsample ratio's if neccessary */ if ((h_samp[0]==2) && (h_samp[1]==1) && (h_samp[2]==1) && |