From 55d342c788b6eb6188789a52e24da44bbeb6fc60 Mon Sep 17 00:00:00 2001 From: DRC Date: Thu, 16 Nov 2023 15:36:47 -0500 Subject: [PATCH] TurboJPEG: Expose/extend hidden "max pixels" param TJPARAM_MAXPIXELS was previously hidden and used only for fuzz testing, but it is potentially useful for calling applications as well, particularly if they want to guard against excessive memory consumption by the tj3LoadImage*() functions. The parameter has also been extended to decompression and lossless transformation functions/methods, mainly as a convenience. (It was already possible for calling applications to impose their own JPEG image size limits by reading the JPEG header prior to decompressing or transforming the image.) --- ChangeLog.md | 6 + cdjpeg.h | 2 - doc/html/group___turbo_j_p_e_g.html | 10 +- doc/html/search/all_6.js | 125 +++++++++---------- doc/html/search/all_7.js | 2 +- doc/html/search/all_8.js | 2 +- doc/html/search/all_9.js | 2 +- doc/html/search/classes_0.js | 6 +- doc/html/search/enums_0.js | 14 +-- doc/html/search/enumvalues_0.js | 127 ++++++++++---------- doc/html/search/functions_0.js | 76 ++++++------ doc/html/search/groups_0.js | 2 +- doc/html/search/typedefs_0.js | 4 +- doc/html/search/variables_0.js | 2 +- doc/html/search/variables_1.js | 4 +- doc/html/search/variables_2.js | 2 +- doc/html/search/variables_3.js | 2 +- doc/html/search/variables_4.js | 4 +- doc/html/search/variables_5.js | 2 +- doc/html/search/variables_6.js | 18 +-- doc/html/search/variables_7.js | 2 +- doc/html/search/variables_8.js | 2 +- doc/html/search/variables_9.js | 2 +- java/TJBench.java | 19 ++- java/doc/constant-values.html | 67 ++++++----- java/doc/index-all.html | 4 + java/doc/member-search-index.js | 2 +- java/doc/member-search-index.zip | Bin 1943 -> 1951 bytes java/doc/org/libjpegturbo/turbojpeg/TJ.html | 96 ++++++++++----- java/doc/package-search-index.zip | Bin 237 -> 237 bytes java/doc/type-search-index.zip | Bin 311 -> 311 bytes java/org/libjpegturbo/turbojpeg/TJ.java | 15 +++ java/org_libjpegturbo_turbojpeg_TJ.h | 2 + rdbmp.c | 8 +- rdgif.c | 12 +- rdppm.c | 6 +- rdtarga.c | 8 +- tjbench.c | 14 ++- turbojpeg-mp.c | 7 +- turbojpeg.c | 21 ++-- turbojpeg.h | 19 ++- 41 files changed, 409 insertions(+), 309 deletions(-) diff --git a/ChangeLog.md b/ChangeLog.md index e2ecbf9c..16ec04cd 100644 --- a/ChangeLog.md +++ b/ChangeLog.md @@ -20,6 +20,12 @@ parameter and option serve the same purpose as the `max_memory_to_use` field in the `jpeg_memory_mgr` struct in the libjpeg API, the `JPEGMEM` environment variable, and the cjpeg/djpeg/jpegtran `-maxmemory` option. +3. Introduced a new parameter (`TJPARAM_MAXPIXELS` in the TurboJPEG C API and +`TJ.PARAM_MAXPIXELS` in the TurboJPEG Java API) and a corresponding TJBench +option (`-maxpixels`) for specifying the maximum number of pixels that the +decompression, lossless transformation, and packed-pixel image loading +functions/methods will process. + 3.0.1 ===== diff --git a/cdjpeg.h b/cdjpeg.h index 471b9a3f..f4da2388 100644 --- a/cdjpeg.h +++ b/cdjpeg.h @@ -40,9 +40,7 @@ struct cjpeg_source_struct { J16SAMPARRAY buffer16; #endif JDIMENSION buffer_height; -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION JDIMENSION max_pixels; -#endif }; diff --git a/doc/html/group___turbo_j_p_e_g.html b/doc/html/group___turbo_j_p_e_g.html index 8fdae045..5ee50a48 100644 --- a/doc/html/group___turbo_j_p_e_g.html +++ b/doc/html/group___turbo_j_p_e_g.html @@ -233,7 +233,9 @@ Enumerations   TJPARAM_XDENSITY, TJPARAM_YDENSITY, TJPARAM_DENSITYUNITS, -TJPARAM_MAXMEMORY +TJPARAM_MAXMEMORY, +
+  TJPARAM_MAXPIXELS
}  Parameters. More...
@@ -984,6 +986,12 @@ YUV Image Format Notes
  • the maximum amount of memory (in megabytes) that will be allocated for intermediate buffers, which are used with progressive JPEG compression and decompression, optimized baseline entropy coding, lossless JPEG compression, and lossless transformation [default: 0 (no limit)]
  • +TJPARAM_MAXPIXELS 

    Image size limit [decompression, lossless transformation, packed-pixel image loading].

    +

    Setting this parameter will cause the decompression, transform, and image loading functions to return an error if the number of pixels in the source image exceeds the specified limit. This allows security-critical applications to guard against excessive memory consumption.

    +

    Value

    + diff --git a/doc/html/search/all_6.js b/doc/html/search/all_6.js index 0b307e31..68d68176 100644 --- a/doc/html/search/all_6.js +++ b/doc/html/search/all_6.js @@ -76,66 +76,67 @@ var searchData= ['tjparam_5flosslesspsv_81',['TJPARAM_LOSSLESSPSV',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82abcc997d40e5bec84817c12b76ef84159',1,'turbojpeg.h']]], ['tjparam_5flosslesspt_82',['TJPARAM_LOSSLESSPT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4a6c6f25764ecaf4231a36bff844e46a',1,'turbojpeg.h']]], ['tjparam_5fmaxmemory_83',['TJPARAM_MAXMEMORY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0de0a8281da45d1fc984edc8918f7dd2',1,'turbojpeg.h']]], - ['tjparam_5fnorealloc_84',['TJPARAM_NOREALLOC',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ae64ffb358bc7b194fd48e0f27750b29b',1,'turbojpeg.h']]], - ['tjparam_5foptimize_85',['TJPARAM_OPTIMIZE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a8f0af9afc0b36443751f9ee82b760aa6',1,'turbojpeg.h']]], - ['tjparam_5fprecision_86',['TJPARAM_PRECISION',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a781db82741934e8cd008d308597c59d8',1,'turbojpeg.h']]], - ['tjparam_5fprogressive_87',['TJPARAM_PROGRESSIVE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a1716f242b3859905b4a317dae8cfb75f',1,'turbojpeg.h']]], - ['tjparam_5fquality_88',['TJPARAM_QUALITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0467e8792621f2d817dc2af563d3186c',1,'turbojpeg.h']]], - ['tjparam_5frestartblocks_89',['TJPARAM_RESTARTBLOCKS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a343c72883b7160f23f3ef46fc548a0ec',1,'turbojpeg.h']]], - ['tjparam_5frestartrows_90',['TJPARAM_RESTARTROWS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a714367585952fe5c863f0dba5bd37e5c',1,'turbojpeg.h']]], - ['tjparam_5fscanlimit_91',['TJPARAM_SCANLIMIT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ac478910e20ecf61b914f9824d80f8167',1,'turbojpeg.h']]], - ['tjparam_5fstoponwarning_92',['TJPARAM_STOPONWARNING',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a555e2212079fa49b30bcd2879c6c8ddb',1,'turbojpeg.h']]], - ['tjparam_5fsubsamp_93',['TJPARAM_SUBSAMP',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a2a3494a8215d3de4fdbaeb2ba6f6b03a',1,'turbojpeg.h']]], - ['tjparam_5fxdensity_94',['TJPARAM_XDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4de5c9d7cab5be806143a43c3b0e0877',1,'turbojpeg.h']]], - ['tjparam_5fydensity_95',['TJPARAM_YDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82abda48f2df7eb9b88e2b7621efb017eba',1,'turbojpeg.h']]], - ['tjpf_96',['TJPF',['../group___turbo_j_p_e_g.html#gac916144e26c3817ac514e64ae5d12e2a',1,'turbojpeg.h']]], - ['tjpf_5fabgr_97',['TJPF_ABGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa1ba1a7f1631dbeaa49a0a85fc4a40081',1,'turbojpeg.h']]], - ['tjpf_5fargb_98',['TJPF_ARGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aae8f846ed9d9de99b6e1dfe448848765c',1,'turbojpeg.h']]], - ['tjpf_5fbgr_99',['TJPF_BGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aab10624437fb8ef495a0b153e65749839',1,'turbojpeg.h']]], - ['tjpf_5fbgra_100',['TJPF_BGRA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aac037ff1845cf9b74bb81a3659c2b9fb4',1,'turbojpeg.h']]], - ['tjpf_5fbgrx_101',['TJPF_BGRX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa2a1fbf569ca79897eae886e3376ca4c8',1,'turbojpeg.h']]], - ['tjpf_5fcmyk_102',['TJPF_CMYK',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7f5100ec44c91994e243f1cf55553f8b',1,'turbojpeg.h']]], - ['tjpf_5fgray_103',['TJPF_GRAY',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa5431b54b015337705f13118073711a1a',1,'turbojpeg.h']]], - ['tjpf_5frgb_104',['TJPF_RGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7ce93230bff449518ce387c17e6ed37c',1,'turbojpeg.h']]], - ['tjpf_5frgba_105',['TJPF_RGBA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa88d2e88fab67f6503cf972e14851cc12',1,'turbojpeg.h']]], - ['tjpf_5frgbx_106',['TJPF_RGBX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa83973bebb7e2dc6fa8bae89ff3f42e01',1,'turbojpeg.h']]], - ['tjpf_5funknown_107',['TJPF_UNKNOWN',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa84c1a6cead7952998e2fb895844a21ed',1,'turbojpeg.h']]], - ['tjpf_5fxbgr_108',['TJPF_XBGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aaf6603b27147de47e212e75dac027b2af',1,'turbojpeg.h']]], - ['tjpf_5fxrgb_109',['TJPF_XRGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aadae996905efcfa3b42a0bb3bea7f9d84',1,'turbojpeg.h']]], - ['tjpixelsize_110',['tjPixelSize',['../group___turbo_j_p_e_g.html#gad77cf8fe5b2bfd3cb3f53098146abb4c',1,'turbojpeg.h']]], - ['tjredoffset_111',['tjRedOffset',['../group___turbo_j_p_e_g.html#gadd9b446742ac8a3923f7992c7988fea8',1,'turbojpeg.h']]], - ['tjregion_112',['tjregion',['../structtjregion.html',1,'']]], - ['tjsamp_113',['TJSAMP',['../group___turbo_j_p_e_g.html#ga1d047060ea80bb9820d540bb928e9074',1,'turbojpeg.h']]], - ['tjsamp_5f411_114',['TJSAMP_411',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a28ec62575e5ea295c3fde3001dc628e2',1,'turbojpeg.h']]], - ['tjsamp_5f420_115',['TJSAMP_420',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a63085dbf683cfe39e513cdb6343e3737',1,'turbojpeg.h']]], - ['tjsamp_5f422_116',['TJSAMP_422',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a136130902cc578f11f32429b59368404',1,'turbojpeg.h']]], - ['tjsamp_5f440_117',['TJSAMP_440',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074accf740e6f3aa6ba20ba922cad13cb974',1,'turbojpeg.h']]], - ['tjsamp_5f441_118',['TJSAMP_441',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3351696e1dd34a083a35b6be8b90122d',1,'turbojpeg.h']]], - ['tjsamp_5f444_119',['TJSAMP_444',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074afb8da4f44197837bdec0a4f593dacae3',1,'turbojpeg.h']]], - ['tjsamp_5fgray_120',['TJSAMP_GRAY',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3f1c9504842ddc7a48d0f690754b6248',1,'turbojpeg.h']]], - ['tjsamp_5funknown_121',['TJSAMP_UNKNOWN',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074ac124fa8f6cb41147e3d670dfbdfb7173',1,'turbojpeg.h']]], - ['tjscaled_122',['TJSCALED',['../group___turbo_j_p_e_g.html#ga84878bb65404204743aa18cac02781df',1,'turbojpeg.h']]], - ['tjscalingfactor_123',['tjscalingfactor',['../structtjscalingfactor.html',1,'']]], - ['tjtransform_124',['tjtransform',['../structtjtransform.html',1,'tjtransform'],['../group___turbo_j_p_e_g.html#ga504805ec0161f1b505397ca0118bf8fd',1,'tjtransform(): turbojpeg.h']]], - ['tjuncropped_125',['TJUNCROPPED',['../group___turbo_j_p_e_g.html#ga6f192ad58a5a5802e145149d83c643bf',1,'turbojpeg.h']]], - ['tjunscaled_126',['TJUNSCALED',['../group___turbo_j_p_e_g.html#ga7880644a0849161ad20933536169ee19',1,'turbojpeg.h']]], - ['tjxop_127',['TJXOP',['../group___turbo_j_p_e_g.html#ga2de531af4e7e6c4f124908376b354866',1,'turbojpeg.h']]], - ['tjxop_5fhflip_128',['TJXOP_HFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aa0df69776caa30f0fa28e26332d311ce',1,'turbojpeg.h']]], - ['tjxop_5fnone_129',['TJXOP_NONE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aad88c0366cd3f7d0eac9d7a3fa1c2c27',1,'turbojpeg.h']]], - ['tjxop_5frot180_130',['TJXOP_ROT180',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a140952eb8dd0300accfcc22726d69692',1,'turbojpeg.h']]], - ['tjxop_5frot270_131',['TJXOP_ROT270',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a3064ee5dfb7f032df332818587567a08',1,'turbojpeg.h']]], - ['tjxop_5frot90_132',['TJXOP_ROT90',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a43b2bbb23bc4bd548422d43fbe9af128',1,'turbojpeg.h']]], - ['tjxop_5ftranspose_133',['TJXOP_TRANSPOSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a31060aed199f886afdd417f80499c32d',1,'turbojpeg.h']]], - ['tjxop_5ftransverse_134',['TJXOP_TRANSVERSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866af3b14d488aea6ece9e5b3df73a74d6a4',1,'turbojpeg.h']]], - ['tjxop_5fvflip_135',['TJXOP_VFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a324eddfbec53b7e691f61e56929d0d5d',1,'turbojpeg.h']]], - ['tjxopt_5farithmetic_136',['TJXOPT_ARITHMETIC',['../group___turbo_j_p_e_g.html#gaecaaa3b7e2af812592c015d83207f010',1,'turbojpeg.h']]], - ['tjxopt_5fcopynone_137',['TJXOPT_COPYNONE',['../group___turbo_j_p_e_g.html#ga153b468cfb905d0de61706c838986fe8',1,'turbojpeg.h']]], - ['tjxopt_5fcrop_138',['TJXOPT_CROP',['../group___turbo_j_p_e_g.html#ga9c771a757fc1294add611906b89ab2d2',1,'turbojpeg.h']]], - ['tjxopt_5fgray_139',['TJXOPT_GRAY',['../group___turbo_j_p_e_g.html#ga3acee7b48ade1b99e5588736007c2589',1,'turbojpeg.h']]], - ['tjxopt_5fnooutput_140',['TJXOPT_NOOUTPUT',['../group___turbo_j_p_e_g.html#gafbf992bbf6e006705886333703ffab31',1,'turbojpeg.h']]], - ['tjxopt_5foptimize_141',['TJXOPT_OPTIMIZE',['../group___turbo_j_p_e_g.html#ga6bedf37aa9e1122f3ec9f7302ca59117',1,'turbojpeg.h']]], - ['tjxopt_5fperfect_142',['TJXOPT_PERFECT',['../group___turbo_j_p_e_g.html#ga50e03cb5ed115330e212417429600b00',1,'turbojpeg.h']]], - ['tjxopt_5fprogressive_143',['TJXOPT_PROGRESSIVE',['../group___turbo_j_p_e_g.html#gad2371c80674584ecc1a7d75e564cf026',1,'turbojpeg.h']]], - ['tjxopt_5ftrim_144',['TJXOPT_TRIM',['../group___turbo_j_p_e_g.html#ga319826b7eb1583c0595bbe7b95428709',1,'turbojpeg.h']]], - ['turbojpeg_145',['TurboJPEG',['../group___turbo_j_p_e_g.html',1,'']]] + ['tjparam_5fmaxpixels_84',['TJPARAM_MAXPIXELS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ac4e95dd2ecd766854feee579406eae68',1,'turbojpeg.h']]], + ['tjparam_5fnorealloc_85',['TJPARAM_NOREALLOC',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ae64ffb358bc7b194fd48e0f27750b29b',1,'turbojpeg.h']]], + ['tjparam_5foptimize_86',['TJPARAM_OPTIMIZE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a8f0af9afc0b36443751f9ee82b760aa6',1,'turbojpeg.h']]], + ['tjparam_5fprecision_87',['TJPARAM_PRECISION',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a781db82741934e8cd008d308597c59d8',1,'turbojpeg.h']]], + ['tjparam_5fprogressive_88',['TJPARAM_PROGRESSIVE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a1716f242b3859905b4a317dae8cfb75f',1,'turbojpeg.h']]], + ['tjparam_5fquality_89',['TJPARAM_QUALITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0467e8792621f2d817dc2af563d3186c',1,'turbojpeg.h']]], + ['tjparam_5frestartblocks_90',['TJPARAM_RESTARTBLOCKS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a343c72883b7160f23f3ef46fc548a0ec',1,'turbojpeg.h']]], + ['tjparam_5frestartrows_91',['TJPARAM_RESTARTROWS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a714367585952fe5c863f0dba5bd37e5c',1,'turbojpeg.h']]], + ['tjparam_5fscanlimit_92',['TJPARAM_SCANLIMIT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ac478910e20ecf61b914f9824d80f8167',1,'turbojpeg.h']]], + ['tjparam_5fstoponwarning_93',['TJPARAM_STOPONWARNING',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a555e2212079fa49b30bcd2879c6c8ddb',1,'turbojpeg.h']]], + ['tjparam_5fsubsamp_94',['TJPARAM_SUBSAMP',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a2a3494a8215d3de4fdbaeb2ba6f6b03a',1,'turbojpeg.h']]], + ['tjparam_5fxdensity_95',['TJPARAM_XDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4de5c9d7cab5be806143a43c3b0e0877',1,'turbojpeg.h']]], + ['tjparam_5fydensity_96',['TJPARAM_YDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82abda48f2df7eb9b88e2b7621efb017eba',1,'turbojpeg.h']]], + ['tjpf_97',['TJPF',['../group___turbo_j_p_e_g.html#gac916144e26c3817ac514e64ae5d12e2a',1,'turbojpeg.h']]], + ['tjpf_5fabgr_98',['TJPF_ABGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa1ba1a7f1631dbeaa49a0a85fc4a40081',1,'turbojpeg.h']]], + ['tjpf_5fargb_99',['TJPF_ARGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aae8f846ed9d9de99b6e1dfe448848765c',1,'turbojpeg.h']]], + ['tjpf_5fbgr_100',['TJPF_BGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aab10624437fb8ef495a0b153e65749839',1,'turbojpeg.h']]], + ['tjpf_5fbgra_101',['TJPF_BGRA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aac037ff1845cf9b74bb81a3659c2b9fb4',1,'turbojpeg.h']]], + ['tjpf_5fbgrx_102',['TJPF_BGRX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa2a1fbf569ca79897eae886e3376ca4c8',1,'turbojpeg.h']]], + ['tjpf_5fcmyk_103',['TJPF_CMYK',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7f5100ec44c91994e243f1cf55553f8b',1,'turbojpeg.h']]], + ['tjpf_5fgray_104',['TJPF_GRAY',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa5431b54b015337705f13118073711a1a',1,'turbojpeg.h']]], + ['tjpf_5frgb_105',['TJPF_RGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7ce93230bff449518ce387c17e6ed37c',1,'turbojpeg.h']]], + ['tjpf_5frgba_106',['TJPF_RGBA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa88d2e88fab67f6503cf972e14851cc12',1,'turbojpeg.h']]], + ['tjpf_5frgbx_107',['TJPF_RGBX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa83973bebb7e2dc6fa8bae89ff3f42e01',1,'turbojpeg.h']]], + ['tjpf_5funknown_108',['TJPF_UNKNOWN',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa84c1a6cead7952998e2fb895844a21ed',1,'turbojpeg.h']]], + ['tjpf_5fxbgr_109',['TJPF_XBGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aaf6603b27147de47e212e75dac027b2af',1,'turbojpeg.h']]], + ['tjpf_5fxrgb_110',['TJPF_XRGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aadae996905efcfa3b42a0bb3bea7f9d84',1,'turbojpeg.h']]], + ['tjpixelsize_111',['tjPixelSize',['../group___turbo_j_p_e_g.html#gad77cf8fe5b2bfd3cb3f53098146abb4c',1,'turbojpeg.h']]], + ['tjredoffset_112',['tjRedOffset',['../group___turbo_j_p_e_g.html#gadd9b446742ac8a3923f7992c7988fea8',1,'turbojpeg.h']]], + ['tjregion_113',['tjregion',['../structtjregion.html',1,'']]], + ['tjsamp_114',['TJSAMP',['../group___turbo_j_p_e_g.html#ga1d047060ea80bb9820d540bb928e9074',1,'turbojpeg.h']]], + ['tjsamp_5f411_115',['TJSAMP_411',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a28ec62575e5ea295c3fde3001dc628e2',1,'turbojpeg.h']]], + ['tjsamp_5f420_116',['TJSAMP_420',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a63085dbf683cfe39e513cdb6343e3737',1,'turbojpeg.h']]], + ['tjsamp_5f422_117',['TJSAMP_422',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a136130902cc578f11f32429b59368404',1,'turbojpeg.h']]], + ['tjsamp_5f440_118',['TJSAMP_440',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074accf740e6f3aa6ba20ba922cad13cb974',1,'turbojpeg.h']]], + ['tjsamp_5f441_119',['TJSAMP_441',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3351696e1dd34a083a35b6be8b90122d',1,'turbojpeg.h']]], + ['tjsamp_5f444_120',['TJSAMP_444',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074afb8da4f44197837bdec0a4f593dacae3',1,'turbojpeg.h']]], + ['tjsamp_5fgray_121',['TJSAMP_GRAY',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3f1c9504842ddc7a48d0f690754b6248',1,'turbojpeg.h']]], + ['tjsamp_5funknown_122',['TJSAMP_UNKNOWN',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074ac124fa8f6cb41147e3d670dfbdfb7173',1,'turbojpeg.h']]], + ['tjscaled_123',['TJSCALED',['../group___turbo_j_p_e_g.html#ga84878bb65404204743aa18cac02781df',1,'turbojpeg.h']]], + ['tjscalingfactor_124',['tjscalingfactor',['../structtjscalingfactor.html',1,'']]], + ['tjtransform_125',['tjtransform',['../structtjtransform.html',1,'tjtransform'],['../group___turbo_j_p_e_g.html#ga504805ec0161f1b505397ca0118bf8fd',1,'tjtransform(): turbojpeg.h']]], + ['tjuncropped_126',['TJUNCROPPED',['../group___turbo_j_p_e_g.html#ga6f192ad58a5a5802e145149d83c643bf',1,'turbojpeg.h']]], + ['tjunscaled_127',['TJUNSCALED',['../group___turbo_j_p_e_g.html#ga7880644a0849161ad20933536169ee19',1,'turbojpeg.h']]], + ['tjxop_128',['TJXOP',['../group___turbo_j_p_e_g.html#ga2de531af4e7e6c4f124908376b354866',1,'turbojpeg.h']]], + ['tjxop_5fhflip_129',['TJXOP_HFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aa0df69776caa30f0fa28e26332d311ce',1,'turbojpeg.h']]], + ['tjxop_5fnone_130',['TJXOP_NONE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aad88c0366cd3f7d0eac9d7a3fa1c2c27',1,'turbojpeg.h']]], + ['tjxop_5frot180_131',['TJXOP_ROT180',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a140952eb8dd0300accfcc22726d69692',1,'turbojpeg.h']]], + ['tjxop_5frot270_132',['TJXOP_ROT270',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a3064ee5dfb7f032df332818587567a08',1,'turbojpeg.h']]], + ['tjxop_5frot90_133',['TJXOP_ROT90',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a43b2bbb23bc4bd548422d43fbe9af128',1,'turbojpeg.h']]], + ['tjxop_5ftranspose_134',['TJXOP_TRANSPOSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a31060aed199f886afdd417f80499c32d',1,'turbojpeg.h']]], + ['tjxop_5ftransverse_135',['TJXOP_TRANSVERSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866af3b14d488aea6ece9e5b3df73a74d6a4',1,'turbojpeg.h']]], + ['tjxop_5fvflip_136',['TJXOP_VFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a324eddfbec53b7e691f61e56929d0d5d',1,'turbojpeg.h']]], + ['tjxopt_5farithmetic_137',['TJXOPT_ARITHMETIC',['../group___turbo_j_p_e_g.html#gaecaaa3b7e2af812592c015d83207f010',1,'turbojpeg.h']]], + ['tjxopt_5fcopynone_138',['TJXOPT_COPYNONE',['../group___turbo_j_p_e_g.html#ga153b468cfb905d0de61706c838986fe8',1,'turbojpeg.h']]], + ['tjxopt_5fcrop_139',['TJXOPT_CROP',['../group___turbo_j_p_e_g.html#ga9c771a757fc1294add611906b89ab2d2',1,'turbojpeg.h']]], + ['tjxopt_5fgray_140',['TJXOPT_GRAY',['../group___turbo_j_p_e_g.html#ga3acee7b48ade1b99e5588736007c2589',1,'turbojpeg.h']]], + ['tjxopt_5fnooutput_141',['TJXOPT_NOOUTPUT',['../group___turbo_j_p_e_g.html#gafbf992bbf6e006705886333703ffab31',1,'turbojpeg.h']]], + ['tjxopt_5foptimize_142',['TJXOPT_OPTIMIZE',['../group___turbo_j_p_e_g.html#ga6bedf37aa9e1122f3ec9f7302ca59117',1,'turbojpeg.h']]], + ['tjxopt_5fperfect_143',['TJXOPT_PERFECT',['../group___turbo_j_p_e_g.html#ga50e03cb5ed115330e212417429600b00',1,'turbojpeg.h']]], + ['tjxopt_5fprogressive_144',['TJXOPT_PROGRESSIVE',['../group___turbo_j_p_e_g.html#gad2371c80674584ecc1a7d75e564cf026',1,'turbojpeg.h']]], + ['tjxopt_5ftrim_145',['TJXOPT_TRIM',['../group___turbo_j_p_e_g.html#ga319826b7eb1583c0595bbe7b95428709',1,'turbojpeg.h']]], + ['turbojpeg_146',['TurboJPEG',['../group___turbo_j_p_e_g.html',1,'']]] ]; diff --git a/doc/html/search/all_7.js b/doc/html/search/all_7.js index 7d2132b2..3344dcae 100644 --- a/doc/html/search/all_7.js +++ b/doc/html/search/all_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['w_146',['w',['../structtjregion.html#ab6eb73ceef584fc23c8c8097926dce42',1,'tjregion']]] + ['w_147',['w',['../structtjregion.html#ab6eb73ceef584fc23c8c8097926dce42',1,'tjregion']]] ]; diff --git a/doc/html/search/all_8.js b/doc/html/search/all_8.js index 4ef20120..c32b8d82 100644 --- a/doc/html/search/all_8.js +++ b/doc/html/search/all_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['x_147',['x',['../structtjregion.html#a4b6a37a93997091b26a75831fa291ad9',1,'tjregion']]] + ['x_148',['x',['../structtjregion.html#a4b6a37a93997091b26a75831fa291ad9',1,'tjregion']]] ]; diff --git a/doc/html/search/all_9.js b/doc/html/search/all_9.js index 3a72aaf2..cc8d0c59 100644 --- a/doc/html/search/all_9.js +++ b/doc/html/search/all_9.js @@ -1,4 +1,4 @@ var searchData= [ - ['y_148',['y',['../structtjregion.html#a7b3e0c24cfe87acc80e334cafdcf22c2',1,'tjregion']]] + ['y_149',['y',['../structtjregion.html#a7b3e0c24cfe87acc80e334cafdcf22c2',1,'tjregion']]] ]; diff --git a/doc/html/search/classes_0.js b/doc/html/search/classes_0.js index ff3fb9a6..307c5656 100644 --- a/doc/html/search/classes_0.js +++ b/doc/html/search/classes_0.js @@ -1,6 +1,6 @@ var searchData= [ - ['tjregion_149',['tjregion',['../structtjregion.html',1,'']]], - ['tjscalingfactor_150',['tjscalingfactor',['../structtjscalingfactor.html',1,'']]], - ['tjtransform_151',['tjtransform',['../structtjtransform.html',1,'']]] + ['tjregion_150',['tjregion',['../structtjregion.html',1,'']]], + ['tjscalingfactor_151',['tjscalingfactor',['../structtjscalingfactor.html',1,'']]], + ['tjtransform_152',['tjtransform',['../structtjtransform.html',1,'']]] ]; diff --git a/doc/html/search/enums_0.js b/doc/html/search/enums_0.js index 2f372f6e..496ab634 100644 --- a/doc/html/search/enums_0.js +++ b/doc/html/search/enums_0.js @@ -1,10 +1,10 @@ var searchData= [ - ['tjcs_212',['TJCS',['../group___turbo_j_p_e_g.html#ga4f83ad3368e0e29d1957be0efa7c3720',1,'turbojpeg.h']]], - ['tjerr_213',['TJERR',['../group___turbo_j_p_e_g.html#gafbc17cfa57d0d5d11fea35ac025950fe',1,'turbojpeg.h']]], - ['tjinit_214',['TJINIT',['../group___turbo_j_p_e_g.html#ga3850bbee1313e752e667b4eb08b1e086',1,'turbojpeg.h']]], - ['tjparam_215',['TJPARAM',['../group___turbo_j_p_e_g.html#gaa0f6be63ba78278299c9f5c12031fe82',1,'turbojpeg.h']]], - ['tjpf_216',['TJPF',['../group___turbo_j_p_e_g.html#gac916144e26c3817ac514e64ae5d12e2a',1,'turbojpeg.h']]], - ['tjsamp_217',['TJSAMP',['../group___turbo_j_p_e_g.html#ga1d047060ea80bb9820d540bb928e9074',1,'turbojpeg.h']]], - ['tjxop_218',['TJXOP',['../group___turbo_j_p_e_g.html#ga2de531af4e7e6c4f124908376b354866',1,'turbojpeg.h']]] + ['tjcs_213',['TJCS',['../group___turbo_j_p_e_g.html#ga4f83ad3368e0e29d1957be0efa7c3720',1,'turbojpeg.h']]], + ['tjerr_214',['TJERR',['../group___turbo_j_p_e_g.html#gafbc17cfa57d0d5d11fea35ac025950fe',1,'turbojpeg.h']]], + ['tjinit_215',['TJINIT',['../group___turbo_j_p_e_g.html#ga3850bbee1313e752e667b4eb08b1e086',1,'turbojpeg.h']]], + ['tjparam_216',['TJPARAM',['../group___turbo_j_p_e_g.html#gaa0f6be63ba78278299c9f5c12031fe82',1,'turbojpeg.h']]], + ['tjpf_217',['TJPF',['../group___turbo_j_p_e_g.html#gac916144e26c3817ac514e64ae5d12e2a',1,'turbojpeg.h']]], + ['tjsamp_218',['TJSAMP',['../group___turbo_j_p_e_g.html#ga1d047060ea80bb9820d540bb928e9074',1,'turbojpeg.h']]], + ['tjxop_219',['TJXOP',['../group___turbo_j_p_e_g.html#ga2de531af4e7e6c4f124908376b354866',1,'turbojpeg.h']]] ]; diff --git a/doc/html/search/enumvalues_0.js b/doc/html/search/enumvalues_0.js index 8b8a3715..97724c25 100644 --- a/doc/html/search/enumvalues_0.js +++ b/doc/html/search/enumvalues_0.js @@ -1,66 +1,67 @@ var searchData= [ - ['tjcs_5fcmyk_219',['TJCS_CMYK',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a6c8b636152ac8195b869587db315ee53',1,'turbojpeg.h']]], - ['tjcs_5fgray_220',['TJCS_GRAY',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720ab3e7d6a87f695e45b81c1b5262b5a50a',1,'turbojpeg.h']]], - ['tjcs_5frgb_221',['TJCS_RGB',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a677cb7ccb85c4038ac41964a2e09e555',1,'turbojpeg.h']]], - ['tjcs_5fycbcr_222',['TJCS_YCbCr',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a7389b8f65bb387ffedce3efd0d78ec75',1,'turbojpeg.h']]], - ['tjcs_5fycck_223',['TJCS_YCCK',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a53839e0fe867b76b58d16b0a1a7c598e',1,'turbojpeg.h']]], - ['tjerr_5ffatal_224',['TJERR_FATAL',['../group___turbo_j_p_e_g.html#ggafbc17cfa57d0d5d11fea35ac025950feafc9cceeada13122b09e4851e3788039a',1,'turbojpeg.h']]], - ['tjerr_5fwarning_225',['TJERR_WARNING',['../group___turbo_j_p_e_g.html#ggafbc17cfa57d0d5d11fea35ac025950fea342dd6e2aedb47bb257b4e7568329b59',1,'turbojpeg.h']]], - ['tjinit_5fcompress_226',['TJINIT_COMPRESS',['../group___turbo_j_p_e_g.html#gga3850bbee1313e752e667b4eb08b1e086aa45ac279e3dc6ffabc4b0f45864da796',1,'turbojpeg.h']]], - ['tjinit_5fdecompress_227',['TJINIT_DECOMPRESS',['../group___turbo_j_p_e_g.html#gga3850bbee1313e752e667b4eb08b1e086a4b8ca1ef700699b71350700bf95c2167',1,'turbojpeg.h']]], - ['tjinit_5ftransform_228',['TJINIT_TRANSFORM',['../group___turbo_j_p_e_g.html#gga3850bbee1313e752e667b4eb08b1e086a8d58a2a4c45b3e0cd349746544a6e0c2',1,'turbojpeg.h']]], - ['tjparam_5farithmetic_229',['TJPARAM_ARITHMETIC',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a1c756757384308145602c040524aebf7',1,'turbojpeg.h']]], - ['tjparam_5fbottomup_230',['TJPARAM_BOTTOMUP',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a924657172695ed6cb0b128219546fcce',1,'turbojpeg.h']]], - ['tjparam_5fcolorspace_231',['TJPARAM_COLORSPACE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a46a10d46309514907d0c39fcd86c324c',1,'turbojpeg.h']]], - ['tjparam_5fdensityunits_232',['TJPARAM_DENSITYUNITS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4c045981bd8a303521a401dbbe1df208',1,'turbojpeg.h']]], - ['tjparam_5ffastdct_233',['TJPARAM_FASTDCT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a6914692ac6ec5567787d592b7563f627',1,'turbojpeg.h']]], - ['tjparam_5ffastupsample_234',['TJPARAM_FASTUPSAMPLE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0e051ac106f7b7402b690a5daf4869c0',1,'turbojpeg.h']]], - ['tjparam_5fjpegheight_235',['TJPARAM_JPEGHEIGHT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a8f76673be73f2b659440a9572a65a95f',1,'turbojpeg.h']]], - ['tjparam_5fjpegwidth_236',['TJPARAM_JPEGWIDTH',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a02ab77fb294a0c9061a78cd424c82dd8',1,'turbojpeg.h']]], - ['tjparam_5flossless_237',['TJPARAM_LOSSLESS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a249f35f0770792b19f995e603bb17c6f',1,'turbojpeg.h']]], - ['tjparam_5flosslesspsv_238',['TJPARAM_LOSSLESSPSV',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82abcc997d40e5bec84817c12b76ef84159',1,'turbojpeg.h']]], - ['tjparam_5flosslesspt_239',['TJPARAM_LOSSLESSPT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4a6c6f25764ecaf4231a36bff844e46a',1,'turbojpeg.h']]], - ['tjparam_5fmaxmemory_240',['TJPARAM_MAXMEMORY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0de0a8281da45d1fc984edc8918f7dd2',1,'turbojpeg.h']]], - ['tjparam_5fnorealloc_241',['TJPARAM_NOREALLOC',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ae64ffb358bc7b194fd48e0f27750b29b',1,'turbojpeg.h']]], - ['tjparam_5foptimize_242',['TJPARAM_OPTIMIZE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a8f0af9afc0b36443751f9ee82b760aa6',1,'turbojpeg.h']]], - ['tjparam_5fprecision_243',['TJPARAM_PRECISION',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a781db82741934e8cd008d308597c59d8',1,'turbojpeg.h']]], - ['tjparam_5fprogressive_244',['TJPARAM_PROGRESSIVE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a1716f242b3859905b4a317dae8cfb75f',1,'turbojpeg.h']]], - ['tjparam_5fquality_245',['TJPARAM_QUALITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0467e8792621f2d817dc2af563d3186c',1,'turbojpeg.h']]], - ['tjparam_5frestartblocks_246',['TJPARAM_RESTARTBLOCKS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a343c72883b7160f23f3ef46fc548a0ec',1,'turbojpeg.h']]], - ['tjparam_5frestartrows_247',['TJPARAM_RESTARTROWS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a714367585952fe5c863f0dba5bd37e5c',1,'turbojpeg.h']]], - ['tjparam_5fscanlimit_248',['TJPARAM_SCANLIMIT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ac478910e20ecf61b914f9824d80f8167',1,'turbojpeg.h']]], - ['tjparam_5fstoponwarning_249',['TJPARAM_STOPONWARNING',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a555e2212079fa49b30bcd2879c6c8ddb',1,'turbojpeg.h']]], - ['tjparam_5fsubsamp_250',['TJPARAM_SUBSAMP',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a2a3494a8215d3de4fdbaeb2ba6f6b03a',1,'turbojpeg.h']]], - ['tjparam_5fxdensity_251',['TJPARAM_XDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4de5c9d7cab5be806143a43c3b0e0877',1,'turbojpeg.h']]], - ['tjparam_5fydensity_252',['TJPARAM_YDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82abda48f2df7eb9b88e2b7621efb017eba',1,'turbojpeg.h']]], - ['tjpf_5fabgr_253',['TJPF_ABGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa1ba1a7f1631dbeaa49a0a85fc4a40081',1,'turbojpeg.h']]], - ['tjpf_5fargb_254',['TJPF_ARGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aae8f846ed9d9de99b6e1dfe448848765c',1,'turbojpeg.h']]], - ['tjpf_5fbgr_255',['TJPF_BGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aab10624437fb8ef495a0b153e65749839',1,'turbojpeg.h']]], - ['tjpf_5fbgra_256',['TJPF_BGRA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aac037ff1845cf9b74bb81a3659c2b9fb4',1,'turbojpeg.h']]], - ['tjpf_5fbgrx_257',['TJPF_BGRX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa2a1fbf569ca79897eae886e3376ca4c8',1,'turbojpeg.h']]], - ['tjpf_5fcmyk_258',['TJPF_CMYK',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7f5100ec44c91994e243f1cf55553f8b',1,'turbojpeg.h']]], - ['tjpf_5fgray_259',['TJPF_GRAY',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa5431b54b015337705f13118073711a1a',1,'turbojpeg.h']]], - ['tjpf_5frgb_260',['TJPF_RGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7ce93230bff449518ce387c17e6ed37c',1,'turbojpeg.h']]], - ['tjpf_5frgba_261',['TJPF_RGBA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa88d2e88fab67f6503cf972e14851cc12',1,'turbojpeg.h']]], - ['tjpf_5frgbx_262',['TJPF_RGBX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa83973bebb7e2dc6fa8bae89ff3f42e01',1,'turbojpeg.h']]], - ['tjpf_5funknown_263',['TJPF_UNKNOWN',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa84c1a6cead7952998e2fb895844a21ed',1,'turbojpeg.h']]], - ['tjpf_5fxbgr_264',['TJPF_XBGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aaf6603b27147de47e212e75dac027b2af',1,'turbojpeg.h']]], - ['tjpf_5fxrgb_265',['TJPF_XRGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aadae996905efcfa3b42a0bb3bea7f9d84',1,'turbojpeg.h']]], - ['tjsamp_5f411_266',['TJSAMP_411',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a28ec62575e5ea295c3fde3001dc628e2',1,'turbojpeg.h']]], - ['tjsamp_5f420_267',['TJSAMP_420',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a63085dbf683cfe39e513cdb6343e3737',1,'turbojpeg.h']]], - ['tjsamp_5f422_268',['TJSAMP_422',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a136130902cc578f11f32429b59368404',1,'turbojpeg.h']]], - ['tjsamp_5f440_269',['TJSAMP_440',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074accf740e6f3aa6ba20ba922cad13cb974',1,'turbojpeg.h']]], - ['tjsamp_5f441_270',['TJSAMP_441',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3351696e1dd34a083a35b6be8b90122d',1,'turbojpeg.h']]], - ['tjsamp_5f444_271',['TJSAMP_444',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074afb8da4f44197837bdec0a4f593dacae3',1,'turbojpeg.h']]], - ['tjsamp_5fgray_272',['TJSAMP_GRAY',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3f1c9504842ddc7a48d0f690754b6248',1,'turbojpeg.h']]], - ['tjsamp_5funknown_273',['TJSAMP_UNKNOWN',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074ac124fa8f6cb41147e3d670dfbdfb7173',1,'turbojpeg.h']]], - ['tjxop_5fhflip_274',['TJXOP_HFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aa0df69776caa30f0fa28e26332d311ce',1,'turbojpeg.h']]], - ['tjxop_5fnone_275',['TJXOP_NONE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aad88c0366cd3f7d0eac9d7a3fa1c2c27',1,'turbojpeg.h']]], - ['tjxop_5frot180_276',['TJXOP_ROT180',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a140952eb8dd0300accfcc22726d69692',1,'turbojpeg.h']]], - ['tjxop_5frot270_277',['TJXOP_ROT270',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a3064ee5dfb7f032df332818587567a08',1,'turbojpeg.h']]], - ['tjxop_5frot90_278',['TJXOP_ROT90',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a43b2bbb23bc4bd548422d43fbe9af128',1,'turbojpeg.h']]], - ['tjxop_5ftranspose_279',['TJXOP_TRANSPOSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a31060aed199f886afdd417f80499c32d',1,'turbojpeg.h']]], - ['tjxop_5ftransverse_280',['TJXOP_TRANSVERSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866af3b14d488aea6ece9e5b3df73a74d6a4',1,'turbojpeg.h']]], - ['tjxop_5fvflip_281',['TJXOP_VFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a324eddfbec53b7e691f61e56929d0d5d',1,'turbojpeg.h']]] + ['tjcs_5fcmyk_220',['TJCS_CMYK',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a6c8b636152ac8195b869587db315ee53',1,'turbojpeg.h']]], + ['tjcs_5fgray_221',['TJCS_GRAY',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720ab3e7d6a87f695e45b81c1b5262b5a50a',1,'turbojpeg.h']]], + ['tjcs_5frgb_222',['TJCS_RGB',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a677cb7ccb85c4038ac41964a2e09e555',1,'turbojpeg.h']]], + ['tjcs_5fycbcr_223',['TJCS_YCbCr',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a7389b8f65bb387ffedce3efd0d78ec75',1,'turbojpeg.h']]], + ['tjcs_5fycck_224',['TJCS_YCCK',['../group___turbo_j_p_e_g.html#gga4f83ad3368e0e29d1957be0efa7c3720a53839e0fe867b76b58d16b0a1a7c598e',1,'turbojpeg.h']]], + ['tjerr_5ffatal_225',['TJERR_FATAL',['../group___turbo_j_p_e_g.html#ggafbc17cfa57d0d5d11fea35ac025950feafc9cceeada13122b09e4851e3788039a',1,'turbojpeg.h']]], + ['tjerr_5fwarning_226',['TJERR_WARNING',['../group___turbo_j_p_e_g.html#ggafbc17cfa57d0d5d11fea35ac025950fea342dd6e2aedb47bb257b4e7568329b59',1,'turbojpeg.h']]], + ['tjinit_5fcompress_227',['TJINIT_COMPRESS',['../group___turbo_j_p_e_g.html#gga3850bbee1313e752e667b4eb08b1e086aa45ac279e3dc6ffabc4b0f45864da796',1,'turbojpeg.h']]], + ['tjinit_5fdecompress_228',['TJINIT_DECOMPRESS',['../group___turbo_j_p_e_g.html#gga3850bbee1313e752e667b4eb08b1e086a4b8ca1ef700699b71350700bf95c2167',1,'turbojpeg.h']]], + ['tjinit_5ftransform_229',['TJINIT_TRANSFORM',['../group___turbo_j_p_e_g.html#gga3850bbee1313e752e667b4eb08b1e086a8d58a2a4c45b3e0cd349746544a6e0c2',1,'turbojpeg.h']]], + ['tjparam_5farithmetic_230',['TJPARAM_ARITHMETIC',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a1c756757384308145602c040524aebf7',1,'turbojpeg.h']]], + ['tjparam_5fbottomup_231',['TJPARAM_BOTTOMUP',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a924657172695ed6cb0b128219546fcce',1,'turbojpeg.h']]], + ['tjparam_5fcolorspace_232',['TJPARAM_COLORSPACE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a46a10d46309514907d0c39fcd86c324c',1,'turbojpeg.h']]], + ['tjparam_5fdensityunits_233',['TJPARAM_DENSITYUNITS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4c045981bd8a303521a401dbbe1df208',1,'turbojpeg.h']]], + ['tjparam_5ffastdct_234',['TJPARAM_FASTDCT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a6914692ac6ec5567787d592b7563f627',1,'turbojpeg.h']]], + ['tjparam_5ffastupsample_235',['TJPARAM_FASTUPSAMPLE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0e051ac106f7b7402b690a5daf4869c0',1,'turbojpeg.h']]], + ['tjparam_5fjpegheight_236',['TJPARAM_JPEGHEIGHT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a8f76673be73f2b659440a9572a65a95f',1,'turbojpeg.h']]], + ['tjparam_5fjpegwidth_237',['TJPARAM_JPEGWIDTH',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a02ab77fb294a0c9061a78cd424c82dd8',1,'turbojpeg.h']]], + ['tjparam_5flossless_238',['TJPARAM_LOSSLESS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a249f35f0770792b19f995e603bb17c6f',1,'turbojpeg.h']]], + ['tjparam_5flosslesspsv_239',['TJPARAM_LOSSLESSPSV',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82abcc997d40e5bec84817c12b76ef84159',1,'turbojpeg.h']]], + ['tjparam_5flosslesspt_240',['TJPARAM_LOSSLESSPT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4a6c6f25764ecaf4231a36bff844e46a',1,'turbojpeg.h']]], + ['tjparam_5fmaxmemory_241',['TJPARAM_MAXMEMORY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0de0a8281da45d1fc984edc8918f7dd2',1,'turbojpeg.h']]], + ['tjparam_5fmaxpixels_242',['TJPARAM_MAXPIXELS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ac4e95dd2ecd766854feee579406eae68',1,'turbojpeg.h']]], + ['tjparam_5fnorealloc_243',['TJPARAM_NOREALLOC',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ae64ffb358bc7b194fd48e0f27750b29b',1,'turbojpeg.h']]], + ['tjparam_5foptimize_244',['TJPARAM_OPTIMIZE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a8f0af9afc0b36443751f9ee82b760aa6',1,'turbojpeg.h']]], + ['tjparam_5fprecision_245',['TJPARAM_PRECISION',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a781db82741934e8cd008d308597c59d8',1,'turbojpeg.h']]], + ['tjparam_5fprogressive_246',['TJPARAM_PROGRESSIVE',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a1716f242b3859905b4a317dae8cfb75f',1,'turbojpeg.h']]], + ['tjparam_5fquality_247',['TJPARAM_QUALITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a0467e8792621f2d817dc2af563d3186c',1,'turbojpeg.h']]], + ['tjparam_5frestartblocks_248',['TJPARAM_RESTARTBLOCKS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a343c72883b7160f23f3ef46fc548a0ec',1,'turbojpeg.h']]], + ['tjparam_5frestartrows_249',['TJPARAM_RESTARTROWS',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a714367585952fe5c863f0dba5bd37e5c',1,'turbojpeg.h']]], + ['tjparam_5fscanlimit_250',['TJPARAM_SCANLIMIT',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82ac478910e20ecf61b914f9824d80f8167',1,'turbojpeg.h']]], + ['tjparam_5fstoponwarning_251',['TJPARAM_STOPONWARNING',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a555e2212079fa49b30bcd2879c6c8ddb',1,'turbojpeg.h']]], + ['tjparam_5fsubsamp_252',['TJPARAM_SUBSAMP',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a2a3494a8215d3de4fdbaeb2ba6f6b03a',1,'turbojpeg.h']]], + ['tjparam_5fxdensity_253',['TJPARAM_XDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82a4de5c9d7cab5be806143a43c3b0e0877',1,'turbojpeg.h']]], + ['tjparam_5fydensity_254',['TJPARAM_YDENSITY',['../group___turbo_j_p_e_g.html#ggaa0f6be63ba78278299c9f5c12031fe82abda48f2df7eb9b88e2b7621efb017eba',1,'turbojpeg.h']]], + ['tjpf_5fabgr_255',['TJPF_ABGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa1ba1a7f1631dbeaa49a0a85fc4a40081',1,'turbojpeg.h']]], + ['tjpf_5fargb_256',['TJPF_ARGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aae8f846ed9d9de99b6e1dfe448848765c',1,'turbojpeg.h']]], + ['tjpf_5fbgr_257',['TJPF_BGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aab10624437fb8ef495a0b153e65749839',1,'turbojpeg.h']]], + ['tjpf_5fbgra_258',['TJPF_BGRA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aac037ff1845cf9b74bb81a3659c2b9fb4',1,'turbojpeg.h']]], + ['tjpf_5fbgrx_259',['TJPF_BGRX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa2a1fbf569ca79897eae886e3376ca4c8',1,'turbojpeg.h']]], + ['tjpf_5fcmyk_260',['TJPF_CMYK',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7f5100ec44c91994e243f1cf55553f8b',1,'turbojpeg.h']]], + ['tjpf_5fgray_261',['TJPF_GRAY',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa5431b54b015337705f13118073711a1a',1,'turbojpeg.h']]], + ['tjpf_5frgb_262',['TJPF_RGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa7ce93230bff449518ce387c17e6ed37c',1,'turbojpeg.h']]], + ['tjpf_5frgba_263',['TJPF_RGBA',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa88d2e88fab67f6503cf972e14851cc12',1,'turbojpeg.h']]], + ['tjpf_5frgbx_264',['TJPF_RGBX',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa83973bebb7e2dc6fa8bae89ff3f42e01',1,'turbojpeg.h']]], + ['tjpf_5funknown_265',['TJPF_UNKNOWN',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aa84c1a6cead7952998e2fb895844a21ed',1,'turbojpeg.h']]], + ['tjpf_5fxbgr_266',['TJPF_XBGR',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aaf6603b27147de47e212e75dac027b2af',1,'turbojpeg.h']]], + ['tjpf_5fxrgb_267',['TJPF_XRGB',['../group___turbo_j_p_e_g.html#ggac916144e26c3817ac514e64ae5d12e2aadae996905efcfa3b42a0bb3bea7f9d84',1,'turbojpeg.h']]], + ['tjsamp_5f411_268',['TJSAMP_411',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a28ec62575e5ea295c3fde3001dc628e2',1,'turbojpeg.h']]], + ['tjsamp_5f420_269',['TJSAMP_420',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a63085dbf683cfe39e513cdb6343e3737',1,'turbojpeg.h']]], + ['tjsamp_5f422_270',['TJSAMP_422',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a136130902cc578f11f32429b59368404',1,'turbojpeg.h']]], + ['tjsamp_5f440_271',['TJSAMP_440',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074accf740e6f3aa6ba20ba922cad13cb974',1,'turbojpeg.h']]], + ['tjsamp_5f441_272',['TJSAMP_441',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3351696e1dd34a083a35b6be8b90122d',1,'turbojpeg.h']]], + ['tjsamp_5f444_273',['TJSAMP_444',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074afb8da4f44197837bdec0a4f593dacae3',1,'turbojpeg.h']]], + ['tjsamp_5fgray_274',['TJSAMP_GRAY',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074a3f1c9504842ddc7a48d0f690754b6248',1,'turbojpeg.h']]], + ['tjsamp_5funknown_275',['TJSAMP_UNKNOWN',['../group___turbo_j_p_e_g.html#gga1d047060ea80bb9820d540bb928e9074ac124fa8f6cb41147e3d670dfbdfb7173',1,'turbojpeg.h']]], + ['tjxop_5fhflip_276',['TJXOP_HFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aa0df69776caa30f0fa28e26332d311ce',1,'turbojpeg.h']]], + ['tjxop_5fnone_277',['TJXOP_NONE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866aad88c0366cd3f7d0eac9d7a3fa1c2c27',1,'turbojpeg.h']]], + ['tjxop_5frot180_278',['TJXOP_ROT180',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a140952eb8dd0300accfcc22726d69692',1,'turbojpeg.h']]], + ['tjxop_5frot270_279',['TJXOP_ROT270',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a3064ee5dfb7f032df332818587567a08',1,'turbojpeg.h']]], + ['tjxop_5frot90_280',['TJXOP_ROT90',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a43b2bbb23bc4bd548422d43fbe9af128',1,'turbojpeg.h']]], + ['tjxop_5ftranspose_281',['TJXOP_TRANSPOSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a31060aed199f886afdd417f80499c32d',1,'turbojpeg.h']]], + ['tjxop_5ftransverse_282',['TJXOP_TRANSVERSE',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866af3b14d488aea6ece9e5b3df73a74d6a4',1,'turbojpeg.h']]], + ['tjxop_5fvflip_283',['TJXOP_VFLIP',['../group___turbo_j_p_e_g.html#gga2de531af4e7e6c4f124908376b354866a324eddfbec53b7e691f61e56929d0d5d',1,'turbojpeg.h']]] ]; diff --git a/doc/html/search/functions_0.js b/doc/html/search/functions_0.js index 18f7e3fe..4a2290cc 100644 --- a/doc/html/search/functions_0.js +++ b/doc/html/search/functions_0.js @@ -1,41 +1,41 @@ var searchData= [ - ['tj3alloc_152',['tj3Alloc',['../group___turbo_j_p_e_g.html#gab40a0b231122f536e503e3394569a68d',1,'turbojpeg.h']]], - ['tj3compress12_153',['tj3Compress12',['../group___turbo_j_p_e_g.html#ga9a1968c384ec7abb6122830253ebf570',1,'turbojpeg.h']]], - ['tj3compress16_154',['tj3Compress16',['../group___turbo_j_p_e_g.html#ga77901b71d0471784f318ada31ff4e7bd',1,'turbojpeg.h']]], - ['tj3compress8_155',['tj3Compress8',['../group___turbo_j_p_e_g.html#ga2cc418a2dab709ad7f30f5b25905f138',1,'turbojpeg.h']]], - ['tj3compressfromyuv8_156',['tj3CompressFromYUV8',['../group___turbo_j_p_e_g.html#ga041c870d9c669eb3f385c78f4346c43f',1,'turbojpeg.h']]], - ['tj3compressfromyuvplanes8_157',['tj3CompressFromYUVPlanes8',['../group___turbo_j_p_e_g.html#gac9f5ace3e73805b476c95dda9f8d0cd0',1,'turbojpeg.h']]], - ['tj3decodeyuv8_158',['tj3DecodeYUV8',['../group___turbo_j_p_e_g.html#gaa1eb574f38b1c1de43a6c7aafcf68d8c',1,'turbojpeg.h']]], - ['tj3decodeyuvplanes8_159',['tj3DecodeYUVPlanes8',['../group___turbo_j_p_e_g.html#gad366f1915f82c1ad4e7e37ebe073ca89',1,'turbojpeg.h']]], - ['tj3decompress12_160',['tj3Decompress12',['../group___turbo_j_p_e_g.html#ga39b848f01781ad74a5b3941c012b6199',1,'turbojpeg.h']]], - ['tj3decompress16_161',['tj3Decompress16',['../group___turbo_j_p_e_g.html#gaa074e63f9beb0b3ff42b833a4049df6e',1,'turbojpeg.h']]], - ['tj3decompress8_162',['tj3Decompress8',['../group___turbo_j_p_e_g.html#ga1169c7c1a26ec18c9e6122cb8ae64013',1,'turbojpeg.h']]], - ['tj3decompressheader_163',['tj3DecompressHeader',['../group___turbo_j_p_e_g.html#ga96d2c4b3432f9d88ad14758ae240b8d1',1,'turbojpeg.h']]], - ['tj3decompresstoyuv8_164',['tj3DecompressToYUV8',['../group___turbo_j_p_e_g.html#ga1e6bf6a19fec3f9fa7534348879d8320',1,'turbojpeg.h']]], - ['tj3decompresstoyuvplanes8_165',['tj3DecompressToYUVPlanes8',['../group___turbo_j_p_e_g.html#ga934373482dbbf257f2280505b6ff4fb5',1,'turbojpeg.h']]], - ['tj3destroy_166',['tj3Destroy',['../group___turbo_j_p_e_g.html#ga53fbadf4560e95a65b8f5ab81703fe82',1,'turbojpeg.h']]], - ['tj3encodeyuv8_167',['tj3EncodeYUV8',['../group___turbo_j_p_e_g.html#ga2a8d50f130bde10f0a04030f8cc59936',1,'turbojpeg.h']]], - ['tj3encodeyuvplanes8_168',['tj3EncodeYUVPlanes8',['../group___turbo_j_p_e_g.html#gae2e9df38790e9bddc249d04cb158a4cf',1,'turbojpeg.h']]], - ['tj3free_169',['tj3Free',['../group___turbo_j_p_e_g.html#gaddb84fb6c81769e9faa0f5a63b296606',1,'turbojpeg.h']]], - ['tj3get_170',['tj3Get',['../group___turbo_j_p_e_g.html#ga34af9ba3183bdf0ec7c8f47bb9a4c84f',1,'turbojpeg.h']]], - ['tj3geterrorcode_171',['tj3GetErrorCode',['../group___turbo_j_p_e_g.html#gab8c8279f1415fe425ff30dbbc56013bd',1,'turbojpeg.h']]], - ['tj3geterrorstr_172',['tj3GetErrorStr',['../group___turbo_j_p_e_g.html#gaf2aab0e6dbb3edc57646b0fec25e8bb2',1,'turbojpeg.h']]], - ['tj3getscalingfactors_173',['tj3GetScalingFactors',['../group___turbo_j_p_e_g.html#ga74397f8e0587d4233182c72f085aaf04',1,'turbojpeg.h']]], - ['tj3init_174',['tj3Init',['../group___turbo_j_p_e_g.html#ga69c09d39f97ec30250ad3605ace7e5df',1,'turbojpeg.h']]], - ['tj3jpegbufsize_175',['tj3JPEGBufSize',['../group___turbo_j_p_e_g.html#gac6285e58e35a35d871d7162ec5a929c4',1,'turbojpeg.h']]], - ['tj3loadimage12_176',['tj3LoadImage12',['../group___turbo_j_p_e_g.html#ga1f03c26892a26d4ce077ed6a4ac40e8f',1,'turbojpeg.h']]], - ['tj3loadimage16_177',['tj3LoadImage16',['../group___turbo_j_p_e_g.html#ga638aeba63e0ccb89d472fdbf34224cfc',1,'turbojpeg.h']]], - ['tj3loadimage8_178',['tj3LoadImage8',['../group___turbo_j_p_e_g.html#ga565aaae7be3f8ca9099b56655c893251',1,'turbojpeg.h']]], - ['tj3saveimage12_179',['tj3SaveImage12',['../group___turbo_j_p_e_g.html#ga7c64b5106d04267a46aad85f9714ad90',1,'turbojpeg.h']]], - ['tj3saveimage16_180',['tj3SaveImage16',['../group___turbo_j_p_e_g.html#ga0fd87851f4266aca24bf4594dd0c0e71',1,'turbojpeg.h']]], - ['tj3saveimage8_181',['tj3SaveImage8',['../group___turbo_j_p_e_g.html#gaa4ec838988e469cc15618e4690cc8722',1,'turbojpeg.h']]], - ['tj3set_182',['tj3Set',['../group___turbo_j_p_e_g.html#gaddf92640bfee3e8622218c713e77e7db',1,'turbojpeg.h']]], - ['tj3setcroppingregion_183',['tj3SetCroppingRegion',['../group___turbo_j_p_e_g.html#gaa49c7bd4c9431667a043cfc93388ba1c',1,'turbojpeg.h']]], - ['tj3setscalingfactor_184',['tj3SetScalingFactor',['../group___turbo_j_p_e_g.html#ga89da17ee1e43ff423382cbc145803c75',1,'turbojpeg.h']]], - ['tj3transform_185',['tj3Transform',['../group___turbo_j_p_e_g.html#gaff23ba1dcabed456794b844791613920',1,'turbojpeg.h']]], - ['tj3yuvbufsize_186',['tj3YUVBufSize',['../group___turbo_j_p_e_g.html#gaaebaa16973a0f550a66eca5765ed0546',1,'turbojpeg.h']]], - ['tj3yuvplaneheight_187',['tj3YUVPlaneHeight',['../group___turbo_j_p_e_g.html#ga969767ec8180cc3edd99cf507f87299b',1,'turbojpeg.h']]], - ['tj3yuvplanesize_188',['tj3YUVPlaneSize',['../group___turbo_j_p_e_g.html#gacc19d265edce76b46146f59579f9438d',1,'turbojpeg.h']]], - ['tj3yuvplanewidth_189',['tj3YUVPlaneWidth',['../group___turbo_j_p_e_g.html#gac99d1933ede1d59fcada9a826e88eb2d',1,'turbojpeg.h']]] + ['tj3alloc_153',['tj3Alloc',['../group___turbo_j_p_e_g.html#gab40a0b231122f536e503e3394569a68d',1,'turbojpeg.h']]], + ['tj3compress12_154',['tj3Compress12',['../group___turbo_j_p_e_g.html#ga9a1968c384ec7abb6122830253ebf570',1,'turbojpeg.h']]], + ['tj3compress16_155',['tj3Compress16',['../group___turbo_j_p_e_g.html#ga77901b71d0471784f318ada31ff4e7bd',1,'turbojpeg.h']]], + ['tj3compress8_156',['tj3Compress8',['../group___turbo_j_p_e_g.html#ga2cc418a2dab709ad7f30f5b25905f138',1,'turbojpeg.h']]], + ['tj3compressfromyuv8_157',['tj3CompressFromYUV8',['../group___turbo_j_p_e_g.html#ga041c870d9c669eb3f385c78f4346c43f',1,'turbojpeg.h']]], + ['tj3compressfromyuvplanes8_158',['tj3CompressFromYUVPlanes8',['../group___turbo_j_p_e_g.html#gac9f5ace3e73805b476c95dda9f8d0cd0',1,'turbojpeg.h']]], + ['tj3decodeyuv8_159',['tj3DecodeYUV8',['../group___turbo_j_p_e_g.html#gaa1eb574f38b1c1de43a6c7aafcf68d8c',1,'turbojpeg.h']]], + ['tj3decodeyuvplanes8_160',['tj3DecodeYUVPlanes8',['../group___turbo_j_p_e_g.html#gad366f1915f82c1ad4e7e37ebe073ca89',1,'turbojpeg.h']]], + ['tj3decompress12_161',['tj3Decompress12',['../group___turbo_j_p_e_g.html#ga39b848f01781ad74a5b3941c012b6199',1,'turbojpeg.h']]], + ['tj3decompress16_162',['tj3Decompress16',['../group___turbo_j_p_e_g.html#gaa074e63f9beb0b3ff42b833a4049df6e',1,'turbojpeg.h']]], + ['tj3decompress8_163',['tj3Decompress8',['../group___turbo_j_p_e_g.html#ga1169c7c1a26ec18c9e6122cb8ae64013',1,'turbojpeg.h']]], + ['tj3decompressheader_164',['tj3DecompressHeader',['../group___turbo_j_p_e_g.html#ga96d2c4b3432f9d88ad14758ae240b8d1',1,'turbojpeg.h']]], + ['tj3decompresstoyuv8_165',['tj3DecompressToYUV8',['../group___turbo_j_p_e_g.html#ga1e6bf6a19fec3f9fa7534348879d8320',1,'turbojpeg.h']]], + ['tj3decompresstoyuvplanes8_166',['tj3DecompressToYUVPlanes8',['../group___turbo_j_p_e_g.html#ga934373482dbbf257f2280505b6ff4fb5',1,'turbojpeg.h']]], + ['tj3destroy_167',['tj3Destroy',['../group___turbo_j_p_e_g.html#ga53fbadf4560e95a65b8f5ab81703fe82',1,'turbojpeg.h']]], + ['tj3encodeyuv8_168',['tj3EncodeYUV8',['../group___turbo_j_p_e_g.html#ga2a8d50f130bde10f0a04030f8cc59936',1,'turbojpeg.h']]], + ['tj3encodeyuvplanes8_169',['tj3EncodeYUVPlanes8',['../group___turbo_j_p_e_g.html#gae2e9df38790e9bddc249d04cb158a4cf',1,'turbojpeg.h']]], + ['tj3free_170',['tj3Free',['../group___turbo_j_p_e_g.html#gaddb84fb6c81769e9faa0f5a63b296606',1,'turbojpeg.h']]], + ['tj3get_171',['tj3Get',['../group___turbo_j_p_e_g.html#ga34af9ba3183bdf0ec7c8f47bb9a4c84f',1,'turbojpeg.h']]], + ['tj3geterrorcode_172',['tj3GetErrorCode',['../group___turbo_j_p_e_g.html#gab8c8279f1415fe425ff30dbbc56013bd',1,'turbojpeg.h']]], + ['tj3geterrorstr_173',['tj3GetErrorStr',['../group___turbo_j_p_e_g.html#gaf2aab0e6dbb3edc57646b0fec25e8bb2',1,'turbojpeg.h']]], + ['tj3getscalingfactors_174',['tj3GetScalingFactors',['../group___turbo_j_p_e_g.html#ga74397f8e0587d4233182c72f085aaf04',1,'turbojpeg.h']]], + ['tj3init_175',['tj3Init',['../group___turbo_j_p_e_g.html#ga69c09d39f97ec30250ad3605ace7e5df',1,'turbojpeg.h']]], + ['tj3jpegbufsize_176',['tj3JPEGBufSize',['../group___turbo_j_p_e_g.html#gac6285e58e35a35d871d7162ec5a929c4',1,'turbojpeg.h']]], + ['tj3loadimage12_177',['tj3LoadImage12',['../group___turbo_j_p_e_g.html#ga1f03c26892a26d4ce077ed6a4ac40e8f',1,'turbojpeg.h']]], + ['tj3loadimage16_178',['tj3LoadImage16',['../group___turbo_j_p_e_g.html#ga638aeba63e0ccb89d472fdbf34224cfc',1,'turbojpeg.h']]], + ['tj3loadimage8_179',['tj3LoadImage8',['../group___turbo_j_p_e_g.html#ga565aaae7be3f8ca9099b56655c893251',1,'turbojpeg.h']]], + ['tj3saveimage12_180',['tj3SaveImage12',['../group___turbo_j_p_e_g.html#ga7c64b5106d04267a46aad85f9714ad90',1,'turbojpeg.h']]], + ['tj3saveimage16_181',['tj3SaveImage16',['../group___turbo_j_p_e_g.html#ga0fd87851f4266aca24bf4594dd0c0e71',1,'turbojpeg.h']]], + ['tj3saveimage8_182',['tj3SaveImage8',['../group___turbo_j_p_e_g.html#gaa4ec838988e469cc15618e4690cc8722',1,'turbojpeg.h']]], + ['tj3set_183',['tj3Set',['../group___turbo_j_p_e_g.html#gaddf92640bfee3e8622218c713e77e7db',1,'turbojpeg.h']]], + ['tj3setcroppingregion_184',['tj3SetCroppingRegion',['../group___turbo_j_p_e_g.html#gaa49c7bd4c9431667a043cfc93388ba1c',1,'turbojpeg.h']]], + ['tj3setscalingfactor_185',['tj3SetScalingFactor',['../group___turbo_j_p_e_g.html#ga89da17ee1e43ff423382cbc145803c75',1,'turbojpeg.h']]], + ['tj3transform_186',['tj3Transform',['../group___turbo_j_p_e_g.html#gaff23ba1dcabed456794b844791613920',1,'turbojpeg.h']]], + ['tj3yuvbufsize_187',['tj3YUVBufSize',['../group___turbo_j_p_e_g.html#gaaebaa16973a0f550a66eca5765ed0546',1,'turbojpeg.h']]], + ['tj3yuvplaneheight_188',['tj3YUVPlaneHeight',['../group___turbo_j_p_e_g.html#ga969767ec8180cc3edd99cf507f87299b',1,'turbojpeg.h']]], + ['tj3yuvplanesize_189',['tj3YUVPlaneSize',['../group___turbo_j_p_e_g.html#gacc19d265edce76b46146f59579f9438d',1,'turbojpeg.h']]], + ['tj3yuvplanewidth_190',['tj3YUVPlaneWidth',['../group___turbo_j_p_e_g.html#gac99d1933ede1d59fcada9a826e88eb2d',1,'turbojpeg.h']]] ]; diff --git a/doc/html/search/groups_0.js b/doc/html/search/groups_0.js index a1adb6c6..de21d988 100644 --- a/doc/html/search/groups_0.js +++ b/doc/html/search/groups_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['turbojpeg_282',['TurboJPEG',['../group___turbo_j_p_e_g.html',1,'']]] + ['turbojpeg_284',['TurboJPEG',['../group___turbo_j_p_e_g.html',1,'']]] ]; diff --git a/doc/html/search/typedefs_0.js b/doc/html/search/typedefs_0.js index 968490f5..867f1a8f 100644 --- a/doc/html/search/typedefs_0.js +++ b/doc/html/search/typedefs_0.js @@ -1,5 +1,5 @@ var searchData= [ - ['tjhandle_210',['tjhandle',['../group___turbo_j_p_e_g.html#ga758d2634ecb4949de7815cba621f5763',1,'turbojpeg.h']]], - ['tjtransform_211',['tjtransform',['../group___turbo_j_p_e_g.html#ga504805ec0161f1b505397ca0118bf8fd',1,'turbojpeg.h']]] + ['tjhandle_211',['tjhandle',['../group___turbo_j_p_e_g.html#ga758d2634ecb4949de7815cba621f5763',1,'turbojpeg.h']]], + ['tjtransform_212',['tjtransform',['../group___turbo_j_p_e_g.html#ga504805ec0161f1b505397ca0118bf8fd',1,'turbojpeg.h']]] ]; diff --git a/doc/html/search/variables_0.js b/doc/html/search/variables_0.js index 40a95a8e..fac3bb4b 100644 --- a/doc/html/search/variables_0.js +++ b/doc/html/search/variables_0.js @@ -1,4 +1,4 @@ var searchData= [ - ['customfilter_190',['customFilter',['../structtjtransform.html#a0dc7697d59a7abe48afc629e96cbc1d2',1,'tjtransform']]] + ['customfilter_191',['customFilter',['../structtjtransform.html#a0dc7697d59a7abe48afc629e96cbc1d2',1,'tjtransform']]] ]; diff --git a/doc/html/search/variables_1.js b/doc/html/search/variables_1.js index 9113a240..126d0fcc 100644 --- a/doc/html/search/variables_1.js +++ b/doc/html/search/variables_1.js @@ -1,5 +1,5 @@ var searchData= [ - ['data_191',['data',['../structtjtransform.html#a688fe8f1a8ecc12a538d9e561cf338e3',1,'tjtransform']]], - ['denom_192',['denom',['../structtjscalingfactor.html#aefbcdf3e9e62274b2d312c695f133ce3',1,'tjscalingfactor']]] + ['data_192',['data',['../structtjtransform.html#a688fe8f1a8ecc12a538d9e561cf338e3',1,'tjtransform']]], + ['denom_193',['denom',['../structtjscalingfactor.html#aefbcdf3e9e62274b2d312c695f133ce3',1,'tjscalingfactor']]] ]; diff --git a/doc/html/search/variables_2.js b/doc/html/search/variables_2.js index a907b812..663fcfae 100644 --- a/doc/html/search/variables_2.js +++ b/doc/html/search/variables_2.js @@ -1,4 +1,4 @@ var searchData= [ - ['h_193',['h',['../structtjregion.html#aecefc45a26f4d8b60dd4d825c1710115',1,'tjregion']]] + ['h_194',['h',['../structtjregion.html#aecefc45a26f4d8b60dd4d825c1710115',1,'tjregion']]] ]; diff --git a/doc/html/search/variables_3.js b/doc/html/search/variables_3.js index 7b5a6163..f1df9f5e 100644 --- a/doc/html/search/variables_3.js +++ b/doc/html/search/variables_3.js @@ -1,4 +1,4 @@ var searchData= [ - ['num_194',['num',['../structtjscalingfactor.html#a9b011e57f981ee23083e2c1aa5e640ec',1,'tjscalingfactor']]] + ['num_195',['num',['../structtjscalingfactor.html#a9b011e57f981ee23083e2c1aa5e640ec',1,'tjscalingfactor']]] ]; diff --git a/doc/html/search/variables_4.js b/doc/html/search/variables_4.js index c2bfaa8b..b389daa2 100644 --- a/doc/html/search/variables_4.js +++ b/doc/html/search/variables_4.js @@ -1,5 +1,5 @@ var searchData= [ - ['op_195',['op',['../structtjtransform.html#a2525aab4ba6978a1c273f74fef50e498',1,'tjtransform']]], - ['options_196',['options',['../structtjtransform.html#ac0e74655baa4402209a21e1ae481c8f6',1,'tjtransform']]] + ['op_196',['op',['../structtjtransform.html#a2525aab4ba6978a1c273f74fef50e498',1,'tjtransform']]], + ['options_197',['options',['../structtjtransform.html#ac0e74655baa4402209a21e1ae481c8f6',1,'tjtransform']]] ]; diff --git a/doc/html/search/variables_5.js b/doc/html/search/variables_5.js index 0ae92ea0..92b12020 100644 --- a/doc/html/search/variables_5.js +++ b/doc/html/search/variables_5.js @@ -1,4 +1,4 @@ var searchData= [ - ['r_197',['r',['../structtjtransform.html#ac324e5e442abec8a961e5bf219db12cf',1,'tjtransform']]] + ['r_198',['r',['../structtjtransform.html#ac324e5e442abec8a961e5bf219db12cf',1,'tjtransform']]] ]; diff --git a/doc/html/search/variables_6.js b/doc/html/search/variables_6.js index 2e7c0b3a..35ee134c 100644 --- a/doc/html/search/variables_6.js +++ b/doc/html/search/variables_6.js @@ -1,12 +1,12 @@ var searchData= [ - ['tjalphaoffset_198',['tjAlphaOffset',['../group___turbo_j_p_e_g.html#ga5af0ab065feefd526debf1e20c43e837',1,'turbojpeg.h']]], - ['tjblueoffset_199',['tjBlueOffset',['../group___turbo_j_p_e_g.html#ga84e2e35d3f08025f976ec1ec53693dea',1,'turbojpeg.h']]], - ['tjgreenoffset_200',['tjGreenOffset',['../group___turbo_j_p_e_g.html#ga82d6e35da441112a411da41923c0ba2f',1,'turbojpeg.h']]], - ['tjmcuheight_201',['tjMCUHeight',['../group___turbo_j_p_e_g.html#gabd247bb9fecb393eca57366feb8327bf',1,'turbojpeg.h']]], - ['tjmcuwidth_202',['tjMCUWidth',['../group___turbo_j_p_e_g.html#ga9e61e7cd47a15a173283ba94e781308c',1,'turbojpeg.h']]], - ['tjpixelsize_203',['tjPixelSize',['../group___turbo_j_p_e_g.html#gad77cf8fe5b2bfd3cb3f53098146abb4c',1,'turbojpeg.h']]], - ['tjredoffset_204',['tjRedOffset',['../group___turbo_j_p_e_g.html#gadd9b446742ac8a3923f7992c7988fea8',1,'turbojpeg.h']]], - ['tjuncropped_205',['TJUNCROPPED',['../group___turbo_j_p_e_g.html#ga6f192ad58a5a5802e145149d83c643bf',1,'turbojpeg.h']]], - ['tjunscaled_206',['TJUNSCALED',['../group___turbo_j_p_e_g.html#ga7880644a0849161ad20933536169ee19',1,'turbojpeg.h']]] + ['tjalphaoffset_199',['tjAlphaOffset',['../group___turbo_j_p_e_g.html#ga5af0ab065feefd526debf1e20c43e837',1,'turbojpeg.h']]], + ['tjblueoffset_200',['tjBlueOffset',['../group___turbo_j_p_e_g.html#ga84e2e35d3f08025f976ec1ec53693dea',1,'turbojpeg.h']]], + ['tjgreenoffset_201',['tjGreenOffset',['../group___turbo_j_p_e_g.html#ga82d6e35da441112a411da41923c0ba2f',1,'turbojpeg.h']]], + ['tjmcuheight_202',['tjMCUHeight',['../group___turbo_j_p_e_g.html#gabd247bb9fecb393eca57366feb8327bf',1,'turbojpeg.h']]], + ['tjmcuwidth_203',['tjMCUWidth',['../group___turbo_j_p_e_g.html#ga9e61e7cd47a15a173283ba94e781308c',1,'turbojpeg.h']]], + ['tjpixelsize_204',['tjPixelSize',['../group___turbo_j_p_e_g.html#gad77cf8fe5b2bfd3cb3f53098146abb4c',1,'turbojpeg.h']]], + ['tjredoffset_205',['tjRedOffset',['../group___turbo_j_p_e_g.html#gadd9b446742ac8a3923f7992c7988fea8',1,'turbojpeg.h']]], + ['tjuncropped_206',['TJUNCROPPED',['../group___turbo_j_p_e_g.html#ga6f192ad58a5a5802e145149d83c643bf',1,'turbojpeg.h']]], + ['tjunscaled_207',['TJUNSCALED',['../group___turbo_j_p_e_g.html#ga7880644a0849161ad20933536169ee19',1,'turbojpeg.h']]] ]; diff --git a/doc/html/search/variables_7.js b/doc/html/search/variables_7.js index c8c66b68..255f997c 100644 --- a/doc/html/search/variables_7.js +++ b/doc/html/search/variables_7.js @@ -1,4 +1,4 @@ var searchData= [ - ['w_207',['w',['../structtjregion.html#ab6eb73ceef584fc23c8c8097926dce42',1,'tjregion']]] + ['w_208',['w',['../structtjregion.html#ab6eb73ceef584fc23c8c8097926dce42',1,'tjregion']]] ]; diff --git a/doc/html/search/variables_8.js b/doc/html/search/variables_8.js index 5f81e56a..d6995780 100644 --- a/doc/html/search/variables_8.js +++ b/doc/html/search/variables_8.js @@ -1,4 +1,4 @@ var searchData= [ - ['x_208',['x',['../structtjregion.html#a4b6a37a93997091b26a75831fa291ad9',1,'tjregion']]] + ['x_209',['x',['../structtjregion.html#a4b6a37a93997091b26a75831fa291ad9',1,'tjregion']]] ]; diff --git a/doc/html/search/variables_9.js b/doc/html/search/variables_9.js index bb57e20a..96b836f2 100644 --- a/doc/html/search/variables_9.js +++ b/doc/html/search/variables_9.js @@ -1,4 +1,4 @@ var searchData= [ - ['y_209',['y',['../structtjregion.html#a7b3e0c24cfe87acc80e334cafdcf22c2',1,'tjregion']]] + ['y_210',['y',['../structtjregion.html#a7b3e0c24cfe87acc80e334cafdcf22c2',1,'tjregion']]] ]; diff --git a/java/TJBench.java b/java/TJBench.java index 9ca1310a..03238acd 100644 --- a/java/TJBench.java +++ b/java/TJBench.java @@ -41,8 +41,9 @@ final class TJBench { private static boolean stopOnWarning, bottomUp, fastUpsample, fastDCT, optimize, progressive, limitScans, arithmetic, lossless; - private static int maxMemory = 0, precision = 8, quiet = 0, pf = TJ.PF_BGR, - yuvAlign = 1, restartIntervalBlocks, restartIntervalRows = 0; + private static int maxMemory = 0, maxPixels = 0, precision = 8, quiet = 0, + pf = TJ.PF_BGR, yuvAlign = 1, restartIntervalBlocks, + restartIntervalRows = 0; private static boolean compOnly, decompOnly, doTile, doYUV, write = true, bmp = false; @@ -184,6 +185,7 @@ final class TJBench { tjd.set(TJ.PARAM_FASTDCT, fastDCT ? 1 : 0); tjd.set(TJ.PARAM_SCANLIMIT, limitScans ? 500 : 0); tjd.set(TJ.PARAM_MAXMEMORY, maxMemory); + tjd.set(TJ.PARAM_MAXPIXELS, maxPixels); if (isCropped(cr)) { try { @@ -553,6 +555,7 @@ final class TJBench { tjt.set(TJ.PARAM_FASTDCT, fastDCT ? 1 : 0); tjt.set(TJ.PARAM_SCANLIMIT, limitScans ? 500 : 0); tjt.set(TJ.PARAM_MAXMEMORY, maxMemory); + tjt.set(TJ.PARAM_MAXPIXELS, maxPixels); try { tjt.setSourceImage(srcBuf, srcSize); @@ -782,6 +785,7 @@ final class TJBench { System.out.println(" progressive JPEG compression and decompression, optimized baseline entropy"); System.out.println(" coding, lossless JPEG compression, and lossless transformation"); System.out.println(" [default = no limit]"); + System.out.println("-maxpixels = Input image size limit (in pixels) [default = no limit]"); System.out.println("-nowrite = Do not write reference or output images (improves consistency of"); System.out.println(" benchmark results)"); System.out.println("-rgb, -bgr, -rgbx, -bgrx, -xbgr, -xrgb ="); @@ -1091,6 +1095,16 @@ final class TJBench { if (temp < 0) usage(); maxMemory = temp; + } else if (argv[i].equalsIgnoreCase("-maxpixels") && + i < argv.length - 1) { + int temp = -1; + + try { + temp = Integer.parseInt(argv[++i]); + } catch (NumberFormatException e) {} + if (temp < 0) + usage(); + maxPixels = temp; } else if (argv[i].equalsIgnoreCase("-restart") && i < argv.length - 1) { int temp = -1; @@ -1147,6 +1161,7 @@ final class TJBench { tjc = new TJCompressor(); tjc.set(TJ.PARAM_STOPONWARNING, stopOnWarning ? 1 : 0); tjc.set(TJ.PARAM_BOTTOMUP, bottomUp ? 1 : 0); + tjc.set(TJ.PARAM_MAXPIXELS, maxPixels); pixelFormat[0] = pf; srcBuf = tjc.loadImage(precision, argv[0], width, 1, height, diff --git a/java/doc/constant-values.html b/java/doc/constant-values.html index 69eac493..216171f2 100644 --- a/java/doc/constant-values.html +++ b/java/doc/constant-values.html @@ -326,216 +326,223 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height")); 23 + + +public static final int +PARAM_MAXPIXELS +24 + + public static final int PARAM_OPTIMIZE 11 - + public static final int PARAM_PRECISION 7 - + public static final int PARAM_PROGRESSIVE 12 - + public static final int PARAM_QUALITY 3 - + public static final int PARAM_RESTARTBLOCKS 18 - + public static final int PARAM_RESTARTROWS 19 - + public static final int PARAM_SCANLIMIT 13 - + public static final int PARAM_STOPONWARNING 0 - + public static final int PARAM_SUBSAMP 4 - + public static final int PARAM_XDENSITY 20 - + public static final int PARAM_YDENSITY 21 - + public static final int PF_ABGR 9 - + public static final int PF_ARGB 10 - + public static final int PF_BGR 1 - + public static final int PF_BGRA 8 - + public static final int PF_BGRX 3 - + public static final int PF_CMYK 11 - + public static final int PF_GRAY 6 - + public static final int PF_RGB 0 - + public static final int PF_RGBA 7 - + public static final int PF_RGBX 2 - + public static final int PF_XBGR 4 - + public static final int PF_XRGB 5 - + public static final int SAMP_411 5 - + public static final int SAMP_420 2 - + public static final int SAMP_422 1 - + public static final int SAMP_440 4 - + public static final int SAMP_441 6 - + public static final int SAMP_444 0 - + public static final int SAMP_GRAY 3 - + public static final int diff --git a/java/doc/index-all.html b/java/doc/index-all.html index 12d5cc2f..e83d338f 100644 --- a/java/doc/index-all.html +++ b/java/doc/index-all.html @@ -773,6 +773,10 @@ $('.navPadding').css('padding-top', $('.fixedNav').css("height"));
    Memory limit for intermediate buffers
    +
    PARAM_MAXPIXELS - Static variable in class org.libjpegturbo.turbojpeg.TJ
    +
    +
    Image size limit [decompression, lossless transformation]
    +
    PARAM_OPTIMIZE - Static variable in class org.libjpegturbo.turbojpeg.TJ
    Optimized baseline entropy coding [lossy compression only]
    diff --git a/java/doc/member-search-index.js b/java/doc/member-search-index.js index db485fa3..fb9feac2 100644 --- a/java/doc/member-search-index.js +++ b/java/doc/member-search-index.js @@ -1 +1 @@ -memberSearchIndex = [{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"bufSize(int, int, int)","url":"bufSize(int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"bufSizeYUV(int, int, int, int)","url":"bufSizeYUV(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"cf"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"close()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"close()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress(byte[], int)","url":"compress(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress(byte[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_CMYK"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_RGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_YCbCr"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_YCCK"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCustomFilter","l":"customFilter(ShortBuffer, Rectangle, Rectangle, int, int, TJTransform)","url":"customFilter(java.nio.ShortBuffer,java.awt.Rectangle,java.awt.Rectangle,int,int,org.libjpegturbo.turbojpeg.TJTransform)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(BufferedImage, int)","url":"decompress(java.awt.image.BufferedImage,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(byte[], int, int, int, int, int, int, int)","url":"decompress(byte[],int,int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(int, int, int, int, int)","url":"decompress(int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(int, int, int, int)","url":"decompress(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(int[], int, int, int, int, int, int, int)","url":"decompress(int[],int,int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress12(int, int)","url":"decompress12(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress12(short[], int, int, int, int)","url":"decompress12(short[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress16(int, int)","url":"decompress16(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress16(short[], int, int, int, int)","url":"decompress16(short[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(BufferedImage)","url":"decompress8(java.awt.image.BufferedImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(byte[], int, int, int, int)","url":"decompress8(byte[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(int, int)","url":"decompress8(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(int[], int, int, int, int)","url":"decompress8(int[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int, int, int, int)","url":"decompressToYUV(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int, int[], int, int)","url":"decompressToYUV(int,int[],int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(YUVImage, int)","url":"decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(YUVImage)","url":"decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int, int)","url":"encodeYUV(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int[], int)","url":"encodeYUV(int[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(YUVImage, int)","url":"encodeYUV(org.libjpegturbo.turbojpeg.YUVImage,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(YUVImage)","url":"encodeYUV(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"equals(TJScalingFactor)","url":"equals(org.libjpegturbo.turbojpeg.TJScalingFactor)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"ERR_FATAL"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"ERR_WARNING"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"finalize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"finalize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_ACCURATEDCT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_BOTTOMUP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_FASTDCT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_FASTUPSAMPLE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_LIMITSCANS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_PROGRESSIVE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_STOPONWARNING"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"get(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"get(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getAlphaOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getBlueOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getBuf()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getColorspace()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"getCompressedSize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"getDenom()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"getErrorCode()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getGreenOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getHeight()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getHeight()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getJPEGBuf()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getJPEGSize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getMCUHeight(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getMCUWidth(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"getNum()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getOffsets()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getPad()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getPixelSize(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getPlanes()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getRedOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"getScaled(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getScaledHeight(int, int)","url":"getScaledHeight(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getScaledWidth(int, int)","url":"getScaledWidth(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getScalingFactors()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getSize()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getStrides()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getSubsamp()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getSubsamp()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"getTransformedSizes()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getWidth()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getWidth()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"isOne()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMCS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMERR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"NUMOP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMPF"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMSAMP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"op"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_HFLIP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_NONE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_ROT180"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_ROT270"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_ROT90"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_TRANSPOSE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_TRANSVERSE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_VFLIP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_ARITHMETIC"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_COPYNONE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_CROP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_NOOUTPUT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_OPTIMIZE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_PERFECT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_PROGRESSIVE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_TRIM"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"options"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_ARITHMETIC"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_BOTTOMUP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_COLORSPACE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_DENSITYUNITS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_FASTDCT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_FASTUPSAMPLE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_JPEGHEIGHT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_JPEGWIDTH"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_LOSSLESS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_LOSSLESSPSV"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_LOSSLESSPT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_MAXMEMORY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_OPTIMIZE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_PRECISION"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_PROGRESSIVE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_QUALITY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_RESTARTBLOCKS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_RESTARTROWS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_SCANLIMIT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_STOPONWARNING"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_SUBSAMP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_XDENSITY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_YDENSITY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_ABGR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_ARGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_BGR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_BGRA"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_BGRX"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_CMYK"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_RGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_RGBA"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_RGBX"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_XBGR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_XRGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"planeHeight(int, int, int)","url":"planeHeight(int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"planeSizeYUV(int, int, int, int, int)","url":"planeSizeYUV(int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"planeWidth(int, int, int)","url":"planeWidth(int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_411"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_420"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_422"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_440"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_441"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_444"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_UNKNOWN"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"set(int, int)","url":"set(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"set(int, int)","url":"set(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"setBuf(byte[], int, int, int, int)","url":"setBuf(byte[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"setBuf(byte[][], int[], int, int[], int, int)","url":"setBuf(byte[][],int[],int,int[],int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setCroppingRegion(Rectangle)","url":"setCroppingRegion(java.awt.Rectangle)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setJPEGQuality(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setScalingFactor(TJScalingFactor)","url":"setScalingFactor(org.libjpegturbo.turbojpeg.TJScalingFactor)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage(BufferedImage, int, int, int, int)","url":"setSourceImage(java.awt.image.BufferedImage,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage(byte[], int, int, int, int, int, int)","url":"setSourceImage(byte[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setSourceImage(byte[], int)","url":"setSourceImage(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage(YUVImage)","url":"setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setSourceImage(YUVImage)","url":"setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage12(short[], int, int, int, int, int, int)","url":"setSourceImage12(short[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage16(short[], int, int, int, int, int, int)","url":"setSourceImage16(short[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSubsamp(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"TJCompressor()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"TJCompressor(BufferedImage, int, int, int, int)","url":"%3Cinit%3E(java.awt.image.BufferedImage,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"TJCompressor(byte[], int, int, int, int, int, int)","url":"%3Cinit%3E(byte[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor(byte[], int)","url":"%3Cinit%3E(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor(byte[])","url":"%3Cinit%3E(byte[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor(YUVImage)","url":"%3Cinit%3E(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(String, int)","url":"%3Cinit%3E(java.lang.String,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(String, Throwable)","url":"%3Cinit%3E(java.lang.String,java.lang.Throwable)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(Throwable)","url":"%3Cinit%3E(java.lang.Throwable)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"TJScalingFactor(int, int)","url":"%3Cinit%3E(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"TJTransform()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"TJTransform(int, int, int, int, int, int, TJCustomFilter)","url":"%3Cinit%3E(int,int,int,int,int,int,org.libjpegturbo.turbojpeg.TJCustomFilter)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"TJTransform(Rectangle, int, int, TJCustomFilter)","url":"%3Cinit%3E(java.awt.Rectangle,int,int,org.libjpegturbo.turbojpeg.TJCustomFilter)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"TJTransformer()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"TJTransformer(byte[], int)","url":"%3Cinit%3E(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"TJTransformer(byte[])","url":"%3Cinit%3E(byte[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(byte[][], TJTransform[], int)","url":"transform(byte[][],org.libjpegturbo.turbojpeg.TJTransform[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(byte[][], TJTransform[])","url":"transform(byte[][],org.libjpegturbo.turbojpeg.TJTransform[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(TJTransform[], int)","url":"transform(org.libjpegturbo.turbojpeg.TJTransform[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(TJTransform[])","url":"transform(org.libjpegturbo.turbojpeg.TJTransform[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"UNCROPPED"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"UNSCALED"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(byte[], int, int, int, int)","url":"%3Cinit%3E(byte[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(byte[][], int[], int, int[], int, int)","url":"%3Cinit%3E(byte[][],int[],int,int[],int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(int, int, int, int)","url":"%3Cinit%3E(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(int, int[], int, int)","url":"%3Cinit%3E(int,int[],int,int)"}] \ No newline at end of file +memberSearchIndex = [{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"bufSize(int, int, int)","url":"bufSize(int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"bufSizeYUV(int, int, int, int)","url":"bufSizeYUV(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"cf"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"close()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"close()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress(byte[], int)","url":"compress(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress(byte[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"compress(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_CMYK"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_RGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_YCbCr"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"CS_YCCK"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCustomFilter","l":"customFilter(ShortBuffer, Rectangle, Rectangle, int, int, TJTransform)","url":"customFilter(java.nio.ShortBuffer,java.awt.Rectangle,java.awt.Rectangle,int,int,org.libjpegturbo.turbojpeg.TJTransform)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(BufferedImage, int)","url":"decompress(java.awt.image.BufferedImage,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(byte[], int, int, int, int, int, int, int)","url":"decompress(byte[],int,int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(int, int, int, int, int)","url":"decompress(int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(int, int, int, int)","url":"decompress(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress(int[], int, int, int, int, int, int, int)","url":"decompress(int[],int,int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress12(int, int)","url":"decompress12(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress12(short[], int, int, int, int)","url":"decompress12(short[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress16(int, int)","url":"decompress16(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress16(short[], int, int, int, int)","url":"decompress16(short[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(BufferedImage)","url":"decompress8(java.awt.image.BufferedImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(byte[], int, int, int, int)","url":"decompress8(byte[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(int, int)","url":"decompress8(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompress8(int[], int, int, int, int)","url":"decompress8(int[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int, int, int, int)","url":"decompressToYUV(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int, int[], int, int)","url":"decompressToYUV(int,int[],int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(int[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(YUVImage, int)","url":"decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"decompressToYUV(YUVImage)","url":"decompressToYUV(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int, int)","url":"encodeYUV(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int[], int)","url":"encodeYUV(int[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(int[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(YUVImage, int)","url":"encodeYUV(org.libjpegturbo.turbojpeg.YUVImage,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"encodeYUV(YUVImage)","url":"encodeYUV(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"equals(TJScalingFactor)","url":"equals(org.libjpegturbo.turbojpeg.TJScalingFactor)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"ERR_FATAL"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"ERR_WARNING"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"finalize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"finalize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_ACCURATEDCT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_BOTTOMUP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_FASTDCT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_FASTUPSAMPLE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_LIMITSCANS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_PROGRESSIVE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"FLAG_STOPONWARNING"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"get(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"get(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getAlphaOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getBlueOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getBuf()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getColorspace()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"getCompressedSize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"getDenom()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"getErrorCode()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getGreenOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getHeight()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getHeight()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getJPEGBuf()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getJPEGSize()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getMCUHeight(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getMCUWidth(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"getNum()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getOffsets()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getPad()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getPixelSize(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getPlanes()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getRedOffset(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"getScaled(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getScaledHeight(int, int)","url":"getScaledHeight(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getScaledWidth(int, int)","url":"getScaledWidth(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"getScalingFactors()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getSize()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getStrides()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getSubsamp()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getSubsamp()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"getTransformedSizes()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"getWidth()"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"getWidth()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"isOne()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMCS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMERR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"NUMOP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMPF"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"NUMSAMP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"op"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_HFLIP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_NONE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_ROT180"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_ROT270"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_ROT90"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_TRANSPOSE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_TRANSVERSE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OP_VFLIP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_ARITHMETIC"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_COPYNONE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_CROP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_NOOUTPUT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_OPTIMIZE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_PERFECT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_PROGRESSIVE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"OPT_TRIM"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"options"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_ARITHMETIC"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_BOTTOMUP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_COLORSPACE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_DENSITYUNITS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_FASTDCT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_FASTUPSAMPLE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_JPEGHEIGHT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_JPEGWIDTH"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_LOSSLESS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_LOSSLESSPSV"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_LOSSLESSPT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_MAXMEMORY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_MAXPIXELS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_OPTIMIZE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_PRECISION"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_PROGRESSIVE"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_QUALITY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_RESTARTBLOCKS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_RESTARTROWS"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_SCANLIMIT"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_STOPONWARNING"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_SUBSAMP"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_XDENSITY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PARAM_YDENSITY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_ABGR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_ARGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_BGR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_BGRA"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_BGRX"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_CMYK"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_RGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_RGBA"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_RGBX"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_XBGR"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"PF_XRGB"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"planeHeight(int, int, int)","url":"planeHeight(int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"planeSizeYUV(int, int, int, int, int)","url":"planeSizeYUV(int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"planeWidth(int, int, int)","url":"planeWidth(int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_411"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_420"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_422"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_440"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_441"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_444"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_GRAY"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"SAMP_UNKNOWN"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"set(int, int)","url":"set(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"set(int, int)","url":"set(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"setBuf(byte[], int, int, int, int)","url":"setBuf(byte[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"setBuf(byte[][], int[], int, int[], int, int)","url":"setBuf(byte[][],int[],int,int[],int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setCroppingRegion(Rectangle)","url":"setCroppingRegion(java.awt.Rectangle)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setJPEGQuality(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setScalingFactor(TJScalingFactor)","url":"setScalingFactor(org.libjpegturbo.turbojpeg.TJScalingFactor)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage(BufferedImage, int, int, int, int)","url":"setSourceImage(java.awt.image.BufferedImage,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage(byte[], int, int, int, int, int, int)","url":"setSourceImage(byte[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setSourceImage(byte[], int)","url":"setSourceImage(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage(YUVImage)","url":"setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"setSourceImage(YUVImage)","url":"setSourceImage(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage12(short[], int, int, int, int, int, int)","url":"setSourceImage12(short[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSourceImage16(short[], int, int, int, int, int, int)","url":"setSourceImage16(short[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"setSubsamp(int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"TJCompressor()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"TJCompressor(BufferedImage, int, int, int, int)","url":"%3Cinit%3E(java.awt.image.BufferedImage,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJCompressor","l":"TJCompressor(byte[], int, int, int, int, int, int)","url":"%3Cinit%3E(byte[],int,int,int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor(byte[], int)","url":"%3Cinit%3E(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor(byte[])","url":"%3Cinit%3E(byte[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJDecompressor","l":"TJDecompressor(YUVImage)","url":"%3Cinit%3E(org.libjpegturbo.turbojpeg.YUVImage)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(String, int)","url":"%3Cinit%3E(java.lang.String,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(String, Throwable)","url":"%3Cinit%3E(java.lang.String,java.lang.Throwable)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(String)","url":"%3Cinit%3E(java.lang.String)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJException","l":"TJException(Throwable)","url":"%3Cinit%3E(java.lang.Throwable)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJScalingFactor","l":"TJScalingFactor(int, int)","url":"%3Cinit%3E(int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"TJTransform()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"TJTransform(int, int, int, int, int, int, TJCustomFilter)","url":"%3Cinit%3E(int,int,int,int,int,int,org.libjpegturbo.turbojpeg.TJCustomFilter)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransform","l":"TJTransform(Rectangle, int, int, TJCustomFilter)","url":"%3Cinit%3E(java.awt.Rectangle,int,int,org.libjpegturbo.turbojpeg.TJCustomFilter)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"TJTransformer()","url":"%3Cinit%3E()"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"TJTransformer(byte[], int)","url":"%3Cinit%3E(byte[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"TJTransformer(byte[])","url":"%3Cinit%3E(byte[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(byte[][], TJTransform[], int)","url":"transform(byte[][],org.libjpegturbo.turbojpeg.TJTransform[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(byte[][], TJTransform[])","url":"transform(byte[][],org.libjpegturbo.turbojpeg.TJTransform[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(TJTransform[], int)","url":"transform(org.libjpegturbo.turbojpeg.TJTransform[],int)"},{"p":"org.libjpegturbo.turbojpeg","c":"TJTransformer","l":"transform(TJTransform[])","url":"transform(org.libjpegturbo.turbojpeg.TJTransform[])"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"UNCROPPED"},{"p":"org.libjpegturbo.turbojpeg","c":"TJ","l":"UNSCALED"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(byte[], int, int, int, int)","url":"%3Cinit%3E(byte[],int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(byte[][], int[], int, int[], int, int)","url":"%3Cinit%3E(byte[][],int[],int,int[],int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(int, int, int, int)","url":"%3Cinit%3E(int,int,int,int)"},{"p":"org.libjpegturbo.turbojpeg","c":"YUVImage","l":"YUVImage(int, int[], int, int)","url":"%3Cinit%3E(int,int[],int,int)"}] \ No newline at end of file diff --git a/java/doc/member-search-index.zip b/java/doc/member-search-index.zip index c60709bb3c2669066f0dc86302bec62df35186c0..67e2e01c1422f8bdd9595bc6e73bb398daaf282a 100644 GIT binary patch delta 1823 zcmV+)2jKXZ51$VVP)h>@6aWYa2mnKTkqlseAyHyH&paNF2Rt4=|8udw_~Rl7cSFxz zechv7d%pZU5bRw3b9B-~f$Z)fPc!H~o~Hag$pVGc@Z zIt7OMK@AJ~`Bv`c+%!m8qK*3E>`-Zc-4NZ*l-;D?uqegqxXp}+CEWZ)C7Lhsx{pAr zEW}=$Nf#1g3BV^U6@HaDySg4UQOPcgRv9G$fo`7~7AJ}R3~}3Rh}#|vam#Fo+x`vl zz8C{(G~PGHKao`GgCCt2J=}?8)U3ZBg@WN&3`z|};`rD>+m3OUrnFnbk%t$LmP{E71JUthP*?6e(=JEq#kpUIHNQY?q}D?F#$7(s_T z)nhqh43kS9<9R3tdmd@sSl*APDi;Hcq3IgaCV&EA>h{(9U-?0Qu748%@;fhvZQ`Ak zp=oM}r> z!@(cCG5?d>E{0-`6}Aim6$ZA)r$O1KI^&CT$$l*Y1X)8er5Vt73lJP>pAw+r-xjLH;QVdSHMB2f%nKjV4T+ z3PKWAs)!}QDzTshmVAOq0*gSgB(Mk+OM)$n1%U>_l0XAJfv58cHqL#Lfh#4cN*SYa z7mk$C5vsl>ou;^^G@XkCtvB$o-rPV% zfuZ3jJJ&vcYWgG7V?^bwDoa3@-00LQAg3!*K`DtBrAL2VO8Saj;Y+cJLB@fkLNEF% zOBD*f#Fc(wHF6m2_pZM)(GKq_2j_D50+&*!YVkbZX=s!lgnc?Vo*VxVaXt~1a`*Lx zCzYN(m7vfDZ3TyLjgH(7^ z(b8%ZO0AUr7(oCMtjecYM2i52ZbEMg(a9^txQ8cM3&RK|`r|DY|t8(6^oW z2Z6%sFp!8FQ=5jKZcE+Nin=LPwZ&&&$TJFmM8C?2Dg7H~oJ8WcO)Fa=M1_&;X2}1= zeyvvP#aJ1Qxt3Iy7|I<;){>1+hrsK5LNP)i30_MZs~{RRL4Vn_f0P)h*<6aW+e2nYxOLws;o_MZs~{RRL4Vn_g! NRtGx@6aWYa2mo|)kqlsefhaMaXC9Bo10GL4|8udw_~Rl7cSFxz zechv7dyT~Z&{?};AJ18Cw=?wJU`XN~8=Y_QFbAbH zodQGspoRtgd@FZzZW^R4(MEl7cBr&}ZisGY%5KtcSd?OQ+-63^5^nyW63v%*-6fDJ z3$fQ`(uIUr0`N&og@zwmsly+-)ojW7+Fys?97cstF4f5B)rm#KE$rSH#@5Tyn0--AV$nss$ z>O_InIA`9W54Y^V2S|m9hP8G)*WZnub(}N#>)?3NpmdX9liqLKdzD1lx37w6F2|BB zO@XqHlBucMglkH+u8&9YlRx!;0|Uy0$5Uytlw^5sO15$*+fay+Zrl27Zb0S7l4WzK zPsHbjCC!Yf0>zlBGu5_aNwc5`hN(|X#j?}~FbT`n4P6uAUpo|wc!EPIlOhSZw;Ox`wevjPUbIii0>H_Q-b!Gc!pu+6Y>cDOm1*eWf>DS`U$m&n{c1H}3#n8U;IYIwb2dry#_kyJ2;w8XF!~ zk@K?W>vP+fGi~W< zIQYUF^FO)mVkqWVVaqU3VPJcF8kB9SGrl;N?AIbdkToPzngM;c0Kt*=NdaVis+*P} z$&idm3UQ}smTE75=9+3l9+4>sJpYu-b0nZrkYp2huc(uIIFAJ4QN6S8!3a~`vZmO< zxd9C8fgb~IiJ9~?Q)apeDXB^kAd#m4V3>-mTB@#bAn;@qQ;bh@X^PheSRU)QCDR^F zb@?OQD>4*Qe}rQs$=PF;7LEW-uNG0}Bi47+g8Wk!vcLd;3l4zsQW{N|wgiMEtk4ik zf>mNc2`u>plLVGUV}w%;976sW4*b7iULE!QFg9< z)bvND*NDo0NmG_SF1gXERX|2oq=HfkE=mvXx)kIUyTX@Z6N8KcNrhgrRhBB0Yl$n| z!fNC&*za9`XQCb66AsSB>;*2RPSw(PzO&3IJ;wTUa6C8uA>wo)DrMg5%SI|adnzEI z4cZD0;Tj#ig;K)b*f-Fe-ZOfXWD^~P$N~#rb-)$)Dt*wR^$2L1wc z_zV${An9N#Jt*D1mRa<=ag*>A`^s9`R(!X(k#z`c8+qAM3LR1*ZZif6{?AL0wUW}E| zm}^OGh@sqpWGz{mvWS)vXs4f@l6b8z+VDhPiAU#DUWJm7bY2~~j>ZvhmCi<>jrz-f zP)i30p4rmV^#%X{AV>fJP)h*<6aW+e2nYxObaHT4p4rmV^#%X{AV>fJ7ytkO0001! NW(P9{I|l#&004spUi<(6 diff --git a/java/doc/org/libjpegturbo/turbojpeg/TJ.html b/java/doc/org/libjpegturbo/turbojpeg/TJ.html index 20ee0f9e..78960398 100644 --- a/java/doc/org/libjpegturbo/turbojpeg/TJ.html +++ b/java/doc/org/libjpegturbo/turbojpeg/TJ.html @@ -380,33 +380,40 @@ extends java.lang.Object static int +PARAM_MAXPIXELS + +
    Image size limit [decompression, lossless transformation]
    + + + +static int PARAM_OPTIMIZE
    Optimized baseline entropy coding [lossy compression only]
    - + static int PARAM_PRECISION
    JPEG data precision (bits per sample) [decompression only, read-only]
    - + static int PARAM_PROGRESSIVE
    Progressive entropy coding
    - + static int PARAM_QUALITY
    Perceptual quality of lossy JPEG images [compression only]
    - + static int PARAM_RESTARTBLOCKS @@ -414,7 +421,7 @@ extends java.lang.Object [compression only] - + static int PARAM_RESTARTROWS @@ -422,7 +429,7 @@ extends java.lang.Object [compression only] - + static int PARAM_SCANLIMIT @@ -430,182 +437,182 @@ extends java.lang.Object transformation] - + static int PARAM_STOPONWARNING
    Error handling behavior
    - + static int PARAM_SUBSAMP
    Chrominance subsampling level
    - + static int PARAM_XDENSITY
    JPEG horizontal pixel density
    - + static int PARAM_YDENSITY
    JPEG vertical pixel density
    - + static int PF_ABGR
    ABGR pixel format.
    - + static int PF_ARGB
    ARGB pixel format.
    - + static int PF_BGR
    BGR pixel format.
    - + static int PF_BGRA
    BGRA pixel format.
    - + static int PF_BGRX
    BGRX pixel format.
    - + static int PF_CMYK
    CMYK pixel format.
    - + static int PF_GRAY
    Grayscale pixel format.
    - + static int PF_RGB
    RGB pixel format.
    - + static int PF_RGBA
    RGBA pixel format.
    - + static int PF_RGBX
    RGBX pixel format.
    - + static int PF_XBGR
    XBGR pixel format.
    - + static int PF_XRGB
    XRGB pixel format.
    - + static int SAMP_411
    4:1:1 chrominance subsampling.
    - + static int SAMP_420
    4:2:0 chrominance subsampling.
    - + static int SAMP_422
    4:2:2 chrominance subsampling.
    - + static int SAMP_440
    4:4:0 chrominance subsampling.
    - + static int SAMP_441
    4:4:1 chrominance subsampling.
    - + static int SAMP_444
    4:4:4 chrominance subsampling (no chrominance subsampling).
    - + static int SAMP_GRAY
    Grayscale.
    - + static int SAMP_UNKNOWN
    Unknown subsampling.
    - + static java.awt.Rectangle UNCROPPED
    A java.awt.Rectangle instance that specifies no cropping
    - + static TJScalingFactor UNSCALED @@ -1870,6 +1877,31 @@ extends java.lang.Object + + + +
      +
    • +

      PARAM_MAXPIXELS

      +
      public static final int PARAM_MAXPIXELS
      +
      Image size limit [decompression, lossless transformation] + +

      Setting this parameter will cause the decompression and transform + operations to throw an error if the number of pixels in the JPEG source + image exceeds the specified limit. This allows security-critical + applications to guard against excessive memory consumption. + +

      Value +

        +
      • maximum number of pixels that the decompression and transform + operations will process [default: 0 (no limit)] +
      +
      +
      See Also:
      +
      Constant Field Values
      +
      +
    • +
    diff --git a/java/doc/package-search-index.zip b/java/doc/package-search-index.zip index 70a04c09e457119035d9778f0044c15e80b7dd32..c5f302c2e34b9db0461ad508cbb6ffb0090d6b75 100644 GIT binary patch delta 26 gcmaFM_?D3;z?+#xgn@&DgTc9GBF_XSAUV$;09M!r;s5{u delta 26 gcmaFM_?D3;z?+#xgn@&DgQ28oBF_XSAUV$;09jlIFaQ7m diff --git a/java/doc/type-search-index.zip b/java/doc/type-search-index.zip index fca9ab2821a489175dbc62802d51350e8dfd0915..295927d540ee37d1193ccbe111f479a8ab4570aa 100644 GIT binary patch delta 26 gcmdnaw4I43z?+#xgn@&DgTc9GBF|kWAot<8 diff --git a/java/org/libjpegturbo/turbojpeg/TJ.java b/java/org/libjpegturbo/turbojpeg/TJ.java index 8f96438e..23b1c653 100644 --- a/java/org/libjpegturbo/turbojpeg/TJ.java +++ b/java/org/libjpegturbo/turbojpeg/TJ.java @@ -787,6 +787,21 @@ public final class TJ { * */ public static final int PARAM_MAXMEMORY = 23; + /** + * Image size limit [decompression, lossless transformation] + * + *

    Setting this parameter will cause the decompression and transform + * operations to throw an error if the number of pixels in the JPEG source + * image exceeds the specified limit. This allows security-critical + * applications to guard against excessive memory consumption. + * + *

    Value + *

      + *
    • maximum number of pixels that the decompression and transform + * operations will process [default: 0 (no limit)] + *
    + */ + public static final int PARAM_MAXPIXELS = 24; /** diff --git a/java/org_libjpegturbo_turbojpeg_TJ.h b/java/org_libjpegturbo_turbojpeg_TJ.h index 103e4782..38505f73 100644 --- a/java/org_libjpegturbo_turbojpeg_TJ.h +++ b/java/org_libjpegturbo_turbojpeg_TJ.h @@ -109,6 +109,8 @@ extern "C" { #define org_libjpegturbo_turbojpeg_TJ_PARAM_DENSITYUNITS 22L #undef org_libjpegturbo_turbojpeg_TJ_PARAM_MAXMEMORY #define org_libjpegturbo_turbojpeg_TJ_PARAM_MAXMEMORY 23L +#undef org_libjpegturbo_turbojpeg_TJ_PARAM_MAXPIXELS +#define org_libjpegturbo_turbojpeg_TJ_PARAM_MAXPIXELS 24L #undef org_libjpegturbo_turbojpeg_TJ_FLAG_BOTTOMUP #define org_libjpegturbo_turbojpeg_TJ_FLAG_BOTTOMUP 2L #undef org_libjpegturbo_turbojpeg_TJ_FLAG_FASTUPSAMPLE diff --git a/rdbmp.c b/rdbmp.c index 88ee7512..c2c06fd0 100644 --- a/rdbmp.c +++ b/rdbmp.c @@ -6,7 +6,7 @@ * Modified 2009-2017 by Guido Vollbeding. * libjpeg-turbo Modifications: * Modified 2011 by Siarhei Siamashka. - * Copyright (C) 2015, 2017-2018, 2021-2022, D. R. Commander. + * Copyright (C) 2015, 2017-2018, 2021-2023, D. R. Commander. * For conditions of distribution and use, see the accompanying README.ijg * file. * @@ -523,11 +523,9 @@ start_input_bmp(j_compress_ptr cinfo, cjpeg_source_ptr sinfo) if (biWidth <= 0 || biHeight <= 0) ERREXIT(cinfo, JERR_BMP_EMPTY); -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION if (sinfo->max_pixels && (unsigned long long)biWidth * biHeight > sinfo->max_pixels) - ERREXIT(cinfo, JERR_WIDTH_OVERFLOW); -#endif + ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, sinfo->max_pixels); if (biPlanes != 1) ERREXIT(cinfo, JERR_BMP_BADPLANES); @@ -681,9 +679,7 @@ jinit_read_bmp(j_compress_ptr cinfo, boolean use_inversion_array) /* Fill in method ptrs, except get_pixel_rows which start_input sets */ source->pub.start_input = start_input_bmp; source->pub.finish_input = finish_input_bmp; -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION source->pub.max_pixels = 0; -#endif source->use_inversion_array = use_inversion_array; diff --git a/rdgif.c b/rdgif.c index 0cbd2796..23e8b9e1 100644 --- a/rdgif.c +++ b/rdgif.c @@ -5,7 +5,7 @@ * Copyright (C) 1991-1997, Thomas G. Lane. * Modified 2019 by Guido Vollbeding. * libjpeg-turbo Modifications: - * Copyright (C) 2021-2022, D. R. Commander. + * Copyright (C) 2021-2023, D. R. Commander. * For conditions of distribution and use, see the accompanying README.ijg * file. * @@ -418,11 +418,9 @@ start_input_gif(j_compress_ptr cinfo, cjpeg_source_ptr sinfo) height = LM_to_uint(hdrbuf, 2); if (width == 0 || height == 0) ERREXIT(cinfo, JERR_GIF_EMPTY); -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION if (sinfo->max_pixels && (unsigned long long)width * height > sinfo->max_pixels) - ERREXIT(cinfo, JERR_WIDTH_OVERFLOW); -#endif + ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, sinfo->max_pixels); /* we ignore the color resolution, sort flag, and background color index */ aspectRatio = UCH(hdrbuf[6]); if (aspectRatio != 0 && aspectRatio != 49) @@ -467,11 +465,9 @@ start_input_gif(j_compress_ptr cinfo, cjpeg_source_ptr sinfo) height = LM_to_uint(hdrbuf, 6); if (width == 0 || height == 0) ERREXIT(cinfo, JERR_GIF_EMPTY); -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION if (sinfo->max_pixels && (unsigned long long)width * height > sinfo->max_pixels) - ERREXIT(cinfo, JERR_WIDTH_OVERFLOW); -#endif + ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, sinfo->max_pixels); source->is_interlaced = (BitSet(hdrbuf[8], INTERLACE) != 0); /* Read local colormap if header indicates it is present */ @@ -715,9 +711,7 @@ _jinit_read_gif(j_compress_ptr cinfo) /* Fill in method ptrs, except get_pixel_rows which start_input sets */ source->pub.start_input = start_input_gif; source->pub.finish_input = finish_input_gif; -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION source->pub.max_pixels = 0; -#endif return (cjpeg_source_ptr)source; } diff --git a/rdppm.c b/rdppm.c index 57058069..84e26f7b 100644 --- a/rdppm.c +++ b/rdppm.c @@ -689,10 +689,8 @@ start_input_ppm(j_compress_ptr cinfo, cjpeg_source_ptr sinfo) if (w <= 0 || h <= 0 || maxval <= 0) /* error check */ ERREXIT(cinfo, JERR_PPM_NOT); -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION if (sinfo->max_pixels && (unsigned long long)w * h > sinfo->max_pixels) - ERREXIT(cinfo, JERR_WIDTH_OVERFLOW); -#endif + ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, sinfo->max_pixels); cinfo->data_precision = BITS_IN_JSAMPLE; /* we always rescale data to this */ cinfo->image_width = (JDIMENSION)w; @@ -883,9 +881,7 @@ _jinit_read_ppm(j_compress_ptr cinfo) /* Fill in method ptrs, except get_pixel_rows which start_input sets */ source->pub.start_input = start_input_ppm; source->pub.finish_input = finish_input_ppm; -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION source->pub.max_pixels = 0; -#endif return (cjpeg_source_ptr)source; } diff --git a/rdtarga.c b/rdtarga.c index dae0b58d..b78a1653 100644 --- a/rdtarga.c +++ b/rdtarga.c @@ -5,7 +5,7 @@ * Copyright (C) 1991-1996, Thomas G. Lane. * Modified 2017 by Guido Vollbeding. * libjpeg-turbo Modifications: - * Copyright (C) 2018, 2021-2022, D. R. Commander. + * Copyright (C) 2018, 2021-2023, D. R. Commander. * For conditions of distribution and use, see the accompanying README.ijg * file. * @@ -363,11 +363,9 @@ start_input_tga(j_compress_ptr cinfo, cjpeg_source_ptr sinfo) interlace_type != 0 || /* currently don't allow interlaced image */ width == 0 || height == 0) /* image width/height must be non-zero */ ERREXIT(cinfo, JERR_TGA_BADPARMS); -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION if (sinfo->max_pixels && (unsigned long long)width * height > sinfo->max_pixels) - ERREXIT(cinfo, JERR_WIDTH_OVERFLOW); -#endif + ERREXIT1(cinfo, JERR_IMAGE_TOO_BIG, sinfo->max_pixels); if (subtype > 8) { /* It's an RLE-coded file */ @@ -501,9 +499,7 @@ jinit_read_targa(j_compress_ptr cinfo) /* Fill in method ptrs, except get_pixel_rows which start_input sets */ source->pub.start_input = start_input_tga; source->pub.finish_input = finish_input_tga; -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION source->pub.max_pixels = 0; -#endif return (cjpeg_source_ptr)source; } diff --git a/tjbench.c b/tjbench.c index 566fe8cf..bedc94b4 100644 --- a/tjbench.c +++ b/tjbench.c @@ -90,7 +90,7 @@ int tjErrorLine = -1, tjErrorCode = -1; int stopOnWarning = 0, bottomUp = 0, noRealloc = 1, fastUpsample = 0, fastDCT = 0, optimize = 0, progressive = 0, limitScans = 0, maxMemory = 0, - arithmetic = 0, lossless = 0, restartIntervalBlocks = 0, + maxPixels = 0, arithmetic = 0, lossless = 0, restartIntervalBlocks = 0, restartIntervalRows = 0; int precision = 8, sampleSize, compOnly = 0, decompOnly = 0, doYUV = 0, quiet = 0, doTile = 0, pf = TJPF_BGR, yuvAlign = 1, doWrite = 1; @@ -204,6 +204,8 @@ static int decomp(unsigned char **jpegBufs, size_t *jpegSizes, void *dstBuf, THROW_TJ(); if (tj3Set(handle, TJPARAM_MAXMEMORY, maxMemory) == -1) THROW_TJ(); + if (tj3Set(handle, TJPARAM_MAXPIXELS, maxPixels) == -1) + THROW_TJ(); if (IS_CROPPED(cr)) { if (tj3DecompressHeader(handle, jpegBufs[0], jpegSizes[0]) == -1) @@ -659,6 +661,8 @@ static int decompTest(char *fileName) THROW_TJ(); if (tj3Set(handle, TJPARAM_MAXMEMORY, maxMemory) == -1) THROW_TJ(); + if (tj3Set(handle, TJPARAM_MAXPIXELS, maxPixels) == -1) + THROW_TJ(); if (tj3DecompressHeader(handle, srcBuf, srcSize) == -1) THROW_TJ(); @@ -910,6 +914,7 @@ static void usage(char *progName) printf(" progressive JPEG compression and decompression, optimized baseline entropy\n"); printf(" coding, lossless JPEG compression, and lossless transformation\n"); printf(" [default = no limit]\n"); + printf("-maxpixels = Input image size limit (in pixels) [default = no limit]\n"); printf("-nowrite = Do not write reference or output images (improves consistency of\n"); printf(" benchmark results)\n"); printf("-rgb, -bgr, -rgbx, -bgrx, -xbgr, -xrgb =\n"); @@ -1161,6 +1166,11 @@ int main(int argc, char *argv[]) if (tempi < 0) usage(argv[0]); maxMemory = tempi; + } else if (!strcasecmp(argv[i], "-maxpixels") && i < argc - 1) { + int tempi = atoi(argv[++i]); + + if (tempi < 0) usage(argv[0]); + maxPixels = tempi; } else if (!strcasecmp(argv[i], "-restart") && i < argc - 1) { int tempi = -1, nscan; char tempc = 0; @@ -1228,6 +1238,8 @@ int main(int argc, char *argv[]) THROW_TJ(); if (tj3Set(handle, TJPARAM_BOTTOMUP, bottomUp) == -1) THROW_TJ(); + if (tj3Set(handle, TJPARAM_MAXPIXELS, maxPixels) == -1) + THROW_TJ(); if (precision == 8) { if ((srcBuf = tj3LoadImage8(handle, argv[1], &w, 1, &h, &pf)) == NULL) diff --git a/turbojpeg-mp.c b/turbojpeg-mp.c index 2ca23aa7..9bf346b4 100644 --- a/turbojpeg-mp.c +++ b/turbojpeg-mp.c @@ -179,6 +179,9 @@ DLLEXPORT int GET_NAME(tj3Decompress, BITS_IN_JSAMPLE) jpeg_read_header(dinfo, TRUE); } setDecompParameters(this); + if (this->maxPixels && + (unsigned long long)this->jpegWidth * this->jpegHeight > this->maxPixels) + THROW("Image is too large"); this->dinfo.out_color_space = pf2cs[pixelFormat]; #if BITS_IN_JSAMPLE != 16 scaledWidth = TJSCALED(dinfo->image_width, this->scalingFactor); @@ -347,10 +350,8 @@ DLLEXPORT _JSAMPLE *GET_NAME(tj3LoadImage, BITS_IN_JSAMPLE) cinfo->mem->max_memory_to_use = (long)this->maxMemory * 1048576L; src->input_file = file; -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION - /* Refuse to load images larger than 1 Megapixel when fuzzing. */ + /* Refuse to load images larger than the specified size. */ src->max_pixels = this->maxPixels; -#endif (*src->start_input) (cinfo, src); if (tempc == 'B') { if (cinfo->X_density && cinfo->Y_density) { diff --git a/turbojpeg.c b/turbojpeg.c index 519a868e..b9fe6e9f 100644 --- a/turbojpeg.c +++ b/turbojpeg.c @@ -109,9 +109,6 @@ typedef struct _tjinstance { char errStr[JMSG_LENGTH_MAX]; boolean isInstanceError; /* Parameters */ -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION - int maxPixels; -#endif boolean bottomUp; boolean noRealloc; int quality; @@ -137,6 +134,7 @@ typedef struct _tjinstance { tjscalingfactor scalingFactor; tjregion croppingRegion; int maxMemory; + int maxPixels; } tjinstance; static tjhandle _tjInitCompress(tjinstance *this); @@ -592,11 +590,6 @@ DLLEXPORT int tj3Set(tjhandle handle, int param, int value) GET_TJINSTANCE(handle, -1); switch (param) { -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION - case TJPARAM_MAXPIXELS: - SET_PARAM(maxPixels, 0, -1); - break; -#endif case TJPARAM_STOPONWARNING: SET_BOOL_PARAM(jerr.stopOnWarning); break; @@ -709,6 +702,9 @@ DLLEXPORT int tj3Set(tjhandle handle, int param, int value) case TJPARAM_MAXMEMORY: SET_PARAM(maxMemory, 0, (int)(min(LONG_MAX / 1048576L, (long)INT_MAX))); break; + case TJPARAM_MAXPIXELS: + SET_PARAM(maxPixels, 0, -1); + break; default: THROW("Invalid parameter"); } @@ -773,6 +769,8 @@ DLLEXPORT int tj3Get(tjhandle handle, int param) return this->densityUnits; case TJPARAM_MAXMEMORY: return this->maxMemory; + case TJPARAM_MAXPIXELS: + return this->maxPixels; } return -1; @@ -2350,6 +2348,9 @@ DLLEXPORT int tj3DecompressToYUVPlanes8(tjhandle handle, jpeg_read_header(dinfo, TRUE); } setDecompParameters(this); + if (this->maxPixels && + (unsigned long long)this->jpegWidth * this->jpegHeight > this->maxPixels) + THROW("Image is too large"); if (this->subsamp == TJSAMP_UNKNOWN) THROW("Could not determine subsampling level of JPEG image"); @@ -2715,6 +2716,10 @@ DLLEXPORT int tj3Transform(tjhandle handle, const unsigned char *jpegBuf, jcopy_markers_setup(dinfo, saveMarkers ? JCOPYOPT_ALL : JCOPYOPT_NONE); if (dinfo->global_state <= DSTATE_INHEADER) jpeg_read_header(dinfo, TRUE); + if (this->maxPixels && + (unsigned long long)dinfo->image_width * dinfo->image_height > + this->maxPixels) + THROW("Image is too large"); this->subsamp = getSubsamp(&this->dinfo); for (i = 0; i < n; i++) { diff --git a/turbojpeg.h b/turbojpeg.h index 3058199a..4a09c64d 100644 --- a/turbojpeg.h +++ b/turbojpeg.h @@ -429,9 +429,6 @@ enum TJCS { * Parameters */ enum TJPARAM { -#ifdef FUZZING_BUILD_MODE_UNSAFE_FOR_PRODUCTION - TJPARAM_MAXPIXELS = -1, -#endif /** * Error handling behavior * @@ -763,7 +760,21 @@ enum TJPARAM { * decompression, optimized baseline entropy coding, lossless JPEG * compression, and lossless transformation *[default: `0` (no limit)]* */ - TJPARAM_MAXMEMORY + TJPARAM_MAXMEMORY, + /** + * Image size limit [decompression, lossless transformation, packed-pixel + * image loading] + * + * Setting this parameter will cause the decompression, transform, and image + * loading functions to return an error if the number of pixels in the source + * image exceeds the specified limit. This allows security-critical + * applications to guard against excessive memory consumption. + * + * **Value** + * - maximum number of pixels that the decompression, transform, and image + * loading functions will process *[default: `0` (no limit)]* + */ + TJPARAM_MAXPIXELS };