1
0
mirror of https://github.com/libjpeg-turbo/libjpeg-turbo.git synced 2026-10-23 11:48:53 +03:00

8 Commits

Author SHA1 Message Date
DRC
e24bc87a50 TJUnitTest.java: Fix code formatting issue
(detected by checkstyle.java)
2026-03-26 11:13:35 -04:00
DRC
42b75222d5 libspng: Use zlib v1.3.2 instead of miniz
miniz is buggy, and it keeps causing fuzzer failures.
2026-03-20 17:51:37 -04:00
DRC
fa789edffe TJ: Support 4:1:0 and 2:4 subsampling
Closes #436
2026-03-14 14:56:36 -04:00
DRC
4fad03310e Merge branch 'main' into dev 2026-03-14 14:09:30 -04:00
DRC
54bd58cc30 PNG image I/O support
Note that this changes the behavior of tj3GetICCProfile() in the
following ways:

- It can now be called with a compression instance, thus allowing the
  caller to retrieve an ICC profile (or the size thereof) extracted from
  a PNG image by tj3LoadImage*().
- The ICC profile extracted from a JPEG image can now be retrieved
  multiple times.  If I recall, I didn't allow this in TurboJPEG 3.1
  because there were already two buffer copies, one in
  jpeg_read_icc_profile() and another in the JNI wrapper.  That is no
  longer relevant, since the TurboJPEG Java API is now a separate
  project.

These changes should be backward-compatible.  Applications that treat
tj3GetICCProfile() as a mailbox rather than a newsstand will still work.
The changes were necessary in order to:

- allow decompression programs to both extract the ICC profile from a
  JPEG image and embed it into a PNG output image, and
- allow compression programs to retrieve the ICC profile size from a PNG
  input image (which is important when computing the worst-case JPEG
  destination buffer size.)

Closes #645
2026-03-12 17:45:51 -04:00
DRC
619ac563ea JNA: Fix and validate TJ.*YUVPlanes8() 2026-02-26 14:50:15 -05:00
DRC
61bf3c064a Merge branch 'main' into dev 2026-02-26 14:36:47 -05:00
DRC
ec3e6dcf46 Replace the TurboJPEG Java API with a JNA wrapper
Closes #832
2026-02-25 22:07:45 -05:00