The fast integer DCT degrades for qualities > 95, so use the slow integer DCT instead to ensure that perceptually lossless performance is maintained.
This commit is contained in:
@@ -1,3 +1,13 @@
|
||||
Significant changes since 1.0.90
|
||||
================================
|
||||
|
||||
[1] Since the fast integer forward DCT seems to degrade for JPEG qualities
|
||||
greater than 95, TurboJPEG/OSS will now automatically use the slow integer
|
||||
forward DCT when generating JPEG images of quality 96 or greater. This
|
||||
reduces compression performance by as much as 15% for these high-quality images
|
||||
but is necessary to ensure that the images are perceptually lossless.
|
||||
|
||||
|
||||
Significant changes since 1.0.1
|
||||
===============================
|
||||
|
||||
|
||||
@@ -193,7 +193,8 @@ DLLEXPORT int DLLCALL tjCompress(tjhandle h,
|
||||
jpeg_set_colorspace(&j->cinfo, JCS_GRAYSCALE);
|
||||
else
|
||||
jpeg_set_colorspace(&j->cinfo, JCS_YCbCr);
|
||||
j->cinfo.dct_method = JDCT_FASTEST;
|
||||
if(qual>=96) j->cinfo.dct_method=JDCT_ISLOW;
|
||||
else j->cinfo.dct_method=JDCT_FASTEST;
|
||||
|
||||
j->cinfo.comp_info[0].h_samp_factor=hsampfactor[jpegsub];
|
||||
j->cinfo.comp_info[1].h_samp_factor=1;
|
||||
|
||||
Reference in New Issue
Block a user