Jon Sneyers
Jon Sneyers
Delta palette is also inherently non-progressive and doing Squeeze before or after doing delta palette is not going to change that. It does lead to artistic but undesired glitchy previews...
Both cjxl encode and djxl decode use full float buffers to represent images. That already means 12 or 16 bytes per pixel instead of 3 or 4 bytes per pixel,...
Doing everything with full float buffers is convenient for implementation, but it does quadruple the memory needed compared to using uint8. We already have decode options that are more memory-friendly...
> This seems quite bug-prone - can we make it so that we don't have the two options, and always use externally-owned buffers? That could be done, but it involves...
> I'm worried about mixing owning semantics and borrowing semantics in the same class - that sounds like it will lead to segmentation faults very easily. Agreed, it's not really...
I suggest the following course of action: - Make libjxl follow the spec regarding in what pass to put which shift range. This will break existing bitstreams encoded with --saliency_num_progressive_steps={3,4}...
Well maybe we do still want to allow an explicit downsample[n] == 1 that happens before the last pass, only adding the implicit pair when there is no explicit last...
I agree that OOM should ideally result in an error, not in crashing. It might be not so easy to implement that though. Does anyone have a suggestion on how...
> This seems potentially error prone, I'm not sure we should do it. Feel free to close this one without merging, it's not very important. The only thing that I...
Maybe (scaled-down or cropped versions of) some of these would be interesting: https://github.com/FLIF-hub/benchmarks/tree/master/test_images/PSF-line-drawings https://github.com/FLIF-hub/benchmarks/tree/master/test_images/SMBC I think FLIF would be pretty good in comparison with JPEG and PNG on images like...