aboutsummaryrefslogtreecommitdiff
path: root/turbojpeg-jni.c
AgeCommit message (Collapse)Author
2014-08-22Windows doesn't have setenv(). Go, go Gadget Macros.dcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1380 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-22Add a set of undocumented environment variables and Java system properties ↵dcommander
that allow compression features of libjpeg that are not normally exposed in the TurboJPEG API to be enabled. These features are not normally exposed because, for the most part, they aren't "turbo" features, but it is still useful to be able to benchmark them without modifying the code. git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1376 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-17Refactored YUVImage Java class so that it supports both unified YUV image ↵dcommander
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 git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1360 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-15Make the wrapped functions staticdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1359 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-15Whitespace formatting tweaksdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1355 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-15Add descriptions to help sort out which function goes with which version of ↵dcommander
the API. git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1354 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-15Compiler warningsdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1350 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-15Restore backward compatibility between libjpeg-turbo 1.3.x JAR and the new ↵dcommander
JNI library git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1349 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-15Allow the int pixel versions of the various TurboJPEG JNI functions to share ↵dcommander
the same code as the byte pixel versions. git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1348 632fc199-4ca6-4c93-a231-07263d6284db
2014-08-14Clean up exception handling in the JNI code. The exception is actually not ↵dcommander
thrown until the function exits, so we can let the code fall through to bailout: if the TurboJPEG C function fails. Also, per the JNI spec, no other JNI functions can be called between GetPrimitiveArrayCritical() and ReleasePrimitiveArrayCritical(). This hasn't caused any problems thus far, but better safe than sorry. git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1346 632fc199-4ca6-4c93-a231-07263d6284db
2014-05-09Remove trailing spaces (+ one additional tab in TJUnitTest.java that was ↵dcommander
missed in the previous commit) git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1279 632fc199-4ca6-4c93-a231-07263d6284db
2014-03-16Extend the YUV decode functionality to the TurboJPEG Java API, and port the ↵dcommander
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 git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1176 632fc199-4ca6-4c93-a231-07263d6284db
2013-10-31Extend the TurboJPEG Java API to support compressing JPEG images from YUV ↵dcommander
planar images git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1071 632fc199-4ca6-4c93-a231-07263d6284db
2013-08-23Add CMYK support to the TurboJPEG Java API & clean up a few things in the C APIdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@1020 632fc199-4ca6-4c93-a231-07263d6284db
2013-04-28Extend the TurboJPEG Java API to support generating YUV images with ↵dcommander
arbitrary padding and to support image scaling when decompressing to YUV git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@975 632fc199-4ca6-4c93-a231-07263d6284db
2013-04-27Correct misuse of the word "pitch" + more code formatting tweaksdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@971 632fc199-4ca6-4c93-a231-07263d6284db
2012-10-02Fix MinGW build and remove duplication of effortdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@864 632fc199-4ca6-4c93-a231-07263d6284db
2012-09-24Add a Java version of TJBench and extend the TurboJPEG Java API to support ↵dcommander
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.) git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@862 632fc199-4ca6-4c93-a231-07263d6284db
2012-06-07Fix array size calculationsdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@833 632fc199-4ca6-4c93-a231-07263d6284db
2012-06-06Add x, y parameters to TJDecompressor so that it can be used to decompress ↵dcommander
to an arbitrary position in the destination image (TurboVNC needs this.) git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@832 632fc199-4ca6-4c93-a231-07263d6284db
2012-01-17Compiler warningsdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@734 632fc199-4ca6-4c93-a231-07263d6284db
2011-09-26Oops. Don't try to use custom filter at the C level unless it is defined at ↵dcommander
the Java level. git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@712 632fc199-4ca6-4c93-a231-07263d6284db
2011-09-20Implement custom filter callback in Javadcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@707 632fc199-4ca6-4c93-a231-07263d6284db
2011-07-12Re-work TJBUFSIZE() to take into account the level of chrominance subsamplingdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@668 632fc199-4ca6-4c93-a231-07263d6284db
2011-05-25Need to set TJFLAG_NOREALLOC for tjTransform()dcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@648 632fc199-4ca6-4c93-a231-07263d6284db
2011-05-21Clean up constants so that flags, pixel formats, etc. are clearly ↵dcommander
differentiated; Update documentation accordingly; Name the enums to make it easier to reference them in the docs and clean up the references accordingly; Set Doxygen option to force a detailed description for the constants to always be generated git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@617 632fc199-4ca6-4c93-a231-07263d6284db
2011-05-21Completely refactored the TurboJPEG C API so that it uses pixel formats ↵dcommander
instead of the clunky pixel size + flags combination to define the pixel size and component order. tjCompress2() and tjTransform() can also now grow the JPEG buffer as needed, which can allow programs to save memory by not pre-allocating the "worst-case" buffer size calculated by TJBUFSIZE(). Converted API documentation to Doxygen. There is no legacy code remaining, so the refactored version of the library has been re-licensed under a BSD-style license. git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@616 632fc199-4ca6-4c93-a231-07263d6284db
2011-04-02Slight refactor to put ScalingFactor into its own class (mainly because the ↵dcommander
$ 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 git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@557 632fc199-4ca6-4c93-a231-07263d6284db
2011-03-15Java code cleanup + Java docsdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@518 632fc199-4ca6-4c93-a231-07263d6284db
2011-03-04On Windows, long is 32-bit, so use jlong insteaddcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@512 632fc199-4ca6-4c93-a231-07263d6284db
2011-03-04Implement lossless cropping interface in Javadcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@501 632fc199-4ca6-4c93-a231-07263d6284db
2011-03-02Fix compiler warnings in Visual C++dcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@485 632fc199-4ca6-4c93-a231-07263d6284db
2011-03-02Perform size checks on arraysdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@483 632fc199-4ca6-4c93-a231-07263d6284db
2011-03-01tjGetScaledSize() would never be able to accommodate scaling factors > 1, ↵dcommander
so replace it with a function that returns a list of fractional scaling factors that TurboJPEG supports. git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@477 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-28Unused variablesdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@473 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-26"tjScaledSize"="tjGetScaledSize"dcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@456 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-25Implement YUV encode/decode methods at the Java level; Remove some of the ↵dcommander
arguments from the Java API and replace with get/set methods; General API cleanup; Fix BufferedImage grayscale tests in TJUnitTest git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@451 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-23Support for compressing from/decompressing to a BufferedImage in the Java ↵dcommander
wrapper git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@432 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-23More JNI cleanup + added unit test and fixed bugs uncovered by itdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@431 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-22Streamline Java wrapperdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@424 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-22Make the scaling API a bit more friendlydcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@422 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-16Expose TurboJPEG scaling features in Java wrapperdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@375 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-08Restructure Java classes into their own packagedcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@358 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-08Use Java capitalization conventionsdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@357 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-04Eliminate compiler warnings in Sun Studiodcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@340 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-04JNI interface changed for TJ class, since it only has static methods nowdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@339 632fc199-4ca6-4c93-a231-07263d6284db
2011-02-04Add JNI wrapper for TurboJPEG/OSSdcommander
git-svn-id: svn://svn.code.sf.net/p/libjpeg-turbo/code/trunk@337 632fc199-4ca6-4c93-a231-07263d6284db