Skip to content

An oddity with Photos and camera lens information

The other day, I was working on some Smart Albums in Photos, adding a Smart Album for each of the lenses I use with my FUJIFILM X-E3 camera. This seemed like a simple task; each Smart Album just needed to check two conditions:

Camera Model is X-E3 [and] Lens is 16.0 mm f/2.8 (as one example)

But after creating my Smart Albums, I noticed that some photos were missing, so I did a bit of experimenting. What I found was that Photos showed different values for the Lens field—even when the same lens was used on the same camera. Here's an example:

The only difference between those two photos is that one was taken in RAW mode, the other in one of my camera's JPEG modes.

At this point, I suspected the X-E3's firmware was doing something odd, so I snapped a series of photos using each of the X-E3's five photo format options (RAW, Fine, Normal, RAW+F, and RAW+N), and imported them into Photos…

All five shots were taken with the 16mm f/2.8 lens on the X-E3. Of the five, the only one with a different value in the Lens field was the RAW photo.

At this point, while chatting with Kirk McElhearn on the issue, he reminded me about Phil Harvey's wonderful exiftool (which you can also install via Homebrew).

I uploaded the five (seven, actually, because of the two "RAW+" formats) photos to a folder on my Mac, and then used exiftool to see what lens information was recorded with each photo:

$ ls -1 DSC*
$ exiftool * | grep "Lens Info"
Lens Info                       : 16mm f/2.8
Lens Info                       : 16mm f/2.8
Lens Info                       : 16mm f/2.8
Lens Info                       : 16mm f/2.8
Lens Info                       : 16mm f/2.8
Lens Info                       : 16mm f/2.8
Lens Info                       : 16mm f/2.8

It's not the X-E3 that's recording different Lens metadata—as you can see, it's identical for all seven photos.

So what's going on? Looking at more of the exif lens data, here are all the fields that contain "Lens" for the RAW photo:

$ exiftool DSCF1421.RAF | grep Lens
Lens Modulation Optimizer       : On
Lens Info                       : 16mm f/2.8
Lens Make                       : FUJIFILM
Lens Model                      : XF16mmF2.8 R WR
Lens Serial Number              : 1AABBCCD2

This same information—with the same values—is present on all the JPEG images, too. Notice that the Lens Model field's value matches what's shown in Photos for the RAW photo…and it also matches FUJIFILM's official name for the lens, as shown on its web page.

My guess is that Photos' importer uses the Lens Model field to populate Photos' internal Lens field, but only when importing RAW photos. For whatever reason, when importing anything other than RAW, Photos is using the value from the Lens Info field, not the Lens Model field.

I would expect that any camera that has differing values in these two fields will experience this problem. I heard from one Twitter user with a Canon; his EXIF data is different for Lens Info and Lens Model, but Photos correctly imports both RAW and JPEG images, using just the Lens Model field.

Once I figured out what was going on, I was able to modify my Smart Album to account for the two different styles of data in the Lens field:

Camera Model is X-E3 [and] Lens contains 16

This works for now, but if I were ever to buy, for instance, the nice-but-costly XF16mmF1.4 R WR, my Smart Album would capture those photos as well. The only way to even sort-of make it work that I can think of would be to create two Smart Playlists for each lens—one for RAW photos and one for all other photos. And that's a kludge.

The real solution is for Photos to use either—and only!—the Lens Info field or the Lens Model field. Changing from one to the other based on source image format seems like a mistake. (While they're at it, maybe they can add support for Smart Albums that let you use a mix of "any" and "all" conditionals in one album, as you can do in Finder searches.)

Call for asssitance: I'm curious to know if others see this with non-FUJIFILM cameras and/or lenses: Take two photos, one RAW and one JPEG, import both to Photos, and compare the value in the Lens field. They will hopefully be identical, but either way, please let me know via the comments here or on my Twitter feed.

6 thoughts on “An oddity with Photos and camera lens information”

  1. Taking a raw+jpeg on each of my two canon lenses, Photos shows either the 'Lens ID' or 'Lens Type' field (which are identical) listed by exiftool, not the 'Lens Model', or the 'Lens Info' (which doesn't show the correct f/# value):

    % exiftool IMG_260{8,9}.* |grep Lens | sort | uniq -c
    2 Lens : 24.0 - 70.0 mm
    2 Lens : 24.0 - 70.0 mm (35 mm equivalent: 37.3 - 108.8 mm)
    2 Lens : 70.0 - 300.0 mm
    2 Lens : 70.0 - 300.0 mm (35 mm equivalent: 108.8 - 466.3 mm)
    2 Lens ID : Canon EF 24-70mm f/4L IS USM
    2 Lens ID : Canon EF 70-300mm f/4.5-5.6 DO IS USM
    2 Lens Info : 24-70mm f/0
    2 Lens Info : 70-300mm f/0
    2 Lens Model : EF24-70mm f/4L IS USM
    2 Lens Model : EF70-300mm f/4.5-5.6 DO IS USM
    2 Lens Serial Number : [REDACTED]
    2 Lens Serial Number : [REDACTED]
    2 Lens Type : Canon EF 24-70mm f/4L IS USM
    2 Lens Type : Canon EF 70-300mm f/4.5-5.6 DO IS USM

    The different field names demonstrates that vendors can choose which fields to attach to their pictures, and what information to include in those fields.

    Because RAW libraries are, by necessity, vendor-specific (since the raw file formats themselves are camera-specific) where the JPEG library is not, I'd guess that the JPEG library heuristically chooses a field to represent the lens that happens to be correct for most manufacturers - but not Fuji; while the raw library is not forced to make any such guesses, and can always be directed to select the most appropriate field in each camera's raw processing format based on the fields that camera includes.

    1. Thanks for looking at your Canon lenses, and your theory about RAW vs JPEG makes sense. It will be interesting to see how (or even if) Apple responds to the bug report—I wonder if they'll tell me that this is a FUJIFILM firmware issue, and I need to take it up with them.


      1. I use many manual lenses with my camera and I ran into this same issue. I spent way too many hours on this problem. There are a couple remedies, but alas, no true fix. I hope Apple does something with this already. Maybe email [email protected] to get something done about it.

        The two remedies:

        1. The Hack - Use exiftool to zero out the 'Min Focal Length' field. exiftool '-MinFocalLength=0' file.jpg. Upon importing the file in Photos, the Lens field will show the correct bit of data, which is the "ExifIFD:LensModel" tag in exiftool. Run this tiny bit of pre-processing prior to import and, voila, you have perfect metadata in Photos. The one drawback is that you're intentionally setting MinFocalLength to '0' which may bother the metadata purists and/or the zoom-lens users, only for whom that field is valuable.

        2. The Keyword - Use exiftool to copy over the LensModel field as a Keyword. Through this solution, you can filter with ease but will not be able to have the satisfaction of seeing the precise lens model in the photo information. You will only see it as a keyword. exiftool '-Keywords<LensModel' filename.jpg is all.

        I was tempted w/ solution #1 one, but I decided to stick to #2 to minimize metadata intrusion. I hope that Apple will one day fix this problem.

  2. If only Photos Smart Albums had the same functionality as Music Smart Playlists, where you can hold Option when you click on the “+” for the next condition in the list, which opens up a new Any/All sub list, you could have a combination of

    Camera is X-E3 AND Lens is (Lens 1 OR Lens 2)

    Still a fudge, but it would work. You’d think both apps would support the same logical condition structures.

  3. Using totally different software from the one you mentioned, yields the same thing for my Canon cameras RAW and JPEG files, where the lens used is shown for the latter but not for the earlier, be it XnView, ACB, ACDSee, etc.

Comments are closed.