Commit Graph

30 Commits

Author SHA1 Message Date
DRC
552dd27bde tjTransform() was not working properly if r.w=0 or r.h=0 2011-03-15 20:09:47 +00:00
DRC
074a6f24bb Handle 4:4:0 (transposed 4:2:2 subsampling) 2011-03-04 12:52:45 +00:00
DRC
5e9da424a4 Tile generation did not work with TJXFORM_HFLIP, because the underlying transform code was using an in-place algorithm, which modified the source coefficients after the first tile was generated. Thus, create a new option which allows TurboJPEG to turn off the in-place horizontal flip if there are multiple transforms being performed from the same set of coefficients. 2011-03-04 03:20:34 +00:00
DRC
66b6d80ed6 Since lossless transforms have such a high fixed performance cost, implement a mechanism for performing more than one at a time on the same source image. 2011-03-02 09:22:41 +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
b02715c1b1 Fix compiler warnings in Visual C++ 2011-03-02 01:27:26 +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
3f2ef301c4 Expose libjpeg lossless transform feature in TurboJPEG/OSS 2011-02-26 22:02:37 +00:00
DRC
28db388687 Fix compiler warnings 2011-02-26 21:20:46 +00:00
DRC
02156d7c53 "tjScaledSize"="tjGetScaledSize" 2011-02-26 19:53:58 +00:00
DRC
3405865cd2 Replace the TJ_YUV flag with two new API functions 2011-02-25 02:08:23 +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
aa8b75afa8 Added scaling API to TurboJPEG/OSS 2011-02-15 08:31:34 +00:00
DRC
50103b80ca Ensure that YUV temp buffers get properly freed if a failure occurs 2011-02-15 05:26:28 +00:00
DRC
21b5c4bc4d The fast integer DCT degrades for qualities > 95, so use the slow integer DCT instead to ensure that perceptually lossless performance is maintained. 2011-01-25 06:52:31 +00:00
DRC
2e1b59c09d Eliminate all of the __memalign() mess and just handle the alignment ourselves 2011-01-05 23:35:53 +00:00
DRC
3c7c57b3ad Ensure temp. buffers for YUV output are 16-byte aligned on 32-bit Windows 2011-01-05 22:33:24 +00:00
DRC
f0d2577482 Added extended tjDecompressHeader() function which can determine the type of subsampling used in the JPEG image 2010-12-14 01:21:29 +00:00
DRC
55a9cbffe7 Fix various memory corruption issues in the new JPEG->YUV feature 2010-12-11 06:01:11 +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
a478af780a Space = Tab 2010-10-13 19:22:50 +00:00
DRC
0298a12bd8 Bleepin' Windows uses LLP64, not LP64 2010-02-26 23:01:19 +00:00
DRC
f72fb65759 Make TJ_FORCE* options work correctly 2010-02-22 08:34:44 +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