1. 6f92ff6 Fix Windows build by DRC · 10 years ago
  2. f67c04c Since we're now maintaining our own Cygwin pseudo-repository directories instead of recommending that users install these packages from a local source, it makes more sense to name the packages according to Cygwin specs, so they can be copied as-is into the pseudo-repository. by DRC · 10 years ago
  3. de23dd8 by DRC · 10 years ago
  4. c8b0226 by DRC · 10 years ago
  5. 79df67d Fix 'make dist' by DRC · 10 years ago
  6. 7a9faae Since we're now maintaining our own Cygwin pseudo-repository directories instead of recommending that users install these packages from a local source, it makes more sense to name the packages according to Cygwin specs, so they can be copied as-is into the pseudo-repository. by DRC · 10 years ago
  7. d794360 RHEL 6 (and probably other platforms as well) sets _defaultdocdir=%{_datadir}/doc, which screws things up, since we're overriding _datadir. Since we intend _defaultdocdir to be /usr/share/doc, just be explicit about it. by DRC · 10 years ago
  8. 3064cf7 RHEL 6 (and probably other platforms as well) sets _defaultdocdir=%{_datadir}/doc, which screws things up, since we're overriding _datadir. Since we intend _defaultdocdir to be /usr/share/doc, just be explicit about it. by DRC · 10 years ago
  9. fc9995e Prevent svn:mergeinfo from being modified on Makefile.am and simd/jsimd*.c every time a merge is done. by DRC · 10 years ago
  10. 2b03fe2 Fix compiler warning about unused function when building with the libjpeg v6b API/ABI by DRC · 10 years ago
  11. 17882fd Prevent svn:mergeinfo from being modified on Makefile.am and simd/jsimd*.c every time a merge is done. by DRC · 10 years ago
  12. 506a742 Fix compiler warning about unused function when building with the libjpeg v6b API/ABI by DRC · 10 years ago
  13. b52f3e6 Fix compiler warning ("always_inline function might not be inlinable") when building with recent versions of GCC by DRC · 10 years ago
  14. ad64b5a Fix compiler warning ("always_inline function might not be inlinable") when building with recent versions of GCC by DRC · 10 years ago
  15. 3c82383 Enable silent build (can be overridden with 'make V=1') if the version of autotools being used is new enough. by DRC · 10 years ago
  16. c7e10b2 Enable silent build (can be overridden with 'make V=1') if the version of autotools being used is new enough. by DRC · 10 years ago
  17. 7a6ed07 Extend YUVImage class to allow reuse of the same buffer with different metadata; port TJBench changes that treat YUV encoding/decoding as an intermediate step of the JPEG compression/decompression pipeline rather than a separate test case; add YUV encode/decode tests to the Java version of tjbenchtest by DRC · 10 years ago
  18. dd5fcdd formatting tweaks by DRC · 10 years ago
  19. 6e11d68 Fix an error that occurred when trying to use the lossless transform feature without specifying -quiet; formatting tweak by DRC · 10 years ago
  20. 2ae7918 Fix an error that occurred when trying to use the lossless transform feature without specifying -quiet; formatting tweak by DRC · 10 years ago
  21. 4dafea6 Move the garbage collection of the JPEG tiles into the decompression function to increase the chances that tiled decompression of large images will succeed without an OutOfMemoryError. by DRC · 10 years ago
  22. 88f260c Move the garbage collection of the JPEG tiles into the decompression function to increase the chances that tiled decompression of large images will succeed without an OutOfMemoryError. by DRC · 10 years ago
  23. 6ffed93 Generate the Java documentation using javadoc 7, to improve readability. by DRC · 10 years ago
  24. ee44371 This should have been checked in with the previous commit. by DRC · 10 years ago
  25. fc26b65 Extend the YUV decode functionality to the TurboJPEG Java API, and port the TJUnitTest modifications that treat YUV encoding/decoding as an intermediate step of the JPEG compression/decompression pipeline rather than a separate test case; Add the ability to encode YUV images from an arbitrary position in a large image buffer; Significantly refactor the handling of YUV images; numerous doc tweaks; other Java API cleanup and usability improvements by DRC · 10 years ago
  26. 40a0a02 Update (C) year by DRC · 10 years ago
  27. 695b6e8 Don't use deprecated constructor by DRC · 10 years ago
  28. aa255e2 Doc tweaks by DRC · 10 years ago
  29. bcb5f02 Go ahead and deprecate the old constructor in 1.3.1 instead of in 1.4, since it uses a deprecated method by DRC · 10 years ago
  30. c33347c Add @Deprecated to the deprecated Java methods, so javac will actually print deprecation warnings, as opposed to just listing the methods as deprecated in javadoc; remove the use of the deprecated methods by our own test programs. by DRC · 10 years ago
  31. 1909c59 As with tjDecompressToYUV*(), tjCompressFromYUV() also conditionally uses an intermediate buffer if the source image dimensions do not fall on MCU boundaries. by DRC · 10 years ago
  32. 12c29c9 Remove unneeded/unused code by DRC · 10 years ago
  33. b148139 Streamline the BufferedImage functionality in the compressor so that it works the same way as compressing a "normal" image, and deprecate the old BufferedImage methods and other redundant methods. Eliminate the use of deprecated features in the test programs. by DRC · 10 years ago
  34. d772f9a 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
  35. 4f7b7b3 Formatting tweak by DRC · 10 years ago
  36. 78b227e Oops. This code should not have been removed. It is necessary for generating the error images. by DRC · 10 years ago
  37. b53f410 Actually, the issue with nightshot_iso_100 is unrelated to the image size. Reducing the size to 128x95, the same size as vgl_6548_0026, does not eliminate the problem. The issue seems to always occur when decompression scaling is enabled. It is unclear at this point whether this is a bug or expected behavior, but the pixels generated by the split decompression functions appear correct. They are just slightly different (but not visibly so) from the pixels generated by the monolithic decompression function. by DRC · 10 years ago
  38. 823fbed Add a mode to tjbenchtest for testing the YUV encoding/decoding functions by DRC · 10 years ago
  39. ce6891f If we have transformed a 4:2:2 or 4:4:0 image in any way that transposes the horizontal and vertical dimensions, then we need to inform the decompression function that the subsampling type has changed. Otherwise, tjDecodeYUV() will not produce correct results. by DRC · 10 years ago
  40. f9baac9 Whitespace tweaks by DRC · 10 years ago
  41. df42b3c Whitespace tweaks by DRC · 10 years ago
  42. adf5551 Execute warmup runs with tjTransform() as well by DRC · 10 years ago
  43. e1efc8a Fix a couple of output formatting issues by DRC · 10 years ago
  44. 95e4cb2 Since we now have a complete set of YUV functions, TJBench can be greatly simplified. It now tests YUV encoding/decoding as an intermediate step of JPEG compression/decompression, which eliminates the need for a separate YUV mode. Several other things have been streamlined in the process. by DRC · 10 years ago
  45. 0e9bf64 Fix a segfault that would occur in decompress-only mode if -alloc was specified without -tile. by DRC · 10 years ago
  46. dd59233 Fix a segfault that would occur in decompress-only mode if -alloc was specified without -tile. by DRC · 10 years ago
  47. a15f19f Wordsmithing & formatting tweaks by DRC · 10 years ago
  48. d4b453c Back-port the -subsamp option from 1.4 rather than use the hackish approach of replacing 4:2:2 with 4:4:0. This has the added advantage of allowing the user to test only a specific level of subsampling. by DRC · 10 years ago
  49. db0e279 Oops. This was apparently the victim of an overly aggressive search/replace. by DRC · 10 years ago
  50. aa36758 Silence warning in CMake 2.8.12 and later by DRC · 10 years ago
  51. 5eb1efa Silence warning in CMake 2.8.12 and later by DRC · 10 years ago
  52. 3bf21e0 Fix the build of the Java classes when using MSVC 2010 and later. Something in the recesses of my brain is telling me that I tried this before and it failed under some circumstances, but it must have been a bug in an older CMake implementation. CMake 2.8.8 and later seem to work fine with this patch. This patch also updates the minimum required version to 2.8.8, because 2.8.8 fixed another issue that was preventing the SIMD code from building under MSVC 2010 and later. by DRC · 10 years ago
  53. d45c549 Fix the build of the Java classes when using MSVC 2010 and later. Something in the recesses of my brain is telling me that I tried this before and it failed under some circumstances, but it must have been a bug in an older CMake implementation. CMake 2.8.8 and later seem to work fine with this patch. This patch also updates the minimum required version to 2.8.8, because 2.8.8 fixed another issue that was preventing the SIMD code from building under MSVC 2010 and later. by DRC · 10 years ago
  54. 05d24e8 Fix Windows build by DRC · 10 years ago
  55. 42aeac3 Formatting tweaks by DRC · 10 years ago
  56. 7d9f758 For now, punt on trying to support fancy upsampling in tjDecodeYUV(). Fancy upsampling requires context rows and other refinements, which are difficult to implement correctly with the algorithm we're using. Longer-term, supporting fancy upsampling would probably require using the main buffer that libjpeg allocates. by DRC · 10 years ago
  57. 15c0876 Fix additional uninitialized values reported by valgrind by DRC · 10 years ago
  58. 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
  59. 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
  60. f27f38b Add a blank line before the alpha-enabled colorspace tests in order to improve readability by DRC · 10 years ago
  61. 4798b7e Add a blank line before the alpha-enabled colorspace tests in order to improve readability by DRC · 10 years ago
  62. 2bdc042 Go ahead and call jinit_master_decompress() rather than trying to reproduce its functionality. That function does a few things that we were missing, including allocating the range limit table used by the plain C color conversion code. by DRC · 10 years ago
  63. 4d82ddb Oops. We need to call start_pass() on the color converter in order to allocate the conversion tables used by the plain C code. by DRC · 10 years ago
  64. 50cfc46 Oops. We need to call start_pass() on the color converter in order to allocate the conversion tables used by the plain C code. by DRC · 10 years ago
  65. 84c25cb Oops. We need to call start_pass() on the color converter in order to allocate the conversion tables used by the plain C code. by DRC · 10 years ago
  66. ea657b2 Fix regression introduced in r1128 that caused SIMD detection to malfunction for ARM platforms (and probably ARM64 and MIPS as well.) by DRC · 10 years ago
  67. f9c2dd2 Fix regression introduced in r1122 that caused SIMD detection to malfunction for ARM platforms (and probably ARM64 and MIPS as well.) by DRC · 10 years ago
  68. 895fd6d Fix unitialized value reported by valgrind (the upsampling routine used by 4:4:0 and 4:1:1 reads the value of component_index.) by DRC · 10 years ago
  69. 34dca05 Implement a YUV decode function in the TurboJPEG API, to be symmetric with tjEncodeYUV(). by DRC · 10 years ago
  70. 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
  71. 54918b3 Remove unused code (the destination manager is not used during YUV encoding, there are no virtual arrays to realize, and jinit_c_prep_controller() is unnecessary because we are not using smoothing.) by DRC · 10 years ago
  72. e2ce3b5 Remove unused code (the destination manager is not used during YUV encoding, there are no virtual arrays to realize, and jinit_c_prep_controller() is unnecessary because we are not using smoothing.) by DRC · 10 years ago
  73. ffa5e59 Fix autoconf warnings by DRC · 10 years ago
  74. 5aec4af Use C-style comments by DRC · 10 years ago
  75. c7a3246 Remove unused code (the destination manager is not used during YUV encoding, there are no virtual arrays to realize, and jinit_c_prep_controller() is unnecessary because we are not using smoothing.) by DRC · 10 years ago
  76. 006bc58 Use C-style comments by DRC · 10 years ago
  77. 6f75a35 Oops by DRC · 11 years ago
  78. cccfdcb Older versions of automake don't support AM_PROG_AR, so only execute that macro if it exists. by DRC · 11 years ago
  79. c56cb47 Fix autoconf warnings by DRC · 11 years ago
  80. 693f4a5 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
  81. 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
  82. ad2f618 Update copyright year in file header as well by DRC · 11 years ago
  83. 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
  84. 68550a7 Update copyright notice to reflect recent SIMD contributions by DRC · 11 years ago
  85. 2885cf5 Further examination of the code reveals that this change is unnecessary. The histogram stores a count of each color in the image, so it will always contain at least one non-zero element, and thus the total can never be zero. Since the histogram is generated from the image data and not read from the header, there is no chance that header corruption would affect it. by DRC · 11 years ago
  86. d9712ed Further examination of the code reveals that this change is unnecessary. The histogram stores a count of each color in the image, so it will always contain at least one non-zero element, and thus the total can never be zero. Since the histogram is generated from the image data and not read from the header, there is no chance that header corruption would affect it. by DRC · 11 years ago
  87. d4ab63d Fix several potential overflow issues identified by the community. by DRC · 11 years ago
  88. 88dee58 Formatting tweak by DRC · 11 years ago
  89. e26c687 Fix several potential overflow issues identified by the community. by DRC · 11 years ago
  90. e189ec7 Remove trailing space by DRC · 11 years ago
  91. 9397469 Remove trailing space by DRC · 11 years ago
  92. 2d07ee5 Create a separate stub file for 64-bit ARM, since it currently implements only the decompression-related functions. by DRC · 11 years ago
  93. ba55b2c First pass at ARMv8 64-bit NEON SIMD support by DRC · 11 years ago
  94. 3e00f03 Formatting tweaks by DRC · 11 years ago
  95. edc846f Formatting tweaks by DRC · 11 years ago
  96. cc0733a Remove trailing spaces by DRC · 11 years ago
  97. a113506 Some motion JPEG implementations generate "abbreviated JPEG streams" (JPEG images without the default tables included) for some or all of the video frames, in order to save space. When these are encountered, it is generally expected that they will be decompressed using the default Huffman tables, so libjpeg-turbo now does this unless the tables have been explicitly specified by an application. by DRC · 11 years ago
  98. 8d55c88 Include instructions for building iOS binaries using Xcode 4.6.x and Xcode 5.0. by DRC · 11 years ago
  99. a2f0644 Include instructions for building iOS binaries using Xcode 4.6.x and Xcode 5.0. by DRC · 11 years ago
  100. 7db5273 Per the conventions of the image compression and digital video communities, use "YCbCr" to describe the JPEG colorspace and "YUV" to describe an image format consisting of Y, Cb, and Cr planes (this partially reverts r960.) by DRC · 11 years ago