Common/Helpers
- Add InterleaveLower and InterleaveUpper to Vector128_ and Vector256_
- Add unit test for InterleaveLower and InterleaveUpper (specifically for Vector256_)
- Add Average to Numerics.cs
Common
- Add 32 and 33 to the InlineArray.tt text template
Formats/Jxl/IO/Metadata
- Remove unnecessary System.Runtime.CompilerServices using directive from JxlCustomTransformData and JxlOpsinInvreseMatrix
Formats/Jxl/Processing/Decoder
- Remove unncessary using SixLabors.ImageSharp.Formats.Jxl.IO
Formats/Jxl/Processing/Encoder
- Add partial Fast Lossless Encoder work (+enc_fast_lossless.cc; largest file in libjxl source)
- Add linear algebra (+enc_linalg.cc, +enc_linalg.h)
Formats/Jxl/Processing/Jpeg
- Work that would later become JXL<->JPEG lossless coding mode
Formats/Jxl/Processing/Modular/Encoding/ContextPrediction
- Finish context prediction (+context_predict.h)
Formats/Jxl/Processing/Modular/Transforms
- Finish Reversible Color Transform (+rct.cc, +rct.h, +enc_rct.cc, +enc_rct.h)
- Finish Palette/Indexed coding (+palette.cc, +palette.h, +enc_palette.cc, enc_palette.h)
- Finish Squeeze transform (+squeeze.cc, +squeeze.h, +enc_squeeze.cc, +enc_squeeze.h)
Formats/Jxl/Processing/RenderPipeline
- Incomplete render pipeline abstractions with EPF (Edge Preserving Filter) 0 stage (+render_pipeline_stage.cc, +render_pipeline_stage.h, +stage_epf.cc, +stage_epf.h)
Formats/Jxl/Processing/Splines
- Remove unnecessary System.Runtime.CompilerServices using directive
Formats/Jxl/Processing
- Add dequantizer matrices
- Remove JxlEndianness (prefer ByteOrder from ImageSharp/Common)
- Add missing constant to JxlLoopFilter
- Remove unnecessary using SixLabors.ImageSharp.Common.Helpers from JxlMath
- Replace JxlPixelFormat to use ByteOrder
- Update quantizers to use dequantizer matrices and quantizer weights
- Add quantizer encoding and constants
- Add SIMD utilities
- Remove System.Runtime.CompilerServices using from JxlWeightsSeparable5
- Remove InlineArray3, InlineArray36 and InlineArray15 from InlineArrays (3 and 15 already exist in System.Runtime.CompilerServices; 36 already exists in InlineArray.tt from ImageSharp/Common)
NEXT STEPS
The current focus would be applying refactors and optimizations from reviews, followed by completing the JPEG XL modular.