Merge branch 'ijg.lossless' into dev

Lossless: Accommodate LJT colorspace/SIMD exts

In libjpeg-turbo, grayscale_convert() and null_convert() aren't the only
lossless color conversion algorithms.  We can also losslessly convert
RGB to and from any of the extended RGB colorspaces, and some platforms
have SIMD-accelerated null color conversion.

This commit also disallows RGB565 output in lossless mode, and it moves
the IsExtRGB() macro from cdjpeg.h to jpegint.h and repurposes it to
make jinit_color_converter() and jinit_color_deconverter() more
readable.
This commit is contained in:
DRC
2022-11-16 12:18:45 -06:00
7 changed files with 44 additions and 63 deletions

View File

@@ -177,8 +177,8 @@ Switches for advanced users:
following features will be unavailable when compressing
or decompressing a lossless JPEG file:
* Quality/quantization table selection
* Color conversion (the JPEG image will use the same
color space as the input image)
* Color space conversion (the JPEG image will use the
same color space as the input image)
* DCT/IDCT algorithm selection
* Smoothing
* Downsampling/upsampling