Commit Graph

35 Commits

Author SHA1 Message Date
DRC
626f00e5c8 Fix build on Windows 2011-05-24 17:03:51 +00:00
DRC
411c62396d Add new API functions, tjAlloc() and tjFree(), which allow memory to be allocated and freed using a method of the library's choosing. At the moment, the primary purpose for this is to avoid allocating/freeing memory across the DLL boundary on Windows. 2011-05-24 16:52:47 +00:00
DRC
3bdddc666b Simplify initialization code (we don't have to explicitly initialize a component to 0, because the whole buffer has already been initialized to 0) 2011-05-23 05:50:07 +00:00
DRC
4fa973b836 Refactored jpegut to test the new TurboJPEG API. There is no legacy code remaining, so the refactored version of the program has been re-licensed under a BSD-style license. 2011-05-22 13:55:17 +00:00
DRC
3ec2702bfc Clean up constants so that flags, pixel formats, etc. are clearly 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 2011-05-21 15:34:54 +00:00
DRC
aa92628cd4 Completely refactored the TurboJPEG C API so that it uses pixel formats 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. 2011-05-21 14:37:15 +00:00
DRC
f634833a16 Use the same naming convention for the output files as the Java tests 2011-03-31 20:48:30 +00:00
DRC
074a6f24bb Handle 4:4:0 (transposed 4:2:2 subsampling) 2011-03-04 12:52:45 +00:00
DRC
5e9c5f9ff7 Move per-format flag assignments to the actual TurboJPEG function calls 2011-03-02 10:30:29 +00:00
DRC
086cc1e5cc Make the C version work more like the Java version 2011-03-02 10:13:55 +00:00
DRC
1873d021c7 Generate separate JPEG images for the YUV decode tests 2011-03-02 09:30:57 +00:00
DRC
0c7b322efe Fix Windows build; Add grayscale tests to Windows build; Add proper implementation of snprintf on Windows and use snprintf() in TurboJPEG library and tests instead of sprintf() 2011-03-02 02:17:30 +00:00
DRC
581609cebd Use "bailout" label to be more consistent with other TurboJPEG C code 2011-03-01 20:17:12 +00:00
DRC
be085e08b3 tjGetScaledSize() would never be able to accommodate scaling factors > 1, so replace it with a function that returns a list of fractional scaling factors that TurboJPEG supports. 2011-03-01 09:53:07 +00:00
DRC
da6a1f6c76 Don't call jpeg_finish_compress() with YUV output, because it tries to insert an EOI marker right in the middle of our image data. 2011-03-01 08:23:53 +00:00
DRC
3c620745a7 Make Visual C++ happy 2011-02-27 00:08:06 +00:00
DRC
02156d7c53 "tjScaledSize"="tjGetScaledSize" 2011-02-26 19:53:58 +00:00
DRC
8b3f7c6ff0 Add RGB --> Grayscale YUV decoding test 2011-02-25 06:21:54 +00:00
DRC
3405865cd2 Replace the TJ_YUV flag with two new API functions 2011-02-25 02:08:23 +00:00
DRC
4802041125 More JNI cleanup + added unit test and fixed bugs uncovered by it 2011-02-23 02:20:49 +00:00
DRC
8bde192230 Oops. dumpbuf() was displaying only red components. 2011-02-23 01:40:22 +00:00
DRC
e005c1f751 Test all YUV decode paths 2011-02-22 19:59:05 +00:00
DRC
38218222cd Make the scaling API a bit more friendly 2011-02-22 06:41:29 +00:00
DRC
9eecea2a8e Add TJBUFSIZEYUV() convenience function 2011-02-22 00:16:14 +00:00
DRC
2c31f2b499 RGBA=RGBX, BGRA=BGRX, ABGR=XBGR, ARGB=XRGB 2011-02-19 18:10:05 +00:00
DRC
aa8b75afa8 Added scaling API to TurboJPEG/OSS 2011-02-15 08:31:34 +00:00
DRC
d850ff7386 Ensure that the exit status of the program indicates failure if one of the pixel value checks fails 2011-02-15 05:19:31 +00:00
DRC
f54cc16225 If the output width/height are not an even number of MCU's, then use an intermediate buffer to ensure that the output format is XVideo-compatible 2010-12-10 10:58:49 +00:00
DRC
f80fb63847 Provide TJ_YUV option for tjDecompress() as well 2010-12-10 04:59:13 +00:00
DRC
979a590374 Merge the TurboJPEG planar YUV encoding feature from VirtualGL 2.2 2010-11-24 04:02:37 +00:00
DRC
366f303099 Grayscale bitmap support in TurboJPEG/OSS 2010-11-04 22:39:59 +00:00
DRC
b96fd4daa4 dumpbuf() should have void return type 2010-02-18 05:12:58 +00:00
DRC
e25f0c337c Exit with non-zero status if an error is encountered 2010-02-18 00:40:17 +00:00
DRC
cf75c6f1be Test fast upsampling
"4:1:1 = 4:2:0"
2009-04-05 21:53:20 +00:00
DRC
65b7cbecf3 Include low-level unit tests borrowed from VirtualGL 2009-04-03 12:04:24 +00:00