Beep6581 / RawTherapee

A powerful cross-platform raw photo processing program
https://rawtherapee.com
GNU General Public License v3.0
2.67k stars 306 forks source link

JPEG XL (*.jxl) file format support #6273

Open BR1py opened 3 years ago

BR1py commented 3 years ago

Hello, I'm a fanboy of your program!

For me the new JXL format (see JXL) looks very promising and I like to see a full integration in rawtherapee (which means an import and export option).

Do you have any plans for the integration of the new format?

Thanatomanic commented 3 years ago

@BR1py There are no plans currently, but help is always welcome if you're able.

See also: https://github.com/Beep6581/RawTherapee/issues/1895 (EXR), https://github.com/Beep6581/RawTherapee/issues/5931 (FITS), https://github.com/Beep6581/RawTherapee/issues/5313 (JPEG2000)

Studiedlist commented 3 years ago

Hi! Jpeg-xl is great, I would like to see it in RawTherapee I could do some experiments in implementing import/export features. Can you navigate me through code so I would know where to start?

Thanatomanic commented 3 years ago

@Studiedlist The main functions for loading can be found here https://github.com/Beep6581/RawTherapee/blob/dev/rtengine/imageio.cc

Maybe that can be a good starting point? We haven't added new file formats in years, so I cannot point you to a PR or issue that you could use as reference. Don't hesitate to ask.

Studiedlist commented 3 years ago

Thanks, I will try to understand this part of code and implement jxl features

xiota commented 2 years ago

@Thanatomanic I have JXL import working when the file name is entered on the command line, but the JXL images don't show up in the file browser. Any pointer on where to look to change that? Thanks.

Thanatomanic commented 2 years ago

@xiota Perhaps here? https://github.com/Beep6581/RawTherapee/blob/d053f02450f87e964aa9feb0efd80241203f43bd/rtgui/thumbnail.cc#L116

Here is series of ifs that determine how the thumbnails are generated. There is also a list in your personal options file called ParseExtensions that is loaded by RT to determine which files to show. This list shows up in the Preferences.

xiota commented 2 years ago

@Thanatomanic Thanks. That was what I needed. Will open PR now.

beling commented 1 year ago

Links to Dark Table experience and implementation: https://github.com/darktable-org/darktable/issues/10866 https://github.com/darktable-org/darktable/pull/10044

0fbcb238c0 commented 4 months ago

Any progress here?

xiota commented 2 months ago

I updated #6367, which adds basic jxl file import.

xiota commented 4 weeks ago

For anyone who cares, JXL import has been merged. 59e8832dfbc9f5e4898f216e79cce080c001803d