Comments (23)
I can reproduce the ISOSpeedRatings
tag warning, but not the rest. Can you provide the pp3(s) if you made any modifications to the metadata in RawTherapee and also the associated source image(s)? If you do not want to share the images, provide the output of exiv2 -pa your_image_here.raw
for each source image and tif produced by RawTherapee.
from rawtherapee.
Yes, I am understanding something more.
I will add what you are asking for in the following comment.
I encountered the fatal error with the following pp3
20240222124633_4234.CR2.pp3.txt
(I manually added a .txt suffix because of GitHub, everything happens without that suffix)
With this pp3, I have the fatal "Sanity check on directory count failed" with just one file.
- Generate the TIF file
- Use mogrify
$ mogrify -resize 1920x1920 *.tif
mogrify: Incorrect count for "MakerNote"; tag ignored. `TIFFFetchNormalTag' @ warning/tiff.c/TIFFWarnings/958.
mogrify: Wrong data type 3 for "PixelXDimension"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
mogrify: Wrong data type 3 for "PixelYDimension"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
mogrify: Unknown field with tag 40965 (0xa005) encountered. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
mogrify: Sanity check on directory count failed, zero tag directories not supported. `TIFFFetchDirectory' @ error/tiff.c/TIFFErrors/599.
mogrify: Failed to read directory at offset 73692. `TIFFReadDirectory' @ error/tiff.c/TIFFErrors/599.
The pp3 file has been generated using a simple partial custom profile, via RawTherapee.
Right click -> Processing profile operation -> Apply -> My profiles -> credits
where credits.pp3 is
[MetaData]
Mode=1
[Exif]
Artist=Choreography: Christodoulidou Elena. Dancers: Elina Karakosta, Anna Nicolaou, Ivi Hadjivasileiou, Maria Masonou. Photos: Sergio Vaccaro.
Copyright=CC-BY-NC-SA
ImageDescription=Between the memories/Through time and space
Exif.UserComment=Egomio Cultural Centre
This is what I was use to do until RawTherapee 5.9.
The result, with RawTherapee 5.10, is to have all the tags selected. When I apply my partial profile now RawTherapee adds ExifKeys=*;
in the [MetaData]
section.
And here is the failure.
If I do everything manually (no custom profile), the "Basic" section only is activated.
[MetaData]
Mode=1
ExifKeys=Exif.Image.Copyright;Exif.Image.Artist;Exif.Image.ImageDescription;Exif.Photo.UserComment;Exif.Image.Make;Exif.Image.Model;Exif.Photo.LensModel;Exif.Photo.FNumber;Exif.Photo.ExposureTime;Exif.Photo.FocalLength;Exif.Photo.ISOSpeedRatings;Exif.Photo.ExposureBiasValue;Exif.Photo.Flash;Exif.Photo.DateTimeOriginal;Exif.Image.XResolution;Exif.Image.YResolution;
[Exif]
Artist=Choreography: Christodoulidou Elena. Dancers: Elina Karakosta, Anna Nicolaou, Ivi Hadjivasileiou, Maria Masonou. Photos: Sergio Vaccaro.
Copyright=CC-BY-NC-SA
ImageDescription=Between the memories/Through time and space
Exif.UserComment=Egomio Cultural Centre
In this case I only have the ISOSpeed warning.
$ mogrify -resize 1920x1920 *.tif
mogrify: Wrong data type 9 for "ISOSpeedRatings"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
I know that everything is a bit jammed.
Changing method is not a problem for me.
There are still, anyway, a couple of issues:
- Backward compatibility: the pp3 files generated in the previous years are wrong, I should perform a massive sed correction.
- The error comes apparently when
ExifKeys=*;
, so there's something bad in another sections.
I'm sorry for the long comment, I think it was necessary.
Thank you,
HUjuice
from rawtherapee.
The raw file:
https://www.sergiovaccarophoto.com/20240222124633_4234.CR2
https://www.sergiovaccarophoto.com/20240222124633_4234.CR2.pp3
The generated TIF file:
https://www.sergiovaccarophoto.com/20240222124633_4234.tif
exiv2 -pa 20240222124633_4234.CR2
:
20240222124633_4234.CR2-exif.txt
exiv2 -pa 20240222124633_4234.tif
:
20240222124633_4234.tif-exif.txt
Further note:
$ exiv2 -pa 20240222124633_4234.tif > /dev/null
Warning: Directory Image3, entry 0x0111: Strip 0 is outside of the data area; ignored.
It looks like there are multiple images (thumbnails, layers) in the TIF file.
Further note: there are no backward compatibilities. The "old" pp3 files without any ExifKeys=
field work as expected.
from rawtherapee.
The fatal error is due to the copying of tags that should not be in the final tif. Many of the tags are specific to the raw file. Instead of keeping all the metadata tags, only select the ones you need. In general, the ones in the Basic group are safe to copy. Your raw file also has a GPSInfo group which I think is also safe. Some tags in Photo are also safe, but most or all of that data is already in the Basic group.
The wrong data type warnings are definitely a RawTherapee bug. The copyright warning is potentially a bug too, but I have not managed to reproduce it.
from rawtherapee.
Yes, I understood this. That's why I find that RT shouldn't add ExifKeys=*;
, whatever my behavior was.
Exif data are a plethora of tags. I think RT should copy the modified ones only.
from rawtherapee.
I created a partial profile with the contents you supplied and applied it to your image in v5.10, but I could not reproduce the issue. The tags in the Basic group remain selected while all other tags remain deselected. The copyright, artist, etc. tags are modified as expected.
from rawtherapee.
I understand that you are dealing with a plethora of things.
It's difficult, for me too, to provide organised information.
I am playing with my command line right now. Look at this:
sergio@box ~/foto/spool $ /usr/bin/rawtherapee-cli -Y -o "/home/sergio/foto/spool" -s -t -c /home/sergio/foto/raw/selected/2018/Limisso/20180702213000_4417.CR2
RawTherapee, version 5.10, command line.
Output is 16-bit integer.
Processing: /home/sergio/foto/raw/selected/2018/Limisso/20180702213000_4417.CR2
Warning: Directory Canon, entry 0x0000 has unknown Exif (TIFF) type 0; setting type size 1.
Merging sidecar procparams.
sergio@box ~/foto/spool $ /usr/bin/rawtherapee-cli -Y -o "/home/sergio/foto/spool" -s -j -c /home/sergio/foto/raw/selected/2018/Limisso/20180702213000_4417.CR2
RawTherapee, version 5.10, command line.
Output is 8-bit integer.
Processing: /home/sergio/foto/raw/selected/2018/Limisso/20180702213000_4417.CR2
Warning: Directory Canon, entry 0x0000 has unknown Exif (TIFF) type 0; setting type size 1.
Merging sidecar procparams.
Warning: Exif tag Exif.Photo.MakerNote not encoded
Warning: Exif tag Exif.Canon.CRWParam not encoded
sergio@box ~/foto/spool $ identify -format '%w %h' 20180702213000_4417.tif
identify: Incorrect count for "MakerNote"; tag ignored. `TIFFFetchNormalTag' @ warning/tiff.c/TIFFWarnings/958.
identify: Wrong data type 3 for "PixelXDimension"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
identify: Wrong data type 3 for "PixelYDimension"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
identify: Unknown field with tag 40965 (0xa005) encountered. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
identify: Sanity check on directory count failed, zero tag directories not supported. `TIFFFetchDirectory' @ error/tiff.c/TIFFErrors/599.
identify: Failed to read directory at offset 72950. `TIFFReadDirectory' @ error/tiff.c/TIFFErrors/599.
sergio@box ~/foto/spool $ identify -format '%w %h' 20180702213000_4417.jpg
3000 2001
(identify
is part of the imagemagick toolkit)
These issues don't appear with every file, but in this file I really don't find anything strange. Selected Exif tags are from the "Basic" group only.
I am tempted to go back to RT 5.9, to verify if the same issues happen. If it is helpful for you, I will do it.
Please, let me know.
from rawtherapee.
20180702213000_4417.CR2.pp3.txt
from rawtherapee.
There should be no errors (only warnings) if you select only the tags in the Basic group. In the pp3 you just provided, there are other tags selected. Same with the pp3s you used in the CLI. Review your processing profiles. There is something in them that is adding the extra tags.
from rawtherapee.
There's nothing outside Basic there. Also, mode is 0.
[MetaData]
Mode=0
ExifKeys=Exif.Image.Artist;Exif.Image.Copyright;Exif.Image.ImageDescription;Exif.Image.Make;Exif.Image.Model;Exif.Image.XResolution;Exif.Image.YResolution;Exif.Photo.DateTimeOriginal;Exif.Photo.ExposureBiasValue;Exif.Photo.ExposureTime;Exif.Photo.FNumber;Exif.Photo.Flash;Exif.Photo.FocalLength;Exif.Photo.ISOSpeedRatings;Exif.Photo.LensModel;Exif.Photo.UserComment;
I plaid with IPTC.
Another file, check this. Here RT goes fine, but imagemagick goes fatal.
sergio@box ~/foto/spool $ /usr/bin/rawtherapee-cli -Y -o "/home/sergio/foto/spool" -s -t -c /home/sergio/foto/raw/selected/2020/Nicosia/03/20200308173738_7004.CR2
RawTherapee, version 5.10, command line.
Output is 16-bit integer.
Processing: /home/sergio/foto/raw/selected/2020/Nicosia/03/20200308173738_7004.CR2
Merging sidecar procparams.
sergio@box ~/foto/spool $ identify -format '%w %h' 20200308173738_7004.tif
identify: Wrong data type 3 for "PixelXDimension"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
identify: Wrong data type 3 for "PixelYDimension"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
identify: Unknown field with tag 40965 (0xa005) encountered. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
identify: Sanity check on directory count failed, zero tag directories not supported. `TIFFFetchDirectory' @ error/tiff.c/TIFFErrors/599.
identify: Failed to read directory at offset 46552. `TIFFReadDirectory' @ error/tiff.c/TIFFErrors/599.
20200308173738_7004.CR2.pp3.txt
I left my IT life for photography, RT is a column of my workflow, now. I'll do my best to help.
from rawtherapee.
In that pp3, you have the Metadata copy mode set to Copy unchanged. That will copy all the tags which is why imagemagick cannot process the image.
from rawtherapee.
Well, this is unclear to me.
"Copy unchanged" sounds like the Exif tags are the ones provided by my Canon camera (vs "Apply modifications").
Anyway, you are right, if I change this setting ("Apply modifications") the fatal error is resolved.
sergio@box ~/foto/spool $ /usr/bin/rawtherapee-cli -Y -o "/home/sergio/foto/spool" -s -t -c /home/sergio/foto/raw/selected/2020/Nicosia/03/20200308173738_7004.CR2
RawTherapee, version 5.10, command line.
Output is 16-bit integer.
Processing: /home/sergio/foto/raw/selected/2020/Nicosia/03/20200308173738_7004.CR2
Merging sidecar procparams.
sergio@box ~/foto/spool $ identify -format '%w %h' 20200308173738_7004.tif
identify: Wrong data type 9 for "ISOSpeedRatings"; tag ignored. `TIFFReadCustomDirectory' @ warning/tiff.c/TIFFWarnings/958.
3000 2000
Tomorrow (it's 2am here) I'll verify with more files.
Thank you
from rawtherapee.
One of the errors above doesn't depend on RT, apparently.
It appears also while handling the CR2 files.
$ exiv2 20190611140432_0859.CR2 1>/dev/null
Warning: Directory Canon, entry 0x0000 has unknown Exif (TIFF) type 0; setting type size 1.
This happens with files created by my old Canon 700D.
from rawtherapee.
"Copy unchanged" sounds like the Exif tags are the ones provided by my Canon camera
That is exactly right and that's why the tif metadata causes problems. Many of the tags in the raw file are specific to the raw and should not be copied to the tif.
from rawtherapee.
"Copy unchanged" sounds like the Exif tags are the ones provided by my Canon camera
That is exactly right and that's why the tif metadata causes problems. Many of the tags in the raw file are specific to the raw and should not be copied to the tif.
I didn't know it.
So the main issue is that ExifKeys=*;
is added when I load my partial profile.
If I remove that line, I find my custom fields selected, as expected.
Out of this, there's just the ISOSpeedRatings
issue, only if ExifKeys
explicitly requires it.
from rawtherapee.
What are the exact steps to reproduce the ExifKeys=*;
problem? It doesn't do that when I tried applying the partial profile.
from rawtherapee.
I often prepare a snippet of pp3 to apply license/credits to large groups of photos.
For example:
sergio@box ~/.config/RawTherapee/profiles/credits $ cat BetweenTheMemories.pp3
[MetaData]
Mode=1
[Exif]
Artist=Choreography: Christodoulidou Elena. Dancers: Elina Karakosta, Anna Nicolaou, Ivi Hadjivasileiou, Maria Masonou. Photos: Sergio Vaccaro.
Copyright=CC-BY-NC-SA
ImageDescription=Between the memories/Through time and space
Exif.UserComment=Egomio Cultural Centre
(forget the Mode=0
cases: I had it rarely, probably because of manual actions)
Then I apply it with right-click -> Proessing profile operations -> Apply -> My profiles -> credits -> BetweenTheMemories on the group of files.
I've been doing it for many years/versions.
Now, with RT-5.10, after this action I find ExifKeys=*;
under Mode=1
.
On the UI side, I find all the Exif tags selected, in all groups.
According to what you told before, this is a problem.
--
As a workaround, if in my partial profile I add
ExifKeys=Exif.Image.Copyright;Exif.Image.Artist;Exif.Image.ImageDescription;Exif.Photo.UserComment;
(or more in the Basic group) I find my needed tags selected only, and the problem is resolved.
About the past, today I made heavy sed action, where I granted in all my (thousands of) pp3 files Mode=0
and no ExifTags
line.
I am processing hundreds of files for printing and web purposes. Everything works fine until now (except warnings).
from rawtherapee.
I don't know what is going on. I created a partial profile with the contents you showed and saved it to my profiles directory. Then I opened RawTherapee, right-clicked an image, and applied the profile as you described. Opening the image in the editor and looking at the metadata tab, I can see the metadata has been successfully applied and only the tags in the Basic group are selected. Viewing the pp3 shows that ExifKeys
is a list of the dozen or so selected tags, not *
.
There are two ways I can coerce RawTherapee to select all tags.
- Apply a pp3 that selects all the tags before applying the partial profile.
- Add a Dynamic Profile Rule with a pp3 that selects all the tags and apply the partial profile using "Apply - partial" instead of "Apply".
Neither of these sound like what you are doing, and in both of these ways, it is expected behavior to have all tags selected.
from rawtherapee.
You know? I also cannot reproduce.
I did my operations again with a copy and I didn't have the same issue.
Please, consider that I had the ExifKeys=*;
issue with two groups of photos, not just one time. And consider that I didn't know the ExifKey existence before.
For sure I didn't change anything manually. Selecting all tags is not believable.
What did I do?
So, I am sorry for your time, I cannot provide more informations.
If I grep in my backup I still have many pp3 with ExifKeys=*;
, belonging to recent groups of files (after I upgraded to RT-5.10, but it could be a coincidence at this point).
I suggest to drop the issue (except the warnings), at least for the moment.
Thank you for your work.
from rawtherapee.
Just to make you know, today I took a photo collection from my past. Things working smoothly in the past.
I exported a photo in TIF and I have found layers.
So I opened the pp3 and I've found ExifKeys=*;
(all tags selected in the UI).
I tried with other photos and I've found in some case the same, in other cases ExifKeys=Exif.Image.Artist;Exif.Image.Copyright;Exif.Image.ImageDescription;Exif.Image.Make;Exif.Image.Model;Exif.Image.XResolution;Exif.Image.YResolution;Exif.Photo.DateTimeOriginal;Exif.Photo.ExposureBiasValue;Exif.Photo.ExposureTime;Exif.Photo.FNumber;Exif.Photo.Flash;Exif.Photo.FocalLength;Exif.Photo.ISOSpeedRatings;Exif.Photo.LensModel;Exif.Photo.UserComment;
Grepping the pp3 files, only the photos I opened with RawTherapee 5.10 have this. All the other photos - the photos I never opened with RT-5.10 - are "clean": no ExifKeys=
and eventually custom tags in the [Exif]
section (Artist=blabla, Copyright=blabla, ImageDescription=blabla, Exif.UserComment=blabla).
RT-5.10 adds this setting, ExifKeys=
, but it doesn't do it correctly (and it shouldn't do it, imo, like before).
from rawtherapee.
Ok, I've found something I can reproduce.
- Take a photo, apply default settings from the File Browser (Right click -> Processing profile operations -> Reset to default). Now there is a
ExifKeys
setting under[MetaData]
with all the tags of the Basic group listed. (This is already excessive, for what I think.) - Select the photo in the File Browser, change something using the Batch Edit tab (I selected the "Resize" button, nothing else) and revert the history.
ExifKeys
didn't change. - Open the photo: now ALL the tags in ALL groups are selected, but the pp3 is still at the Basic list.
- Close the photo. Now
ExifKeys=*;
.
Please, try to reproduce it.
Thank you.
from rawtherapee.
Thanks for finding a way to reproduce it. I can see that the issue happens if you reset the history to the first entry in the batch edit tab. It does not happen in the editor and it does not happen unless you go back to the first history entry.
from rawtherapee.
Yes, I do this very often. Here is why the issue is frequent for me.
from rawtherapee.
Related Issues (20)
- History is getting spammed when Color Appearance & Lighting module is enabled Build 5.10-190 on dev branch. HOT 8
- A gamma shift issue/color change after saving to jpg HOT 1
- No DateTime (= editing date) in EXIF data of exported photo
- Please support Rust-free `librsvg` HOT 4
- Resulting JPG file is locked after Save As, Linux build 5.10-194 HOT 6
- JPG Export best-quality really chroma subsampling 4:4:4 ? HOT 1
- Film Negative - Improper assumption of mapping between raw values and transmission coefficient HOT 11
- RawTherapee 5.10 not responsive after start HOT 4
- Am I misunderstanding TP_LOCALLAB_AVOIDCOLORSHIFT_TOOLTIP? HOT 3
- Feature request: export pictures in HEIF 10bit HOT 3
- The GUI doesn't open on first install (Windows). HOT 1
- Wavelets - malfunction for the “selective range” part HOT 1
- Program resources not loaded when installed in directory with special characters HOT 7
- Build fails with libjpeg-turbo 3.0.3: Undefined symbols for architecture x86_64: "_jpeg_std_message_table" HOT 12
- Sony ILCE-6700 has invalid pixels on the right border HOT 1
- Chinese (Simplified) translation (intended for) Rawtherapee 5.8 (or 5.9?) HOT 1
- Please consider implementing a better way to preview and scroll through presets HOT 1
- Update GUI in Japanese HOT 1
- Add/Edit Exif not possible, if Exif data is not available in photo HOT 3
- Assertion '__n < this->size()' failed. HOT 6
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rawtherapee.