1. 2a9e3bd TurboJPEG: Properly handle gigapixel images by DRC · 4 years, 11 months ago
  2. 6399d0a Fix code formatting/style issues ... by DRC · 5 years ago
  3. bce58f4 Consistify formatting of macros in TurboJPEG code by DRC · 5 years ago
  4. dc9bdf1 Additional code formatting tweaks by DRC · 6 years ago
  5. 58cb10e Eliminate compiler warnings w/ Solaris Studio by DRC · 6 years ago
  6. 293263c Format preprocessor macros more consistently by DRC · 6 years ago
  7. 19c791c Improve code formatting consistency by DRC · 6 years ago
  8. e817c07 tjLoadImage(): return TJPF_GRAY for grayscale BMPs by DRC · 7 years ago
  9. 479fa1d tjLoadImage(): Don't convert RGB to grayscale by DRC · 7 years ago
  10. dc4b900 TurboJPEG: Add alpha offset array/method by DRC · 7 years ago
  11. aa74590 TurboJPEG C API: Add BMP/PPM load/save functions by DRC · 7 years ago
  12. f3ad13e TJBench/TJUnitTest: Don't ignore mistyped args by DRC · 7 years ago
  13. 5426a4c TJUnitTest: Usage formatting tweaks by DRC · 7 years ago
  14. f57bae0 Fix memory leak when running tjunittest -yuv by mayeut · 8 years ago
  15. f5644c3 Ensure that tjFree() is used for any JPEG buffers that might have been dynamically allocated by the compress/transform functions. To keep things simple, we use tjAlloc() for the statically-allocated buffer as well, so that tjFree() can always be used to free the buffer, regardless of whether it was allocated by tjbench or by the TurboJPEG library. This fixes crashes that occurred on Windows when running tjunittest or tjbench with the -alloc flag. by DRC · 10 years ago
  16. eb66974 Ensure that tjFree() is used for any JPEG buffers that might have been dynamically allocated by the compress/transform functions. To keep things simple, we use tjAlloc() for the statically-allocated buffer as well, so that tjFree() can always be used to free the buffer, regardless of whether it was allocated by tjbench or by the TurboJPEG library. This fixes crashes that occurred on Windows when running tjunittest or tjbench with the -alloc flag. by DRC · 10 years ago
  17. fe80ec2 If the output buffer in the TurboJPEG destination manager was allocated by the destination manager and is being reused from a previous compression operation, then we need to get the buffer size from the previous operation, since the calling program doesn't know the actual buffer size. by DRC · 10 years ago
  18. 12c29c9 Remove unneeded/unused code by DRC · 10 years ago
  19. c901449 When tjDecodeYUV() is used with a "fresh" decompressor instance (one that hasn't been previously used to decompress a JPEG image), then it needs comps_in_scan, data_precision, and the quantization tables to be defined. This patch also extends TJUnitTest to check for this error. by DRC · 10 years ago
  20. 20e158d Silence valgrind false positives about uninitialized values. Even with this patch, valgrind still complains about uninitialized values when decompressing or decoding to a buffer with an alpha-enabled colorspace. Not sure why this happens, but it occurs in libjpeg-turbo 1.3 as well, and only when the x86/x86-64 SIMD code is being used. It is my belief that these remaining warnings are also false positives, because if the output buffer is memset to all 0's prior to invoking tjDecodeYUV()/tjDecompress(), no errors are reported. If any of the alpha channel bits were in fact not being initialized, then they would still be 0 after invoking tjDecodeYUV()/tjDecompress(), and TJUnitTest would report an error. by DRC · 10 years ago
  21. f27f38b Add a blank line before the alpha-enabled colorspace tests in order to improve readability by DRC · 10 years ago
  22. 4798b7e Add a blank line before the alpha-enabled colorspace tests in order to improve readability by DRC · 10 years ago
  23. 34dca05 Implement a YUV decode function in the TurboJPEG API, to be symmetric with tjEncodeYUV(). by DRC · 10 years ago
  24. 2bdadb4 Remove benchmarks. They were originally intended as a way of measuring overhead for small compress/decompress operations, but using TJBench with a small image is a better way to accomplish that. by DRC · 10 years ago
  25. 2c0c807 Fix an issue that prevented tjEncodeYUV2() and TJCompressor.encodeYUV() from working properly if the source image was very tiny. Basically, jpeg_start_compress() was attempting to write the JPEG headers, which was overrunning the YUV buffer. This patch removes the call to jpeg_start_compress() in tjEncodeYUV2() and replaces it with calls to the individual routines that are necessary to initialize the color converter and downsampler. TJUnitTest has also been modified to test for this condition (the buffer size regression test now works in YUV mode.) by DRC · 10 years ago
  26. 38c9970 Fix an issue that prevented tjEncodeYUV3() and TJCompressor.encodeYUV() from working properly if the source image was very tiny. Basically, jpeg_start_compress() was attempting to write the JPEG headers, which was overrunning the YUV buffer. This patch removes the call to jpeg_start_compress() in tjEncodeYUV3() and replaces it with calls to the individual routines that are necessary to initialize the color converter and downsampler. TJUnitTest has also been modified to test for this condition (the buffer size regression test now works in YUV mode.) by DRC · 10 years ago
  27. fe73965 Clean up formatting code and rename the JPEG files generated during the YUV decode tests to reflect the fact that they are being generated from YUV source images. by DRC · 11 years ago
  28. 910a357 Extend the TurboJPEG C API to support compressing JPEG images from YUV planar images by DRC · 11 years ago
  29. 38cb1ec Add CMYK support to the TurboJPEG Java API & clean up a few things in the C API by DRC · 11 years ago
  30. cd7c3e6 Add CMYK support to the TurboJPEG C API by DRC · 11 years ago
  31. 1f3635c Add 4:1:1 subsampling support in the TurboJPEG C API by DRC · 11 years ago
  32. 418fe28 Fix incorrect data output and buffer overruns in the new tjDecompressToYUV2() function whenever scaling is used along with a 4:2:0 JPEG image; extend tjunittest and TJUnitTest to test for these issues. by DRC · 11 years ago
  33. b7c4193 Clean up the output of tjunittest and TJUnitTest by DRC · 11 years ago
  34. 49df783 Clean up the output of tjunittest and TJUnitTest by DRC · 11 years ago
  35. fef9852 Extend the TurboJPEG Java API to support generating YUV images with arbitrary padding and to support image scaling when decompressing to YUV by DRC · 11 years ago
  36. f610d61 Extend the TurboJPEG C API to support generating YUV images with arbitrary padding and to support image scaling when decompressing to YUV by DRC · 11 years ago
  37. cac1051 Fix the behavior of the alpha-enabled colorspace constants whenever libjpeg-turbo is built without SIMD support and merged upsampling is used. by DRC · 12 years ago
  38. 67ce3b2 Added new alpha channel colorspace constants/pixel formats, so applications can specify that they need the unused byte in a 4-component RGB output buffer set to 0xFF when decompressing. by DRC · 12 years ago
  39. c08e8c1 When decompressing to a 4-byte RGB buffer, set the unused byte to 0xFF so it can be interpreted as an opaque alpha channel. by DRC · 13 years ago
  40. e835ee3 Windows doesn't have random() by DRC · 13 years ago
  41. 724c56b Use random noise to ensure that the JPEG image generated in the buffer size test exceeds the size of the uncompressed source image. by DRC · 13 years ago
  42. 9b49f0e Re-work TJBUFSIZE() to take into account the level of chrominance subsampling by DRC · 13 years ago
  43. c52c556 by DRC · 13 years ago
  44. 215aa8b Re-factor checkBufYUV() function to more closely resemble re-factored checkBuf() function by DRC · 13 years ago
  45. b8b359a "jpegut"="tjunittest" & "jpgtest"="tjbench" by DRC · 13 years ago