darktable-org / darktable-org/darktable
Use JXL for thumbnails (if available)
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 13.1k
- Forks
- 1.4k
- Avg merge
- 22h 14m
- Merged PRs (30d)
- 198
Description
Is your feature request related to a problem? Please describe.
Thumbnails can take a large amount of space on a local drive. Using JXL with compression can save space.
Describe the solution you'd like
Encode the mipmap using JXL at 80 quality lossy compression. I tested to compare. A 1600 x 1600 image takes 286kb in jpg (current settings) vs 121kb using JXL. This is almost a third without any visual impact (I cant tell them apart). I think thumbnails is a good use case.
Alternatives
Keep jpg or use AVI.
Additional context
It might help if this https://github.com/darktable-org/darktable/issues/16359 cannot be done.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by locating the code that encodes darktable mipmaps or thumbnails and check how optional image formats are detected. Implement JXL encoding at quality 80 when available, retain JPG as a fallback, and compare the resulting thumbnail behavior and storage against the current implementation.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c
- Domain
- computer-graphics
- Issue type
- Feature
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Quiet
- Clarity
- Mostly clear
- Newbie friendliness
- 48/100