* tag '2.1.3': (56 commits) Neon/AArch64: Explicitly unroll quant loop w/Clang Neon/AArch64: Fix/suppress UBSan warnings Neon/AArch64: Accelerate Huffman encoding AppVeyor: Test strict MSVC compiler warnings Eliminate incompatible pointer type warnings MSVC: Eliminate int conversion warnings (C4244) MSVC: Eliminate C4996 warnings in API libs BUILDING.md: Clarify that Ninja works with Windows BUILDING.md: Remove NASM RPM rebuild instructions BUILDING.md: Document NASM/Yasm path variables "YASM" = "Yasm" Build: Fix Neon capability detection w/ MSVC Ensure that strncpy() dest strings are terminated Eliminate unnecessary JFREAD()/JFWRITE() macros Build: Embed version/API/(C) info in MSVC DLLs Fix segv w/ h2v2 merged upsamp, jpeg_crop_scanline TJBench: Remove innocuous always-true condition GitHub Actions: Specify Catalina for macOS build Fix -Wpedantic compiler warnings Eliminate non-ANSI C compatibility macros ...
Mozilla JPEG Encoder Project 
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.