Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

JPEG XL transcoding feature (for big JPEG collections) #20

Open
nekohayo opened this issue May 29, 2022 · 2 comments
Open

JPEG XL transcoding feature (for big JPEG collections) #20

nekohayo opened this issue May 29, 2022 · 2 comments
Labels
enhancement New feature or request

Comments

@nekohayo
Copy link

nekohayo commented May 29, 2022

The biggest potential I see for this application is to be able to shrink down the heavy weight of my big photo gallery/storage on my computer, as I'm always running out of disk space. Yoga supporting JPEG XL would be a huge deal. It would be the most efficient image codec, and it would be an order of magnitude faster to encode than anything Yoga currently does.

JPEG XL can losslessly recompress/optimize existing JPEG images. There's just no downside.


Context: JPEG XL is the future of all image formats. It is a new royalty-free image codec targeting the image quality as found on the web, providing about 60% size savings when compared to original JPEG at the same perceptual quality, while supporting modern features like HDR, animation, alpha channel, lossless JPEG recompression, lossless and progressive modes. It is based on Google's PIK and Cloudinary's FUIF, and is an ISO standard.

Explanation here: https://www.slideshare.net/cloudinarymarketing/imagecon-2019-jon-sneyer

Reference implementation here: https://github.com/libjxl/libjxl/

Adoption:

  • Epiphany 45 / WebKitGTK, Safari 17 / WebKit and all iOS devices since Q4 2023 support JPEG XL out of the box.
  • Firefox's dev version has an initial implementation
  • Imagemagick already supports JPEG XL; for GD I filed a ticket at Support JPEG XL images libgd/libgd#699
  • Image viewers like gThumb, Loupe, etc. (many others) already support JPEG XL out of the box.
  • ...and others
@nekohayo nekohayo added the enhancement New feature or request label May 29, 2022
@flozz
Copy link
Owner

flozz commented May 30, 2022

Hello,

I want to add support for more image formats like AVIF and JPEG XL in YOGA, but I have no much time currently. I hope I will be able to work on this someday :)


As YOGA Image Optimizer is only a GUI for the YOGA library / CLI tool, I linked this issue on the YOGA project → wanadev/yoga#41

@nekohayo
Copy link
Author

nekohayo commented Jun 5, 2022

I will also add (in case someone else is looking at this): JPEG XL can even replace PNG, because with lossless JXL you get an average of 30-40% filesize improvements compared to optimized PNG: https://www.reddit.com/r/jpegxl/comments/l9ta2u/how_does_lossless_jpegxl_compared_to_png/

So eventually this could be seen as the one format to rule them all and make the rest of the formats mostly "for legacy use" in Yoga, someday.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
enhancement New feature or request
Projects
None yet
Development

No branches or pull requests

2 participants