The simpler media website CMS
Hello
When I import images, since version 1.6.4, the metadata "LensInfo" is not read correctly in the exifs of the photo. I searched a little and I noticed that "LensInfo" corresponds to the data 'UndefinedTag:0xA434'.
I replaced "LensInfo" by "UndefinedTag:0xA434" on line 2849 of the file zpcore/functions/functions.php to solve my problem and it is fixed, I get for example "NIKKOR Z 24-70mm f/4 S", I checked for Canon, Sony and Nikon cameras for version 1.6.5 of ZenPhoto.
Herve
Comments
I would think the camera sadly does things off the standard not use the correctly named field… Sadly Exif is a loose standard and it can vary sadly. We use the native PHP exif reading since we removed an very old library doing this recently. I am not sure we will start cover such "camera specialities"…
Canon, Sony and Nikon are not exactly "specialities" though... and it's valuable info for photographers.
I'll test with my images from various cameras for this too, maybe that's done by others too.
""specialities" refers to camera vendors not following the even loose standard of Exif…
The way PHP natively reads and interprets Exif data also depends on the PHP version used.
I would like to point out that my photos are taken in Raw format and processed by LightRoom to create a Jpeg file placed on my site. It is possible that the Exifs are not integrated in the same way by the different software. My camera is a Canon R7.
Might be. I don't have Lightroom and also no photos in raw format… Is there anything in Lightroom to adjust how metadata is added/transfered perhaps?
I can choose to export Exifs or not in Jpeg but I cannot act on the content.
The "LensInfo" or "UndefinedTag:0xA434" problem is discussed on many forums.
Thank you, I will keep my correction solution for my photos, it works, that's the main thing.
I can confirm this is happening and opened a ticket for this issue (https://github.com/zenphoto/zenphoto/issues/1479#issue-2672322605)
Please note that UndefinedTag:0xA434 corresponds to LensType and UndefinedTag:0xA432 to LensInfo.
In your example "NIKKOR Z 24-70mm f/4 S" is the LensType (or LensModel) and not LensInfo.
In my original post, I suggested replacing LensInfo with 'UndefinedTag:0xA434' because for example:
in the old exif reader
with 'LensInfo' i get 'EF70-300mm f/4-5.6L IS USM'
and with 'LensType' i get ''
and in exif_read_data() with
'UndefinedTag:0xA432' i get 'a:4:{i:0;s:4:"70/1";i:1;s:5:"300/1";i:2;s:3:"0/0";i:3;s:3:"0/0";}'
and with
'UndefinedTag:0xA434' i get 'EF70-300mm f/4-5.6L IS USM'
which corresponds well to the old exif reader.
We will add some method to our formatting class that can handle both. The "Off way" with the "undefinedTags" and the way following "standard" named fields. We will post on the ticket if we have something to test in the support build. Might take a few days.
We have now a fix to test in the 1.6.6a support build (master).
I have tested the fix and as i thung after the post of "Fretzl", the results are inverted with the results obtained in "Exifer library". In the old Exifer library, an information as 'EF70-300mm f/4-5.6L IS USM' was put in "EXIFLensInfo" collumn and the "ExifLensType" was null.
Now with the fix this information is put in "ExifLensType" column, it's correct on the principle because it's corresponding with the lens model but how read now the olds data who are all writed in the "EXIFLensInfo" column.
The Exif data "UndefinedTag:0xA434" corresponding with 'EF70-300mm f/4-5.6L IS USM' not put at the good place in the actual database.
I am not sure I understand the problem. The old lib was very old and there is naturally a chance it didn't do things properly.
We mapped the "undefinedTag" ones to the corresponding named LensInfo and LensType Exif fields as discussed above and therefore to their matching database columns.
I really like to hear more oppinions before we work more on this.
Maybe it was reversed (and wrong) in the old Exifier library.
Please refresh metadata of your images and also refresh the database.
I found that the metadata information in the database is very persistent.
I understand, many thanks. I renamed the column "EXIFLensInfo" as "EXIFLensType" in database and vice versa. All is operating on my site with 1.6.6a version.
https://rvm-photo.fr in french and an example of exifs on
https://rvm-photo.fr/urbain/architecture/Convergence-20240903-IMG_0570.jpg
Not sure what you mean, we have both columns already by default. I assume you mean the field config instead. Remember any "Hacking" is on your own risk and you have to redo it on every update.
Anyway, we are following the exif specs according to https://exiftool.org/TagNames/EXIF.html.
Another small change: We figured we internally used "LensType" which should actually be named "LensModel" according to the specs. So we updated the internal catalogue while the db column remains unchanged.