SUMMARY With the digicam package from experimental (4:7.0.0~beta2+dfsg-1+b2) I get no EXIF data for CR3 images. exiftool shows them perfectly STEPS TO REPRODUCE 1. Select a CR3 image in digicam 2. Look at the empty exif display OBSERVED RESULT No exif data is shown EXPECTED RESULT Exif data is shown SOFTWARE/OS VERSIONS Windows: - macOS: - Linux/KDE Plasma: 5.7.9 (you mean the kernel version, don't you?) (available in About System) KDE Plasma Version: 5.19.4 KDE Frameworks Version: 5.72.0 Qt Version: 5.14.2 ADDITIONAL INFORMATION -/-
Read the problematic of CR3 here: https://github.com/Exiv2/exiv2/issues/236 Maik
With CR3 file the Exif extracted are minimal. It's performed by libraw, not Exiv2 shared library as for all other file formats, as Exiv2 refuse to support CR3 container. See this report for details : https://github.com/Exiv2/exiv2/issues/1229 To resume, i proposed more than one patch to solve the problem, and it have been always dropped as well... So, now, i will refuse to contribute to Exiv2, as i don't WASTE my time with this project. So with digiKam we trying to do the best with a fail back solution. libraw permit to extract some Exif information, especially to populate minimum field of database aka the shooting date. If you switch off the tag filers in Exif view, you will seen some properties... libraw permit to extract more info, but API is really a puzzle. So, it's in my TODO list for later... Best regards Gilles Caulier
Git commit c5afd10f76b1dc89d30cf022ac2ce1728823740a by Gilles Caulier. Committed on 16/08/2020 at 05:46. Pushed by cgilles into branch 'master'. DMetadata::libraw loader: if RAW file contains XMP data, pass the XMP byte-array extracted by libraw to DMetadata instance M +7 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +2 -0 core/libs/rawengine/drawdecoder_p.cpp M +2 -1 core/libs/rawengine/drawinfo.cpp M +6 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/c5afd10f76b1dc89d30cf022ac2ce1728823740a
I created today a libraw entry in github about to implement an Exif getter : https://github.com/LibRaw/LibRaw/issues/323 Wait and see. Gilles Caulier
Git commit 1db1eab1880bc95bf7ae823031d8dd73698b6b05 by Gilles Caulier. Committed on 24/08/2020 at 04:09. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract ICC color profile from RAW file for unsupported RAW by Exiv2 M +8 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +7 -8 core/libs/rawengine/drawdecoder_p.cpp M +2 -1 core/libs/rawengine/drawinfo.cpp M +5 -0 core/libs/rawengine/drawinfo.h M +2 -2 project/bundles/mxe/config.sh https://invent.kde.org/graphics/digikam/commit/1db1eab1880bc95bf7ae823031d8dd73698b6b05
Git commit 12ebac700dc187d418937b40bcc536e9d64f2f51 by Gilles Caulier. Committed on 24/08/2020 at 04:28. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Software creator name for unsupported RAW by Exiv2 M +5 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +2 -0 core/libs/rawengine/drawinfo.cpp M +7 -2 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/12ebac700dc187d418937b40bcc536e9d64f2f51
Git commit fcd227236d1ab6c277e49f280ef1fdcf54ed59cf by Gilles Caulier. Committed on 24/08/2020 at 04:58. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract image serial number for unsupported RAW by Exiv2 M +5 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +2 -0 core/libs/rawengine/drawinfo.cpp M +5 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/fcd227236d1ab6c277e49f280ef1fdcf54ed59cf
Git commit 42c5ba2ac011ff2e3cb2e52402898ccd5d2eafa1 by Gilles Caulier. Committed on 24/08/2020 at 09:32. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract GPS positions for unsupported RAW by Exiv2 M +2 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +8 -2 core/libs/metadataengine/engine/metaengine.h M +10 -0 core/libs/metadataengine/engine/metaengine_gps.cpp M +8 -0 core/libs/rawengine/drawdecoder_p.cpp M +7 -0 core/libs/rawengine/drawinfo.cpp M +7 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/42c5ba2ac011ff2e3cb2e52402898ccd5d2eafa1
Git commit 61e6d8e24adb4e61a82e40ae989b2aa85ed32425 by Gilles Caulier. Committed on 24/08/2020 at 09:42. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Image description for unsupported RAW by Exiv2 M +1 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -1 core/libs/metadataengine/engine/metaengine.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +1 -0 core/libs/rawengine/drawinfo.cpp M +5 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/61e6d8e24adb4e61a82e40ae989b2aa85ed32425
Git commit 327f9de8e86467b76c1a3d517534a0cd91961a34 by Gilles Caulier. Committed on 24/08/2020 at 10:12. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Firmware version name for unsupported RAW by Exiv2 M +6 -1 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +1 -0 core/libs/rawengine/drawinfo.cpp M +6 -1 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/327f9de8e86467b76c1a3d517534a0cd91961a34
Git commit 6d823a508070a8defb3e825c73a209fa57bc2faf by Gilles Caulier. Committed on 24/08/2020 at 10:39. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract DNG Version string for unsupported RAW by Exiv2 M +7 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp https://invent.kde.org/graphics/digikam/commit/6d823a508070a8defb3e825c73a209fa57bc2faf
Git commit f005cee242b95f25a1debad37eeec6ed64be5aa7 by Gilles Caulier. Committed on 24/08/2020 at 11:36. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract unique and localized camera model strings for unsupported RAW by Exiv2 M +10 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +38 -35 core/libs/rawengine/drawdecoder_p.cpp M +2 -0 core/libs/rawengine/drawinfo.cpp M +10 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/f005cee242b95f25a1debad37eeec6ed64be5aa7
Git commit 68c9f8caa54cec65cfbd77269b74985f3998dfc9 by Gilles Caulier. Committed on 24/08/2020 at 11:53. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Baseline Exposure value for unsupported RAW by Exiv2 M +6 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +2 -0 core/libs/rawengine/drawinfo.cpp M +5 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/68c9f8caa54cec65cfbd77269b74985f3998dfc9
Git commit 270edb4551d727341cfa507fd5b022127d622d09 by Gilles Caulier. Committed on 24/08/2020 at 12:21. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Exif thumbnail for unsupported RAW by Exiv2 M +6 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +2 -1 core/libs/rawengine/drawinfo.cpp M +6 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/270edb4551d727341cfa507fd5b022127d622d09
Git commit 166cd0069dcc94c2f022e4a9f2f1a96daadbaa76 by Gilles Caulier. Committed on 25/08/2020 at 09:13. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine: Check if GPS info are parsed and if image description is empty before to host these data in reconstitued Exif container. M +9 -2 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +8 -1 core/libs/rawengine/drawdecoder_p.cpp M +5 -3 core/libs/rawengine/drawinfo.cpp M +1 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/166cd0069dcc94c2f022e4a9f2f1a96daadbaa76
Git commit 6c429d5f8c4c1ee9faa161f26722ad012af47884 by Gilles Caulier. Committed on 25/08/2020 at 09:35. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract unique image ID, unique raw data ID, and original raw file name strings for unsupported RAW by Exiv2 M +21 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +3 -0 core/libs/rawengine/drawdecoder_p.cpp M +3 -0 core/libs/rawengine/drawinfo.cpp M +15 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/6c429d5f8c4c1ee9faa161f26722ad012af47884
Git commit c637de38ba1b5cbc425b9f2943e8fd209f040502 by Gilles Caulier. Committed on 25/08/2020 at 10:00. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Ambient Temperature value for unsupported RAW by Exiv2 M +10 -4 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +32 -30 core/libs/rawengine/drawinfo.cpp M +5 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/c637de38ba1b5cbc425b9f2943e8fd209f040502
Git commit fbbc2bb11e74028bdc75a9620f82d101418f578f by Gilles Caulier. Committed on 25/08/2020 at 11:47. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Exposure Index value for unsupported RAW by Exiv2 M +6 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +2 -1 core/libs/rawengine/drawdecoder_p.cpp M +4 -96 core/libs/rawengine/drawinfo.cpp M +5 -5 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/fbbc2bb11e74028bdc75a9620f82d101418f578f
Git commit 755305099bc90ec62f701cb824389a137f1c3d42 by Gilles Caulier. Committed on 25/08/2020 at 13:02. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Lens model, make, and serial strings for unsupported RAW by Exiv2 M +15 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +4 -0 core/libs/rawengine/drawdecoder_p.cpp M +7 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/755305099bc90ec62f701cb824389a137f1c3d42
Git commit 9a77f471448d73eee3930a1c3fea12d100ad4b52 by Gilles Caulier. Committed on 25/08/2020 at 13:17. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Focal Length In 35mm Film for unsupported RAW by Exiv2 M +5 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +54 -53 core/libs/rawengine/drawdecoder_p.cpp M +31 -29 core/libs/rawengine/drawinfo.cpp M +1 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/9a77f471448d73eee3930a1c3fea12d100ad4b52
Git commit 3608fca57055994ec3273d3c6d98af775668a232 by Gilles Caulier. Committed on 25/08/2020 at 13:36. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract Max aperture Lens value for unsupported RAW by Exiv2 M +6 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +1 -0 core/libs/rawengine/drawinfo.cpp M +3 -2 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/3608fca57055994ec3273d3c6d98af775668a232
Git commit f965541a39dd63a41f6c7f6dd2df00f8df5f7c84 by Gilles Caulier. Committed on 25/08/2020 at 13:57. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract flash used mode values for unsupported RAW by Exiv2 M +5 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +1 -0 core/libs/rawengine/drawinfo.cpp M +5 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/f965541a39dd63a41f6c7f6dd2df00f8df5f7c84
Git commit d9ccd166c13a246fa15e3479354d27dfff4f5fc3 by Gilles Caulier. Committed on 25/08/2020 at 15:05. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract camera ambient mesurements (depth water, elevation angle, humidity, temperature, etc.) for unsupported RAW by Exiv2 M +30 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +7 -0 core/libs/rawengine/drawdecoder_p.cpp M +7 -0 core/libs/rawengine/drawinfo.cpp M +26 -1 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/d9ccd166c13a246fa15e3479354d27dfff4f5fc3
Git commit aee10e71aab3942cf4351a15cb90eed15f59810e by Gilles Caulier. Committed on 25/08/2020 at 15:31. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract metering mode values for unsupported RAW by Exiv2 M +5 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +1 -0 core/libs/rawengine/drawdecoder_p.cpp M +1 -0 core/libs/rawengine/drawinfo.cpp M +8 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/aee10e71aab3942cf4351a15cb90eed15f59810e
Git commit 00883ba716b80cbd0c419278a04ba5612c367e38 by Gilles Caulier. Committed on 25/08/2020 at 15:39. Pushed by cgilles into branch 'master'. RawEngine => MetadataEngine : extract exposure program for unsupported RAW by Exiv2 M +5 -0 core/libs/metadataengine/dmetadata/dmetadata_libraw.cpp M +2 -0 core/libs/rawengine/drawdecoder_p.cpp M +2 -0 core/libs/rawengine/drawinfo.cpp M +5 -0 core/libs/rawengine/drawinfo.h https://invent.kde.org/graphics/digikam/commit/00883ba716b80cbd0c419278a04ba5612c367e38
I backported all Exif values extracted by libraw internaly for non supported RAW files by Exiv2. It's not perfect but this is the best that we can do in digiKam. This include CR3 files of course. If you want to see more info extracted, there is no choice: Exiv2 must be patched which a new file parser supporting Canon CR3 container. As already explained before, see the Exiv2 team problematic policy with CR3 in this issues : https://github.com/Exiv2/exiv2/issues/236 https://github.com/Exiv2/exiv2/issues/1229 The whish and the problem must be reported to Exiv2 team by commenting one of these DOWNSTREAM issues. I close this file now. Gilles Caulier