1. 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
  2. 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
  3. 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
  4. 12c29c9 Remove unneeded/unused code by DRC · 11 years ago
  5. 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 · 11 years ago
  6. 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 · 11 years ago
  7. f27f38b Add a blank line before the alpha-enabled colorspace tests in order to improve readability by DRC · 11 years ago
  8. 4798b7e Add a blank line before the alpha-enabled colorspace tests in order to improve readability by DRC · 11 years ago
  9. 34dca05 Implement a YUV decode function in the TurboJPEG API, to be symmetric with tjEncodeYUV(). by DRC · 11 years ago
  10. 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 · 11 years ago
  11. 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 · 11 years ago
  12. 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 · 11 years ago
  13. 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
  14. 910a357 Extend the TurboJPEG C API to support compressing JPEG images from YUV planar images by DRC · 11 years ago
  15. 38cb1ec Add CMYK support to the TurboJPEG Java API & clean up a few things in the C API by DRC · 11 years ago
  16. cd7c3e6 Add CMYK support to the TurboJPEG C API by DRC · 11 years ago
  17. 1f3635c Add 4:1:1 subsampling support in the TurboJPEG C API by DRC · 11 years ago
  18. 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
  19. b7c4193 Clean up the output of tjunittest and TJUnitTest by DRC · 11 years ago
  20. 49df783 Clean up the output of tjunittest and TJUnitTest by DRC · 11 years ago
  21. 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 · 12 years ago
  22. 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 · 12 years ago
  23. 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 · 13 years ago
  24. 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 · 13 years ago
  25. 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
  26. e835ee3 Windows doesn't have random() by DRC · 13 years ago
  27. 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
  28. 9b49f0e Re-work TJBUFSIZE() to take into account the level of chrominance subsampling by DRC · 13 years ago
  29. c52c556 by DRC · 13 years ago
  30. 215aa8b Re-factor checkBufYUV() function to more closely resemble re-factored checkBuf() function by DRC · 13 years ago
  31. b8b359a "jpegut"="tjunittest" & "jpgtest"="tjbench" by DRC · 13 years ago