Open JadedMagician opened 11 months ago
Currently, Stash can only use ffprobe
to scan images which aren't inside zip files - could that be the issue? From that error message, it seems that stash is falling back on using Go's built-in image
package, which does not support JPEG XL.
If you look in the logs do you see a "File ffprobe
but it failed, so it fell back on the image
package.
As for what ffmpeg
binary stash uses, it first looks in your system PATH (which should include C:\Windows
), and will only fallback to downloading its own version into your .stash
directory (or wherever the config file is) if it can't find anything or if the found executable doesn't support a few features (the list is here). If you don't have an ffmpeg.exe
or ffprobe.exe
in your .stash
directory, then stash should be using your version.
I just tested it myself and it seems to work, but jxl
images are being detected as image clips instead of images (it seems that all formats besides png
, jpeg
, webp
and avif
are detected as image clips), which causes the frontend to display them incorrectly. This is the same issue as #3913, but for JPEG XL. Thumbnail generation also doesn't work.
This area probably needs a bit of a rework - to add support for more image formats, to make image clip detection more consistent and to have scanning work the same whether in a zip file or not.
There is a decoder for it https://github.com/gen2brain/jpegxl / https://pkg.go.dev/github.com/gen2brain/jpegxl in Go (uses purego).
Discussed in https://github.com/stashapp/stash/discussions/3324
Apple is currently rolling out support for JPEG-XL across both macOS and iOS, including Safari, which makes up 20% of the browser market. In light of that, now would be a good time to consider adding jxl support to Stash. JPEG-XL can losslessly compress JPEG files by 20-50%, which would be incredibly useful for those of us that have large image collections.