- 7a8c53e Clarify that the TurboJPEG API functions/methods do not modify the source buffer. by DRC · 9 years ago
- dcf9f15 Oops. Need to set the alpha channel when using TYPE_4BYTE_ABGR*. This has no bearing on the actual tests, but it prevents the PNG pre-encode reference images for those tests from being blank. by DRC · 10 years ago
- 3ebcf7c Make TJCompressor.close() and TJDecompressor.close() idempotent by DRC · 10 years ago
- d92949b Run the TurboJPEG conformance tests out of a directory in /tmp (for improved performance, if the source directory is on a remote file share.) Fix an issue in TJBench.java that prevented it from working properly if the source image resided in a directory with a dot in the name. by DRC · 10 years ago
- 40dd314 Refactored YUVImage Java class so that it supports both unified YUV image buffers as well as separate YUV image planes; modified the JNI functions accordingly and added new helper functions to the TurboJPEG C API (tjPlaneWidth(), tjPlaneHeight(), tjPlaneSizeYUV()) to facilitate those modifications; changed potentially confusing "component width" and "component height" terms to "plane width" and "plane height" and modified variable names in turbojpeg.c to reflect this; numerous other documentation tweaks by DRC · 10 years ago
- 580f391 Fix build broken by r1349 by DRC · 10 years ago
- 26dd86b Restore backward compatibility between libjpeg-turbo 1.3.x JAR and the new JNI library by DRC · 10 years ago
- 493be61 Clean up and consolidate notes regarding the YUV image format. This also corrects a factual error regarding the padding of the luminance plane-- because we now support 4:1:1, the component width is not necessarily padded to the nearest multiple of 2 if horizontal subsampling is used. by DRC · 10 years ago
- 1a45b81 Remove trailing spaces (+ one additional tab in TJUnitTest.java that was missed in the previous commit) by DRC · 11 years ago
- 6f92ff6 Fix Windows build by DRC · 11 years ago
- 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 · 11 years ago
- 6e11d68 Fix an error that occurred when trying to use the lossless transform feature without specifying -quiet; formatting tweak by DRC · 11 years ago
- 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 · 11 years ago
- 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 · 11 years ago
- 6ffed93 Generate the Java documentation using javadoc 7, to improve readability. by DRC · 11 years ago
- ee44371 This should have been checked in with the previous commit. by DRC · 11 years ago
- 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 · 11 years ago
- 40a0a02 Update (C) year by DRC · 11 years ago
- 695b6e8 Don't use deprecated constructor by DRC · 11 years ago
- aa255e2 Doc tweaks by DRC · 11 years ago
- 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 · 11 years ago
- 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 · 11 years ago
- 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 · 11 years ago
- 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 · 11 years ago
- 4f7b7b3 Formatting tweak by DRC · 11 years ago
- a15f19f Wordsmithing & formatting tweaks by DRC · 11 years ago
- 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 · 11 years ago
- db0e279 Oops. This was apparently the victim of an overly aggressive search/replace. by DRC · 11 years ago
- 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 · 11 years ago
- 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 · 11 years ago
- 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
- 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
- 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
- b3a028e 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 r959.) by DRC · 11 years ago
- 5a7e9e5 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 r959.) by DRC · 11 years ago
- 2e8ff4b Add the ability to test scaling when decompressing to YUV; compression from YUV to JPEG; and YUV padding. Replace clunky -411 and -440 parameters with a -subsamp parameter that allows any of the subsampling options to be tested in isolation. by DRC · 11 years ago
- 07e982d Deprecate and undocument the FORCE{MMX|SSE|SSE2|SSE3} flags. These were originally introduced in TurboJPEG/IPP as a way to override the automatic CPU selection in the underlying IPP codec, which was closed source. They are not meaningful anymore, since libjpeg-turbo provides environment variables to accomplish the same thing and since it no longer necessarily uses x86 SIMD code behind the scenes. by DRC · 11 years ago
- 1e67274 Extend the TurboJPEG Java API to support compressing JPEG images from YUV planar images by DRC · 11 years ago
- aba7ced Oops. Forgot to implement access method for the colorspace & extend TJBench by DRC · 11 years ago
- b2c4745 Wordsmithing by DRC · 11 years ago
- 38cb1ec Add CMYK support to the TurboJPEG Java API & clean up a few things in the C API by DRC · 11 years ago
- a583062 Add 4:1:1 subsampling support in the TurboJPEG Java API by DRC · 11 years ago
- ae92418 Add note regarding the fact that 4:4:0 lacks full SIMD support; Add an option for benchmarking 4:4:0 subsampling in TJBench; Wordsmithing; Disable timestamp in generated HTML files to make diffing and merging easier by DRC · 11 years ago
- f82b9f9 Add note regarding the fact that 4:4:0 lacks full SIMD support; Add an option for benchmarking 4:4:0 subsampling in TJBench; Wordsmithing; Disable timestamp in generated HTML files to make diffing and merging easier by DRC · 11 years ago
- 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 · 12 years ago
- b7c4193 Clean up the output of tjunittest and TJUnitTest by DRC · 12 years ago
- 49df783 Clean up the output of tjunittest and TJUnitTest by DRC · 12 years ago
- 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
- bb9e147 Fix backward compatibility between the Java classes and the 1.2.x JNI library (as long as the 1.3 Java features are not used.) by DRC · 12 years ago
- 1d29c5f Correct misuse of the word "pitch" + more code formatting tweaks by DRC · 12 years ago
- 67bee86 Code formatting tweaks by DRC · 12 years ago
- 65d4a46 Java doc tweaks by DRC · 12 years ago
- d7a642b Minor doc tweaks + ChangeLog update by DRC · 12 years ago
- 00400a0 In order to avoid a functional regression with previous releases, the JAR file needs to be able to load either the 64-bit or 32-bit JNI library on Un*x systems. by DRC · 12 years ago
- 441308c Move the TurboJPEG DLLs back into the system directory on Windows platforms. For Windows, it doesn't really simplify the build system to install these libraries in c:\libjpeg-turbo*, and it introduces potential problems with loading the JNI library. Specifically, if a user linked their Java app against the 64-bit libjpeg-turbo SDK and then used a 32-bit JVM at run time, they would not be able to load the 32-bit turbojpeg.dll without manipulating java.library.path or the PATH environment (and vice versa for building against the 32-bit libjpeg-turbo SDK and using a 64-bit JVM at run time.) by DRC · 12 years ago
- 4b357ab Older versions of automake don't support multiple _JAVA primaries, but we don't actually have to specify a "dist" primary, since the Java sources are already included under EXTRA_DIST. by DRC · 12 years ago
- 94f7ac9 Fix 'make dist' by DRC · 12 years ago
- 7175e51 Further enhancements/fixes to the packaging system: by DRC · 12 years ago
- 764e1e2 Overhaul Linux/Unix packaging system, primarily to avoid conflicts with vendor-supplied libjpeg-turbo packages (such as in Fedora and RHEL 6.) This also streamlines the packaging system somewhat, since it is no longer necessary to move the TurboJPEG libraries into the system library directory. Relocating those libraries was originally done to provide backward compatibility with TurboJPEG/IPP, but that package is long obsolete, and the software that formerly used it has been linking statically with libjpeg-turbo for quite some time. by DRC · 12 years ago
- 5039d73 Eliminated the awkward and confusing "TurboJPEG/OSS" designation, since there are no other active implementations of the TurboJPEG API anymore; don't refer to the libjpeg API library as "libjpeg-turbo" anymore, since that can be confusing; ARM v7s build instructions by DRC · 12 years ago
- 98ca1c3 ImageIO.read() returns null if the input image type is not supported (which occurs when trying to read a PPM file), so output a friendly error instead of letting the next line throw a null pointer exception. by DRC · 12 years ago
- fac3bea Add a Java version of TJBench and extend the TurboJPEG Java API to support it (this involved adding a polymorphic method in TJCompressor that accepts x and y offsets into a larger buffer, similar to the previous modification that had been done to TJDecompressor.) by DRC · 12 years ago
- 61e1341 If libturbojpeg.jnilib is not found on Mac systems, specifically look for it under /usr/lib, since /usr/lib isn't part of the default java.library.path on that platform. by DRC · 12 years ago
- 73d74c1 Add flags to the TurboJPEG API that allow the caller to force the use of either the fast or the accurate DCT/IDCT algorithms in the underlying codec. by DRC · 12 years ago
- f659f43 Add x, y parameters to TJDecompressor so that it can be used to decompress to an arbitrary position in the destination image (TurboVNC needs this.) by DRC · 12 years ago
- 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
- 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
- 80803ae "which"="that" by DRC · 13 years ago
- 6b968b2 Add TJCustomFilter to Windows build by DRC · 13 years ago
- f546711 Implement custom filter callback in Java by DRC · 13 years ago
- 835b76f Fix 'make docs' with out-of-tree builds by DRC · 13 years ago
- c6fa5ba Fix 'make headers' with out-of-tree builds by DRC · 13 years ago
- 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
- 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
- 9b49f0e Re-work TJBUFSIZE() to take into account the level of chrominance subsampling by DRC · 13 years ago
- 215aa8b Re-factor checkBufYUV() function to more closely resemble re-factored checkBuf() function by DRC · 13 years ago
- f962fbb Refactor slightly to match new C code by DRC · 14 years ago
- db42506 Allow customization of Java compiler flags by DRC · 14 years ago
- 279bd34 Change build instructions and README to reflect the fact that the Java front-end classes are now part of the build and distribution by DRC · 14 years ago
- b0428a7 Fix compiler warning by DRC · 14 years ago
- 848f225 Oops. Constructor should actually do something. by DRC · 14 years ago
- 62c6f98 Distribute TJLoader.java.in by DRC · 14 years ago
- b2f9415 Slight refactor to put ScalingFactor into its own class (mainly because the $ in the class name was wreaking havoc on the build scripts, but also to add a few convenience methods to it) and to create a separate loader class so we can provide a .jar file with the MinGW distribution that loads the correct DLL by DRC · 14 years ago
- 86e51f2 Fix compiler warning with OpenJDK by DRC · 14 years ago
- 957d623 Include TurboJPEG/OSS Java wrapper JAR in Windows distribution packages by DRC · 14 years ago
- dffd53d Fix 'make dist' so that it includes only what we need from java/ (it was errantly including java/Makefile) by DRC · 14 years ago
- f2602ce Build and package TurboJPEG/OSS Java wrapper into JAR file by DRC · 14 years ago
- b6ed7d3 Use a different naming convention, to avoid conflict with jpegut by DRC · 14 years ago
- 4f8c295 Clean up compiler warnings by DRC · 14 years ago
- 1f014c3 Fix compression from/decompression to TYPE_INT_{RGB|BGR} BufferedImages on big endian platforms by DRC · 14 years ago
- 2c74e51 More Java API cleanup by DRC · 14 years ago
- 92549de Java code cleanup + Java docs by DRC · 14 years ago
- 7c99822 Add notes about performance by DRC · 14 years ago
- 16c7077 Add an option to display the output image by DRC · 14 years ago
- 1da67e1 If a scaled-down JPEG output image is requested, we must decompress and recompress the transformed image. by DRC · 14 years ago
- 6bd084a Oops. Forgot to add TJTransform class by DRC · 14 years ago
- 3133441 Add access methods for getting at the JPEG buffer by DRC · 14 years ago
- 7d4b001 If transforming and outputting a JPEG file, output the transformed file directly instead of decompressing/recompressing it by DRC · 14 years ago
- d0a8136 Handle 4:4:0 (transposed 4:2:2 subsampling) by DRC · 14 years ago
- e857301 Implement lossless cropping interface in Java by DRC · 14 years ago