metadata differences between heic and jpeg images for iPhones

Started by pi2eye, July 23, 2018, 05:33:26 PM

Previous topic - Next topic

pi2eye

Hi,
I would like to know where I can find out what the tag field names mean and their values for image data from an iPhone, specifically an iPhone 7 Plus. I am looking in particular for the tag names "Content Identifier" and "Image Unique ID". Some of my photos have these and others don't.
I did a search on the forum and could find no discussion for this.
Thank you.

Phil Harvey

Generally, these are just a unique number to identify the image.  I don't think they have any specific meaning.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

ejm554

I interpret the Content Identifier tags as having some specific meaning. These appear to indicate that the files are part of an Apple Live Photo.

Simplistically speaking, a Live Photo is made up of one JPEG image file and one QuickTime video file (MOV). A common piece of metadata between them is (often? always?) their Content Identifier tag values.

$ exiftool -G -ContentIdentifier *IMG_3058*
======== 20180818T155750.IMG_3058.MOV
[QuickTime]     Content Identifier              : A253F606-D02F-452E-9506-DE9A6A2C279D
======== 20180818T155751.IMG_3058.JPG
[MakerNotes]    Content Identifier              : A253F606-D02F-452E-9506-DE9A6A2C279D
    2 image files read


For further evidence supporting this idea, see these links:
https://stackoverflow.com/a/47629868/3384936
http://www.photoinvestigator.co/blog/the-mystery-of-maker-apple-metadata/ (scroll to "update 2" at the end)

I'm not sure what the Image Unique ID tag is. I just encountered it myself today, and I'm going to investigate it. It showed up on a Live Photo JPEG, no less, which didn't have a Content Identifier. Its value was also in the form of a 128-bit UUID number.

If I come up with some insight, I'll post it here.

EDIT: FYI, below is sample ExifTool output of the Live Photo JPEG that I'm investigating.

[ExifTool]      ExifTool Version Number         : 11.07
[File]          File Name                       : 20170531T140011.IMG_7644.0.0.JPG
[File]          File Type                       : JPEG
[EXIF]          Make                            : Apple
[EXIF]          Camera Model Name               : iPhone SE
[MakerNotes]    Image Unique ID                 : E6C989A3-EDF8-470B-A5B7-97CE05EBA905


EDIT 2: The file above is not a Live Photo. Previous text suggesting so has been stricken.

Phil Harvey

Yes, these number are used to associate images with other data (or other images as you point out).  My point was that by themselves they don't necessarily represent any useful metadata, although this could be implementation specific.  For example, you can use ExifTool to generate an ImageUniqueID like this:

> exiftool "-imageuniqueid<newguid" a.jpg
    1 image files updated
> exiftool -imageuniqueid a.jpg
Image Unique ID                 : 20180820-0723-2400-0BFE-E34C4BF98CD8


The Tag Name documentation explains how ExifTool generates this ID:

NewGUID (generates a new, random GUID with format YYYYmmdd-HHMM-SSNN-PPPP-RRRRRRRRRRRR, where Y=year, m=month, d=day, H=hour, M=minute, S=second, N=file sequence number in hex, P=process ID in hex, and R=random hex number

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).