-
Notifications
You must be signed in to change notification settings - Fork 1.2k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[imageio] [DAM] Support Exif flash tag value in addition to its exiv2 textual explanation #18437
[imageio] [DAM] Support Exif flash tag value in addition to its exiv2 textual explanation #18437
Conversation
@zisoft Could I trouble you to review this PR, please? |
sure :) will look |
First test. Now all existing images are tagged with I have then refreshed the exif information of that image, the EDIT: Ok, after dt restart the thumbnail info shows the correct text |
The previous code did this by parsing the textual explanation of the tag value from exiv2. But it gave the wrong result when these strings were translated. We also correctly distinguish between no flash firing and no flash data available.
074f643
to
4fe8d3c
Compare
Yes, at the time of updating the database schema we do not yet have information from this tag, so it should be
The reason for the inconsistency is that the image information module shows text from another database field, where a text explanation of the tag value from exiv2 was previously inserted. If this PR had also made a change to the image information module so that it would make strings from the flash tag value itself, then there would be no inconsistency. I just decided that for this PR it would be enough to focus on one task.
I still have no idea how to get rid of this shortcoming (it's not part of the darktable code I'm familiar with), so I'd appreciate some advice. |
I found a PR (#4592) that did essentially the same thing while adding support for a different Exif tag, It also had a comment stating that to get the value we have to to select image(s) and refresh Exif. So it seems that this older PR had the same behavior as mine. Since refreshing Exif can reset star ratings, it is not something that should be done automatically. So it seems that it is unlikely to improve the user experience here (apart from the inconsistency of flash data in different places, which can be fixed in a future PR). |
There's a preference setting for whether to use the Exif star rating. If that's the only user-editable metadata affected by an Exif refresh, it should be safe (though slow on large libraries) to do an automatic refresh with the preference temporarily forced to "ignore". |
Or extremely slow in case of large libraries on external / network mounted disk. So I'll stop here. If anyone wants to implement this, feel free to take it over. I don't have a strong arguments against adding automatic refresh, but I don't feel this is a right thing either... |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Works for me, thanks!
Need a release note entry. TIA. |
Suggestion for release notes: Fixed incorrect reporting of whether a flash was fired in expansion variables |
This allows us to correctly detect whether the flash has fired. The previous code did this by parsing the textual explanation of the tag value from exiv2. But it gave the wrong result when these strings were translated.
We also correctly distinguish between no flash firing and no flash data available.