Mercurial > hgrepos > Python2 > PyMuPDF
comparison mupdf-source/thirdparty/libjpeg/change.log @ 2:b50eed0cc0ef upstream
ADD: MuPDF v1.26.7: the MuPDF source as downloaded by a default build of PyMuPDF 1.26.4.
The directory name has changed: no version number in the expanded directory now.
| author | Franz Glasner <fzglas.hg@dom66.de> |
|---|---|
| date | Mon, 15 Sep 2025 11:43:07 +0200 |
| parents | |
| children |
comparison
equal
deleted
inserted
replaced
| 1:1d09e1dec1d9 | 2:b50eed0cc0ef |
|---|---|
| 1 CHANGE LOG for Independent JPEG Group's JPEG software | |
| 2 | |
| 3 | |
| 4 Version 9f 14-Jan-2024 | |
| 5 ----------------------- | |
| 6 | |
| 7 Add build system for C++Builder/RAD Studio. | |
| 8 | |
| 9 Add build system for Xcode (beside configure). | |
| 10 | |
| 11 Add ARM64EC (Emulation Compatible) platform support in the | |
| 12 Visual Studio build. | |
| 13 | |
| 14 | |
| 15 Version 9e 16-Jan-2022 | |
| 16 ----------------------- | |
| 17 | |
| 18 Include alternate user interface files for cjpeg/djpeg. | |
| 19 | |
| 20 jcparam.c: change default chrominance DC quantization factor | |
| 21 for lossless support. Note: Requires rebuild of test images. | |
| 22 | |
| 23 rdgif.c, cderror.h: add sanity check for GIF image dimensions. | |
| 24 Thank to Casper Sun for cjpeg potential vulnerability report. | |
| 25 | |
| 26 Add ARM and ARM64 platform support in the Visual Studio build. | |
| 27 | |
| 28 | |
| 29 Version 9d 12-Jan-2020 | |
| 30 ----------------------- | |
| 31 | |
| 32 Optimize the optimal Huffman code table generation to produce | |
| 33 slightly smaller files. Thank to John Korejwa for suggestion. | |
| 34 Note: Requires rebuild of testimgp.jpg. | |
| 35 | |
| 36 Decoding Huffman: Use default tables if tables are not defined. | |
| 37 Thank to Simone Azzalin for report (Motion JPEG), | |
| 38 and to Martin Strunz for hint. | |
| 39 | |
| 40 Add sanity check in optimal Huffman code table generation. | |
| 41 Thank to Adam Farley for suggestion. | |
| 42 | |
| 43 rdtarga.c: use read_byte(), with EOF check, instead of getc() | |
| 44 in read_*_pixel(). | |
| 45 Thank to Chijin Zhou for cjpeg potential vulnerability report. | |
| 46 | |
| 47 jmemnobs.c: respect the max_memory_to_use setting in | |
| 48 jpeg_mem_available() computation. Thank to Sheng Shu and | |
| 49 Dongdong She for djpeg potential vulnerability report. | |
| 50 | |
| 51 jdarith.c, jdhuff.c: avoid left shift of negative value | |
| 52 compiler warning in decode_mcu_AC_refine(). | |
| 53 Thank to Indu Bhagat for suggestion. | |
| 54 | |
| 55 Add x64 (64-bit) platform support, avoid compiler warnings. | |
| 56 Thank to Jonathan Potter, Feiyun Wang, and Sheng Shu for suggestion. | |
| 57 | |
| 58 Adjust libjpeg version specification for pkg-config file. | |
| 59 Thank to Chen Chen for suggestion. | |
| 60 | |
| 61 Restore GIF read and write support from libjpeg version 6a. | |
| 62 Thank to Wolfgang Werner (W.W.) Heinz for suggestion. | |
| 63 | |
| 64 Improve consistency in raw (downsampled) image data processing mode. | |
| 65 Thank to Zhongyuan Zhou for hint. | |
| 66 | |
| 67 Avoid out of bounds array read (AC derived table pointers) | |
| 68 in start pass in jdhuff.c. Thank to Peng Li for report. | |
| 69 | |
| 70 Improve code sanity (jdhuff.c). | |
| 71 Thank to Reza Mirzazade farkhani for reports. | |
| 72 | |
| 73 Add jpegtran -drop option; add options to the crop extension and wipe | |
| 74 to fill the extra area with content from the source image region, | |
| 75 instead of gray out. | |
| 76 | |
| 77 | |
| 78 Version 9c 14-Jan-2018 | |
| 79 ----------------------- | |
| 80 | |
| 81 jpegtran: add an option to the -wipe switch to fill the region | |
| 82 with the average of adjacent blocks, instead of gray out. | |
| 83 Thank to Caitlyn Feddock and Maddie Ziegler for inspiration. | |
| 84 | |
| 85 Make range extension bits adjustable (in jpegint.h). | |
| 86 Thank to Robin Watts for suggestion. | |
| 87 | |
| 88 Provide macros for fflush() and ferror() in jinclude.h in order | |
| 89 to facilitate adaption by applications using an own FILE class. | |
| 90 Thank to Gerhard Huber for suggestion. | |
| 91 | |
| 92 Add libjpeg pkg-config file. Thank to Mark Lavi, Vincent Torri, | |
| 93 Patrick McMunn, and Huw Davies for suggestion. | |
| 94 | |
| 95 Add sanity checks in cjpeg image reader modules. | |
| 96 Thank to Bingchang, Liu for reports. | |
| 97 | |
| 98 | |
| 99 Version 9b 17-Jan-2016 | |
| 100 ----------------------- | |
| 101 | |
| 102 Improvements and optimizations in DCT and color calculations. | |
| 103 Normalize range limit array composition and access pattern. | |
| 104 Thank to Sia Furler and Maddie Ziegler for inspiration. | |
| 105 | |
| 106 Use merged upsample with scaled DCT sizes larger than 8. | |
| 107 Thank to Taylor Hatala for inspiration. | |
| 108 | |
| 109 Check for excessive comment lengths in argument parsing in wrjpgcom.c. | |
| 110 Thank to Julian Cohen for hint. | |
| 111 | |
| 112 Add makefile.b32 for use with Borland C++ 32-bit (bcc32). | |
| 113 Thank to Joe Slater for contribution. | |
| 114 | |
| 115 Document 'f' specifier for jpegtran -crop specification. | |
| 116 Thank to Michele Martone for suggestion. | |
| 117 | |
| 118 Use defined value from header instead of hardwired number in rdswitch.c. | |
| 119 Thank to Robert Sprowson for hint. | |
| 120 | |
| 121 | |
| 122 Version 9a 19-Jan-2014 | |
| 123 ----------------------- | |
| 124 | |
| 125 Add support for wide gamut color spaces (JFIF version 2). | |
| 126 Improve clarity and accuracy in color conversion modules. | |
| 127 Note: Requires rebuild of test images. | |
| 128 | |
| 129 Extend the bit depth support to all values from 8 to 12 | |
| 130 (BITS_IN_JSAMPLE configuration option in jmorecfg.h). | |
| 131 jpegtran now supports N bits sample data precision with all N from 8 to 12 | |
| 132 in a single instance. Thank to Roland Fassauer for inspiration. | |
| 133 | |
| 134 Try to resolve issues with new boolean type definition. | |
| 135 Thank also to v4hn for suggestion. | |
| 136 | |
| 137 Enable option to use default Huffman tables for lossless compression | |
| 138 (for hardware solution), and in this case improve lossless RGB compression | |
| 139 with reversible color transform. Thank to Benny Alexandar for hint. | |
| 140 | |
| 141 Extend the entropy decoding structure, so that extraneous bytes between | |
| 142 compressed scan data and following marker can be reported correctly. | |
| 143 Thank to Nigel Tao for hint. | |
| 144 | |
| 145 Add jpegtran -wipe option and extension for -crop. | |
| 146 Thank to Andrew Senior, David Clunie, and Josef Schmid for suggestion. | |
| 147 | |
| 148 | |
| 149 Version 9 13-Jan-2013 | |
| 150 ---------------------- | |
| 151 | |
| 152 Add cjpeg -rgb1 option to create an RGB JPEG file, and insert | |
| 153 a simple reversible color transform into the processing which | |
| 154 significantly improves the compression. | |
| 155 The recommended command for lossless coding of RGB images is now | |
| 156 cjpeg -rgb1 -block 1 -arithmetic. | |
| 157 As said, this option improves the compression significantly, but | |
| 158 the files are not compatible with JPEG decoders prior to IJG v9 | |
| 159 due to the included color transform. | |
| 160 The used color transform and marker signaling is compatible with | |
| 161 other JPEG standards (e.g., JPEG-LS part 2). | |
| 162 | |
| 163 Remove the automatic de-ANSI-fication support (Automake 1.12). | |
| 164 Thank also to Nitin A Kamble for suggestion. | |
| 165 | |
| 166 Add remark for jpeg_mem_dest() in jdatadst.c. | |
| 167 Thank to Elie-Gregoire Khoury for the hint. | |
| 168 | |
| 169 Support files with invalid component identifiers (created | |
| 170 by Adobe PDF). Thank to Robin Watts for the suggestion. | |
| 171 | |
| 172 Adapt full buffer case in jcmainct.c for use with scaled DCT. | |
| 173 Thank to Sergii Biloshytskyi for the suggestion. | |
| 174 | |
| 175 Add type identifier for declaration of noreturn functions. | |
| 176 Thank to Brett L. Moore for the suggestion. | |
| 177 | |
| 178 Correct argument type in format string, avoid compiler warnings. | |
| 179 Thank to Vincent Torri for hint. | |
| 180 | |
| 181 Add missing #include directives in configuration checks, avoid | |
| 182 configuration errors. Thank to John Spencer for the hint. | |
| 183 | |
| 184 | |
| 185 Version 8d 15-Jan-2012 | |
| 186 ----------------------- | |
| 187 | |
| 188 Add cjpeg -rgb option to create RGB JPEG files. | |
| 189 Using this switch suppresses the conversion from RGB | |
| 190 colorspace input to the default YCbCr JPEG colorspace. | |
| 191 This feature allows true lossless JPEG coding of RGB color images. | |
| 192 The recommended command for this purpose is currently | |
| 193 cjpeg -rgb -block 1 -arithmetic. | |
| 194 SmartScale capable decoder (introduced with IJG JPEG 8) required. | |
| 195 Thank to Michael Koch for the initial suggestion. | |
| 196 | |
| 197 Add option to disable the region adjustment in the transupp crop code. | |
| 198 Thank to Jeffrey Friedl for the suggestion. | |
| 199 | |
| 200 Thank to Richard Jones and Edd Dawson for various minor corrections. | |
| 201 | |
| 202 Thank to Akim Demaille for configure.ac cleanup. | |
| 203 | |
| 204 | |
| 205 Version 8c 16-Jan-2011 | |
| 206 ----------------------- | |
| 207 | |
| 208 Add option to compression library and cjpeg (-block N) to use | |
| 209 different DCT block size. | |
| 210 All N from 1 to 16 are possible. Default is 8 (baseline format). | |
| 211 Larger values produce higher compression, | |
| 212 smaller values produce higher quality. | |
| 213 SmartScale capable decoder (introduced with IJG JPEG 8) required. | |
| 214 | |
| 215 | |
| 216 Version 8b 16-May-2010 | |
| 217 ----------------------- | |
| 218 | |
| 219 Repair problem in new memory source manager with corrupt JPEG data. | |
| 220 Thank to Ted Campbell and Samuel Chun for the report. | |
| 221 | |
| 222 Repair problem in Makefile.am test target. | |
| 223 Thank to anonymous user for the report. | |
| 224 | |
| 225 Support MinGW installation with automatic configure. | |
| 226 Thank to Volker Grabsch for the suggestion. | |
| 227 | |
| 228 | |
| 229 Version 8a 28-Feb-2010 | |
| 230 ----------------------- | |
| 231 | |
| 232 Writing tables-only datastreams via jpeg_write_tables works again. | |
| 233 | |
| 234 Support 32-bit BMPs (RGB image with Alpha channel) for read in cjpeg. | |
| 235 Thank to Brett Blackham for the suggestion. | |
| 236 | |
| 237 Improve accuracy in floating point IDCT calculation. | |
| 238 Thank to Robert Hooke for the hint. | |
| 239 | |
| 240 | |
| 241 Version 8 10-Jan-2010 | |
| 242 ---------------------- | |
| 243 | |
| 244 jpegtran now supports the same -scale option as djpeg for "lossless" resize. | |
| 245 An implementation of the JPEG SmartScale extension is required for this | |
| 246 feature. A (draft) specification of the JPEG SmartScale extension is | |
| 247 available as a contributed document at ITU and ISO. Revision 2 or later | |
| 248 of the document is required (latest document version is Revision 3). | |
| 249 The SmartScale extension will enable more features beside lossless resize | |
| 250 in future implementations, as described in the document (new compression | |
| 251 options). | |
| 252 | |
| 253 Add sanity check in BMP reader module to avoid cjpeg crash for empty input | |
| 254 image (thank to Isaev Ildar of ISP RAS, Moscow, RU for reporting this error). | |
| 255 | |
| 256 Add data source and destination managers for read from and write to | |
| 257 memory buffers. New API functions jpeg_mem_src and jpeg_mem_dest. | |
| 258 Thank to Roberto Boni from Italy for the suggestion. | |
| 259 | |
| 260 | |
| 261 Version 7 27-Jun-2009 | |
| 262 ---------------------- | |
| 263 | |
| 264 New scaled DCTs implemented. | |
| 265 djpeg now supports scalings N/8 with all N from 1 to 16. | |
| 266 cjpeg now supports scalings 8/N with all N from 1 to 16. | |
| 267 Scaled DCTs with size larger than 8 are now also used for resolving the | |
| 268 common 2x2 chroma subsampling case without additional spatial resampling. | |
| 269 Separate spatial resampling for those kind of files is now only necessary | |
| 270 for N>8 scaling cases. | |
| 271 Furthermore, separate scaled DCT functions are provided for direct resolving | |
| 272 of the common asymmetric subsampling cases (2x1 and 1x2) without additional | |
| 273 spatial resampling. | |
| 274 | |
| 275 cjpeg -quality option has been extended for support of separate quality | |
| 276 settings for luminance and chrominance (or in general, for every provided | |
| 277 quantization table slot). | |
| 278 New API function jpeg_default_qtables() and q_scale_factor array in library. | |
| 279 | |
| 280 Added -nosmooth option to cjpeg, complementary to djpeg. | |
| 281 New variable "do_fancy_downsampling" in library, complement to fancy | |
| 282 upsampling. Fancy upsampling now uses direct DCT scaling with sizes | |
| 283 larger than 8. The old method is not reversible and has been removed. | |
| 284 | |
| 285 Support arithmetic entropy encoding and decoding. | |
| 286 Added files jaricom.c, jcarith.c, jdarith.c. | |
| 287 | |
| 288 Straighten the file structure: | |
| 289 Removed files jidctred.c, jcphuff.c, jchuff.h, jdphuff.c, jdhuff.h. | |
| 290 | |
| 291 jpegtran has a new "lossless" cropping feature. | |
| 292 | |
| 293 Implement -perfect option in jpegtran, new API function | |
| 294 jtransform_perfect_transform() in transupp. (DP 204_perfect.dpatch) | |
| 295 | |
| 296 Better error messages for jpegtran fopen failure. | |
| 297 (DP 203_jpegtran_errmsg.dpatch) | |
| 298 | |
| 299 Fix byte order issue with 16bit PPM/PGM files in rdppm.c/wrppm.c: | |
| 300 according to Netpbm, the de facto standard implementation of the PNM formats, | |
| 301 the most significant byte is first. (DP 203_rdppm.dpatch) | |
| 302 | |
| 303 Add -raw option to rdjpgcom not to mangle the output. | |
| 304 (DP 205_rdjpgcom_raw.dpatch) | |
| 305 | |
| 306 Make rdjpgcom locale aware. (DP 201_rdjpgcom_locale.dpatch) | |
| 307 | |
| 308 Add extern "C" to jpeglib.h. | |
| 309 This avoids the need to put extern "C" { ... } around #include "jpeglib.h" | |
| 310 in your C++ application. Defining the symbol DONT_USE_EXTERN_C in the | |
| 311 configuration prevents this. (DP 202_jpeglib.h_c++.dpatch) | |
| 312 | |
| 313 | |
| 314 Version 6b 27-Mar-1998 | |
| 315 ----------------------- | |
| 316 | |
| 317 jpegtran has new features for lossless image transformations (rotation | |
| 318 and flipping) as well as "lossless" reduction to grayscale. | |
| 319 | |
| 320 jpegtran now copies comments by default; it has a -copy switch to enable | |
| 321 copying all APPn blocks as well, or to suppress comments. (Formerly it | |
| 322 always suppressed comments and APPn blocks.) jpegtran now also preserves | |
| 323 JFIF version and resolution information. | |
| 324 | |
| 325 New decompressor library feature: COM and APPn markers found in the input | |
| 326 file can be saved in memory for later use by the application. (Before, | |
| 327 you had to code this up yourself with a custom marker processor.) | |
| 328 | |
| 329 There is an unused field "void * client_data" now in compress and decompress | |
| 330 parameter structs; this may be useful in some applications. | |
| 331 | |
| 332 JFIF version number information is now saved by the decoder and accepted by | |
| 333 the encoder. jpegtran uses this to copy the source file's version number, | |
| 334 to ensure "jpegtran -copy all" won't create bogus files that contain JFXX | |
| 335 extensions but claim to be version 1.01. Applications that generate their | |
| 336 own JFXX extension markers also (finally) have a supported way to cause the | |
| 337 encoder to emit JFIF version number 1.02. | |
| 338 | |
| 339 djpeg's trace mode reports JFIF 1.02 thumbnail images as such, rather | |
| 340 than as unknown APP0 markers. | |
| 341 | |
| 342 In -verbose mode, djpeg and rdjpgcom will try to print the contents of | |
| 343 APP12 markers as text. Some digital cameras store useful text information | |
| 344 in APP12 markers. | |
| 345 | |
| 346 Handling of truncated data streams is more robust: blocks beyond the one in | |
| 347 which the error occurs will be output as uniform gray, or left unchanged | |
| 348 if decoding a progressive JPEG. The appearance no longer depends on the | |
| 349 Huffman tables being used. | |
| 350 | |
| 351 Huffman tables are checked for validity much more carefully than before. | |
| 352 | |
| 353 To avoid the Unisys LZW patent, djpeg's GIF output capability has been | |
| 354 changed to produce "uncompressed GIFs", and cjpeg's GIF input capability | |
| 355 has been removed altogether. We're not happy about it either, but there | |
| 356 seems to be no good alternative. | |
| 357 | |
| 358 The configure script now supports building libjpeg as a shared library | |
| 359 on many flavors of Unix (all the ones that GNU libtool knows how to | |
| 360 build shared libraries for). Use "./configure --enable-shared" to | |
| 361 try this out. | |
| 362 | |
| 363 New jconfig file and makefiles for Microsoft Visual C++ and Developer Studio. | |
| 364 Also, a jconfig file and a build script for Metrowerks CodeWarrior | |
| 365 on Apple Macintosh. makefile.dj has been updated for DJGPP v2, and there | |
| 366 are miscellaneous other minor improvements in the makefiles. | |
| 367 | |
| 368 jmemmac.c now knows how to create temporary files following Mac System 7 | |
| 369 conventions. | |
| 370 | |
| 371 djpeg's -map switch is now able to read raw-format PPM files reliably. | |
| 372 | |
| 373 cjpeg -progressive -restart no longer generates any unnecessary DRI markers. | |
| 374 | |
| 375 Multiple calls to jpeg_simple_progression for a single JPEG object | |
| 376 no longer leak memory. | |
| 377 | |
| 378 | |
| 379 Version 6a 7-Feb-96 | |
| 380 -------------------- | |
| 381 | |
| 382 Library initialization sequence modified to detect version mismatches | |
| 383 and struct field packing mismatches between library and calling application. | |
| 384 This change requires applications to be recompiled, but does not require | |
| 385 any application source code change. | |
| 386 | |
| 387 All routine declarations changed to the style "GLOBAL(type) name ...", | |
| 388 that is, GLOBAL, LOCAL, METHODDEF, EXTERN are now macros taking the | |
| 389 routine's return type as an argument. This makes it possible to add | |
| 390 Microsoft-style linkage keywords to all the routines by changing just | |
| 391 these macros. Note that any application code that was using these macros | |
| 392 will have to be changed. | |
| 393 | |
| 394 DCT coefficient quantization tables are now stored in normal array order | |
| 395 rather than zigzag order. Application code that calls jpeg_add_quant_table, | |
| 396 or otherwise manipulates quantization tables directly, will need to be | |
| 397 changed. If you need to make such code work with either older or newer | |
| 398 versions of the library, a test like "#if JPEG_LIB_VERSION >= 61" is | |
| 399 recommended. | |
| 400 | |
| 401 djpeg's trace capability now dumps DQT tables in natural order, not zigzag | |
| 402 order. This allows the trace output to be made into a "-qtables" file | |
| 403 more easily. | |
| 404 | |
| 405 New system-dependent memory manager module for use on Apple Macintosh. | |
| 406 | |
| 407 Fix bug in cjpeg's -smooth option: last one or two scanlines would be | |
| 408 duplicates of the prior line unless the image height mod 16 was 1 or 2. | |
| 409 | |
| 410 Repair minor problems in VMS, BCC, MC6 makefiles. | |
| 411 | |
| 412 New configure script based on latest GNU Autoconf. | |
| 413 | |
| 414 Correct the list of include files needed by MetroWerks C for ccommand(). | |
| 415 | |
| 416 Numerous small documentation updates. | |
| 417 | |
| 418 | |
| 419 Version 6 2-Aug-95 | |
| 420 ------------------- | |
| 421 | |
| 422 Progressive JPEG support: library can read and write full progressive JPEG | |
| 423 files. A "buffered image" mode supports incremental decoding for on-the-fly | |
| 424 display of progressive images. Simply recompiling an existing IJG-v5-based | |
| 425 decoder with v6 should allow it to read progressive files, though of course | |
| 426 without any special progressive display. | |
| 427 | |
| 428 New "jpegtran" application performs lossless transcoding between different | |
| 429 JPEG formats; primarily, it can be used to convert baseline to progressive | |
| 430 JPEG and vice versa. In support of jpegtran, the library now allows lossless | |
| 431 reading and writing of JPEG files as DCT coefficient arrays. This ability | |
| 432 may be of use in other applications. | |
| 433 | |
| 434 Notes for programmers: | |
| 435 * We changed jpeg_start_decompress() to be able to suspend; this makes all | |
| 436 decoding modes available to suspending-input applications. However, | |
| 437 existing applications that use suspending input will need to be changed | |
| 438 to check the return value from jpeg_start_decompress(). You don't need to | |
| 439 do anything if you don't use a suspending data source. | |
| 440 * We changed the interface to the virtual array routines: access_virt_array | |
| 441 routines now take a count of the number of rows to access this time. The | |
| 442 last parameter to request_virt_array routines is now interpreted as the | |
| 443 maximum number of rows that may be accessed at once, but not necessarily | |
| 444 the height of every access. | |
| 445 | |
| 446 | |
| 447 Version 5b 15-Mar-95 | |
| 448 --------------------- | |
| 449 | |
| 450 Correct bugs with grayscale images having v_samp_factor > 1. | |
| 451 | |
| 452 jpeg_write_raw_data() now supports output suspension. | |
| 453 | |
| 454 Correct bugs in "configure" script for case of compiling in | |
| 455 a directory other than the one containing the source files. | |
| 456 | |
| 457 Repair bug in jquant1.c: sometimes didn't use as many colors as it could. | |
| 458 | |
| 459 Borland C makefile and jconfig file work under either MS-DOS or OS/2. | |
| 460 | |
| 461 Miscellaneous improvements to documentation. | |
| 462 | |
| 463 | |
| 464 Version 5a 7-Dec-94 | |
| 465 -------------------- | |
| 466 | |
| 467 Changed color conversion roundoff behavior so that grayscale values are | |
| 468 represented exactly. (This causes test image files to change.) | |
| 469 | |
| 470 Make ordered dither use 16x16 instead of 4x4 pattern for a small quality | |
| 471 improvement. | |
| 472 | |
| 473 New configure script based on latest GNU Autoconf. | |
| 474 Fix configure script to handle CFLAGS correctly. | |
| 475 Rename *.auto files to *.cfg, so that configure script still works if | |
| 476 file names have been truncated for DOS. | |
| 477 | |
| 478 Fix bug in rdbmp.c: didn't allow for extra data between header and image. | |
| 479 | |
| 480 Modify rdppm.c/wrppm.c to handle 2-byte raw PPM/PGM formats for 12-bit data. | |
| 481 | |
| 482 Fix several bugs in rdrle.c. | |
| 483 | |
| 484 NEED_SHORT_EXTERNAL_NAMES option was broken. | |
| 485 | |
| 486 Revise jerror.h/jerror.c for more flexibility in message table. | |
| 487 | |
| 488 Repair oversight in jmemname.c NO_MKTEMP case: file could be there | |
| 489 but unreadable. | |
| 490 | |
| 491 | |
| 492 Version 5 24-Sep-94 | |
| 493 -------------------- | |
| 494 | |
| 495 Version 5 represents a nearly complete redesign and rewrite of the IJG | |
| 496 software. Major user-visible changes include: | |
| 497 * Automatic configuration simplifies installation for most Unix systems. | |
| 498 * A range of speed vs. image quality tradeoffs are supported. | |
| 499 This includes resizing of an image during decompression: scaling down | |
| 500 by a factor of 1/2, 1/4, or 1/8 is handled very efficiently. | |
| 501 * New programs rdjpgcom and wrjpgcom allow insertion and extraction | |
| 502 of text comments in a JPEG file. | |
| 503 | |
| 504 The application programmer's interface to the library has changed completely. | |
| 505 Notable improvements include: | |
| 506 * We have eliminated the use of callback routines for handling the | |
| 507 uncompressed image data. The application now sees the library as a | |
| 508 set of routines that it calls to read or write image data on a | |
| 509 scanline-by-scanline basis. | |
| 510 * The application image data is represented in a conventional interleaved- | |
| 511 pixel format, rather than as a separate array for each color channel. | |
| 512 This can save a copying step in many programs. | |
| 513 * The handling of compressed data has been cleaned up: the application can | |
| 514 supply routines to source or sink the compressed data. It is possible to | |
| 515 suspend processing on source/sink buffer overrun, although this is not | |
| 516 supported in all operating modes. | |
| 517 * All static state has been eliminated from the library, so that multiple | |
| 518 instances of compression or decompression can be active concurrently. | |
| 519 * JPEG abbreviated datastream formats are supported, ie, quantization and | |
| 520 Huffman tables can be stored separately from the image data. | |
| 521 * And not only that, but the documentation of the library has improved | |
| 522 considerably! | |
| 523 | |
| 524 | |
| 525 The last widely used release before the version 5 rewrite was version 4A of | |
| 526 18-Feb-93. Change logs before that point have been discarded, since they | |
| 527 are not of much interest after the rewrite. |
