viewer for newer image formats like JXL (JPEG XL), HEIC, AVIF

Discussion of bugs and problems found in Altap Salamander. In your reports, please be as descriptive as possible, and report one incident per report. Do not post crash reports here, send us the generated bug report by email instead, please.
User avatar
Georgd
Posts: 104
Joined: 24 Jul 2006, 17:13

viewer for newer image formats like JXL (JPEG XL), HEIC, AVIF

Post by Georgd »

Dear all,

newer images have several advantages over other veteran formats like JPEG, e.g. better compression, alpha channel, HDR. Across all use cases, JXL seems superior over other newer formats – see e.g. JPGXL.info – so I would like to use it as my primary format. Sadly, internal viewers of Salamander 4.0 do not support it. Same applies to HEIC and AVIF. So how to view them in/from Salamander?

I configured XnView MP as external viewer, but that's not really satisfying, e.g. it's opening slow compared to PictView, it requires two times ALT+F4 to close, when you searched in Salamander and press F3 on one result, you can't flip trough Salamander's search results but XnView shows all files of the folder of the opened file. To my understanding, this applies to all external viewers.

I tried to make the LibXL reference implementation windows binaries read the JXL and output it as PNG to stdout which in turn is given to PictView plugin, but it did not work out like this in Salamander > Options > Configuration > Viewers and Editors > Viewers
  • File mask *.jxl
  • command: C:\tempGD\jxl-x86-windows\bin\djxl.exe
  • arguments "$(Name)" - --output_format PNG | C:\Program Files\Altap Salamander\plugins\pictview\salpvenv.exe
Does anyone find a way to make this approach work?

Has anyone the know-how and motivation to create a wrapper around e.g. LibJXL making it usable as Salamander plugin? Ideally, this would allow updating the LibXL binary without the plugin author to become active. Would of course be great if the wrapper was from the start also compatible with https://github.com/OpenSalamander/salamander to avoid later requirement for changes.

Best regards,
Georg
Using Salamander since v 1.52