Where is the latest? The nightly builds folder has one built on 04/04…
the latest is always in git master – you need to build from source. The only binaries I’m providing are for releases, sorry
lensName() is just a convenience function that works most of the time for vanilla cases. The internal exiv2 (and exiftool btw) ID number to string lookup databases are mostly guesswork unfortunately and don’t/can’t really handle ID clashes.
If you’re aware of the exceptions to these simple mappings, you’ll need to dig through the Exif and MakerNote data yourself to create a better mapping (i.e. try to figure out via some other tag if a teleconverter has been used). For example, in dt there are many exceptions in lens identification, and Canon ones (like this case) are still not covered perfectly…
Thank all the camera and lens vendors for having (or have had) a custom lens identification and metadata storage scheme. For example, only recently have some of them started using the standard Exif.Photo.LensModel and Exif.Photo.LensMake as expected.
Thanks for the explanation. I understand the issue, but my opinion is that, in principle, what you describe should be done by exiv2 inside the implementation of
lensName. Otherwise, they should deprecate the function or at least warn about its limitations. I see no mention of this in the API docs though.
This is the principle. Then, in practice, I’m already adding exceptions and workarounds when people report them…
Patches are always welcome.
Thanks! I’ll keep that in mind (I don’t understand the hostility though)
I’m sorry if you took it that way. Exiv2 does genuinely need help, and can’t be realistically expected to deal w/ this lens identification shenanigans “perfectly” on everyone’s behalf.
Just lobbing “exiv2 bugs” over when it comes to lens identification isn’t necessarily always constructive (hope you can see that perspective as well).
Understood, but my sw building days are over I can wait for the next release, whenever. TVM.
Alright, I’m glad this was just a simple misunderstanding then.
Btw, reading the most recent comment to the the github issue opened by @BarryThomas, it seems the problem might already have been fixed in the current master.
When it comes to making better info in certain Canon MakerNote tags available, yes, but not sure it’ll address the simplistic lensName() assumptions…
Fair enough. There you go then: Better documentation for Exiv2::lensName ? · Issue #2204 · Exiv2/exiv2 · GitHub
As commented over on Exiv2, the f1.8 lens exif data (through XnView) is not helpful:
I’ll drop the latest Exiv2 build into my ART and see what happens. Thanks guys for all the work on this - we users appreciate it.
Ahh OK, it isn’t as simple as just renaming and dropping the exiv dll into ART and firing it up - I’ll stop fiddling about and leave the clever stuff to the grownups tvm.
Robin has said that handling lens names internally was a design mistake and creates this type.of evergreen work, and that if rewritten from scratch, probably would not include such functionality internally, as it is beyond the scope of reading/writing metadata
My query over on Exiv2 has been closed so I’ll ask here… If clients using Exiv are already doing workarounds, is it time for Exiv to deprecate LensName and let clients do the work themselves? Or is the problem deeper than that?
This is a question for the exiv2 team, not something I can answer. From my part, I’ll add workarounds whenever something strange is reported. BTW, if you have a raw for the misidentified 50mm lens, I can check that too.
Will do. I’ll check all combos I have and zip up the results. Tvm.
Lens: Canon EF 24-105mm f/4L IS USM - correctly noted in ‘Lens Type’ using ExifTool
Camera: Canon R5 with RF-EF adapter
Lens: Sigma EF 12-24mm f/4L IS USM - INcorrectly noted in ‘Lens Type’ using ExifTool
Camera: Canon R5 with RF-EF adapter
Lens: Canon RF 50mm f/1.8 STM - INcorrectly noted in ‘Lens Type’ using ExifTool
Camera: Canon R5
See Canon Tags
It seems most RF lenses have LensType numerical ID of 61182 so when this is detected, another mechanism should be used.
See also updating LensType tag with exiv2/exiftool for Canon RF lens and the “hack” to make LensType fail so you can use another fallback…