Kornel af265e7562 Merge tag '2.1.5'
* tag '2.1.5': (41 commits)
  BUILDING.md: Specify install prefix for MinGW/Un*x
  Java: Guard against int overflow in size methods
  turbojpeg.c: Fix UBSan warning
  tjPlane*(): Guard against int overflow
  Java doc: TJ.pixelSize --> TJ.getPixelSize()
  TJBench: Unset TJ*OPT_CROP when disabling tiling
  TJExample: Remove "underlying codec" references
  GitHub: Update to actions/checkout@v3
  TJBench: Set TJ*OPT_PROGRESSIVE with -progressive
  TJBench/Java: Fix parsing of quality ranges
  TJBench: Strictly check all non-boolean arguments
  TurboJPEG: More documentation improvements
  TJDecompressor.java: Exception message tweak
  12-bit: Set alpha channel to 4095 rather than 255
  TJDecompressor.java: "YUV" = "planar YUV"
  Java: Don't allow int overflow in buf size methods
  tjDecompressToYUV2: Use scaled dims for plane calc
  TurboJPEG: Numerous documentation improvements
  TurboJPEG: Don't use backward compatibility macros
  TurboJPEG: Ensure 'pad' arg is a power of 2
  ...
2023-02-03 20:54:24 +00:00
2023-02-03 20:54:24 +00:00
2022-05-23 16:04:06 +01:00
2023-02-03 20:54:24 +00:00
2023-02-03 20:54:24 +00:00
2017-07-10 11:58:14 +01:00
2023-02-03 20:54:24 +00:00
2022-01-06 12:33:22 -06:00
2021-07-21 22:39:01 +01:00
2020-10-27 13:32:13 -05:00
2023-02-03 20:54:24 +00:00
2022-10-04 12:51:52 -05:00
2020-11-05 16:04:55 -06:00
2017-12-13 21:48:54 -06:00
2022-03-09 12:58:55 -06:00
2022-05-23 16:06:07 +01:00
2018-11-11 16:13:59 +00:00
2022-05-23 16:04:06 +01:00
2018-11-11 16:13:59 +00:00
2015-01-24 16:28:31 +00:00
2023-02-03 20:54:24 +00:00
2018-03-16 02:14:34 -05:00
2018-03-16 02:14:34 -05:00
2022-05-23 16:04:06 +01:00
2021-02-25 21:44:09 +00:00
2023-02-03 20:54:24 +00:00
2022-05-23 16:04:06 +01:00
2023-02-03 20:54:24 +00:00
2022-05-23 16:04:06 +01:00
2022-05-23 16:04:06 +01:00
2018-03-16 02:14:34 -05:00
2017-12-23 01:29:16 +00:00
2020-07-28 15:09:00 -05:00
2018-03-16 02:14:34 -05:00
2022-05-23 16:04:06 +01:00
2020-11-05 16:04:55 -06:00
2018-03-16 02:14:34 -05:00
2014-07-24 10:50:59 -04:00
2022-05-23 16:04:06 +01:00
2020-07-28 15:09:00 -05:00
2018-03-16 02:14:34 -05:00
2023-02-03 20:54:24 +00:00
2018-11-10 15:47:08 +00:00
2022-05-23 16:04:06 +01:00
2022-05-23 16:04:06 +01:00
2021-02-25 21:44:09 +00:00
2018-11-11 16:13:59 +00:00
2020-10-27 13:32:13 -05:00
2021-10-14 11:40:48 +01:00
2023-02-03 20:54:24 +00:00
2022-05-23 16:04:06 +01:00
2023-02-03 20:54:24 +00:00
2018-03-16 02:14:34 -05:00

Mozilla JPEG Encoder Project Build Status

MozJPEG improves JPEG compression efficiency achieving higher visual quality and smaller file sizes at the same time. It is compatible with the JPEG standard, and the vast majority of the world's deployed JPEG decoders.

MozJPEG is a patch for libjpeg-turbo. Please send pull requests to libjpeg-turbo if the changes aren't specific to newly-added MozJPEG-only compression code. This project aims to keep differences with libjpeg-turbo minimal, so whenever possible, improvements and bug fixes should go there first.

MozJPEG is compatible with the libjpeg API and ABI. It is intended to be a drop-in replacement for libjpeg. MozJPEG is a strict superset of libjpeg-turbo's functionality. All MozJPEG's improvements can be disabled at run time, and in that case it behaves exactly like libjpeg-turbo.

MozJPEG is meant to be used as a library in graphics programs and image processing tools. We include a demo cjpeg command-line tool, but it's not intended for serious use. We encourage authors of graphics programs to use libjpeg's C API and link with MozJPEG library instead.

Features

  • Progressive encoding with "jpegrescan" optimization. It can be applied to any JPEG file (with jpegtran) to losslessly reduce file size.
  • Trellis quantization. When converting other formats to JPEG it maximizes quality/filesize ratio.
  • Comes with new quantization table presets, e.g. tuned for high-resolution displays.
  • Fully compatible with all web browsers.
  • Can be seamlessly integrated into any program that uses the industry-standard libjpeg API. There's no need to write any MozJPEG-specific integration code.

Releases

Compiling

See BUILDING. MozJPEG is built exactly the same way as libjpeg-turbo, so if you need additional help please consult libjpeg-turbo documentation.

Languages
C 54.6%
Assembly 26.7%
HTML 8.9%
Java 4.4%
CMake 2.4%
Other 2.9%