Canon CR3 format, libraw/rawspeed and darktable

Please be patient! I know there has been many discussions here on the cr3 support in darktable and some ongoing activity on the dt and rawspeed githubs. I simply want to ask a few additional things and get confirmation for what I know.

  • libraw which is used in RT and ART supports cr3, and in fact right now I’m using ART to process my EOS RP files
  • rawspeed (used in darktable) doesn’t yet
  • however reading some of the dt github issues I got the impression that the only remaining bit to support cr3 in dt was to have exiv2 working as well… which it does now! but I understand there’s work to be done in rawspeed too…
  • …so how difficult is to get the algorithms from libraw and put them in rawspeed? please note that I’m asking this out of curiosity, without any polemic intent. Are there any “legal” restrictions that I don’t know (they are both open source projects, right?)

Apart from these questions, I also have a more practical issue. The “solution” so far has been to use Adobe dng converter in order to use dt to process cr3 files. However I have also seen that there is a python library that acts as a bridge to libraw, can it be used to read in batch all the cr3 and convert them to a suitable format that stores all raw information and is readable in dt?



I’ve looked into more detail into the rawpy and libraw python modules, they rely on pillow to do output operations and pillow does not seem to support any “raw” format like dng.

I have also found another python library, imageio, which gives access to many formats such as:

but again none of them are “raw”… is there anything I’m missing here? like one of the formats can be instructed to act as a “raw” file… and that is recognized by darktable obviously?


You could have just revived the other CR3 threads (there was a meta thread already) instead of starting a new one.

sorry I wasn’t aware of this being a bad thing to do.

anwyay I asked help to the moderators to delete this topic.

LibRaw (and rawpy) are just libraries for accessing raw files, not full blown converters. They are just building blocks for making one possibly…

The part about libraw and RawTherapee is not correct. We use some code from LibRaw, but do not rely on the full library for processing. In fact, the CR3 metadata is not available as of yet in RawTherapee.

alright Roel, thanks for the correction!