arsenetar / dupeguru

Find duplicate files
https://dupeguru.voltaicideas.net
GNU General Public License v3.0
5.02k stars 403 forks source link

Add support for JPEG XL #1109

Open duongdominhchau opened 1 year ago

duongdominhchau commented 1 year ago

First, thank you for building this awesome tool, it helped a lot in maintaining my image vault.

Now, back to the problem: JPEG XL takes less space to store the same image, so I converted all my images to that format. However, after the conversion, I realized dupeguru does not have the ability to read that format yet, so now no duplicated image detection anymore. Therefore, here's an issue asking for JPEG XL support.

I use libjxl 0.8.1 on ArchLinux to convert the images. For now I don't know if there is any other information needed, if I miss anything please let me know so I can fill in, thanks.

glubsy commented 1 year ago

Definitely something to look into.

IlluminatiWave commented 11 months ago

https://github.com/easymodo/qimgv

Qimgv Supports multiple file formats and Qt5. I tried to copy Qimgv libraries to Dupeguru and got no results. (includes AVIF, HEIC, APNG, JP2, JpegXL, MNG and RAW)

chikari802 commented 4 weeks ago

Support for JPEG XL in Qt already exists on Linux. If kimageformat-plugins version 5.89 or newer is installed (or alternatively if qt-jpegxl-image-plugin is installed), simply patching core/pe/photo.py by adding jxl to HANDLED_EXTS is enough to make it work.

glubsy commented 3 weeks ago

simply patching core/pe/photo.py by adding jxl to HANDLED_EXTS is enough to make it work.

have you actually tested this? I'm a bit skeptical, because last time someone mentioned something similar to support the webp format, while it may have enabled Dupeguru to read the webp files, but it was not enough to actually detect dupes (from my experience).

chikari802 commented 3 weeks ago

@glubsy yes, I have tested this. It correctly detects 100% dupes and the rest (97-99%) are pretty close, not perfect but usable enough for me. Also the preview window works perfectly. (The only thing not working at all is animations in the preview but that seems to be unrelated since GIFs do not animate either for me)