9

When taking pictures using the front facing camera and a timer of an iPhone it automatically does burst mode.

When viewing the photos in the Photos app, it somehow knows to group the burst photos together.

If I connect the iPhone to a Windows machine, they are not grouped in any obvious way.

How does iOS know the photos are grouped? Is it metadata in the files?

0

3 Answers 3

9

All the photos that are taken in a burst sequence share a "BurstUUID" in their EXIF data. This is how applications know they are related.

For example I just took a burst of images, installed exiftool and ran exiftool -BurstUUID *.JPG against the directory with the burst images. This is the output.

======== IMG_0076.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0077.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0078.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0079.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0080.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0081.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0082.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0083.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0084.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0085.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
======== IMG_0086.JPG
Burst UUID                      : 65A7DF0A-1F09-4600-917B-9572A16AD016
   11 image files read

For another application on Windows (or any other platform) to recognise and show these images as a group it will need to be rewritten to recognise this new EXIF tag.

1
  • 2
    Cool. Thanks for that quick piece of dectective work. I wonder what tricks ios does under the hood to make grouping the pics based on this custom exif data performant for browsing
    – w--
    Commented Jan 7, 2016 at 22:44
3

Loved this post, I used it to make photos think my bursts weren't bursts. Useful when you've picked out all the photos you want and have to import them back in. This script (all it does is ensure all burst photos have a unique uuid) needs exiftools installed on a mac. You can probably run it on windows with a few changes....

#!/bin/bash

#move files in a the below directory
cd ~/Desktop/temp/

#changes the names of the files to a random uuid
for FILE in *.jpg
do
    if [ -f "$FILE" ];then
        ID=`uuidgen`
    mv -v "$FILE" "$ID"
    fi
done

#passes the file name into the burstuuid
for i in *; do exiftool -P -overwrite_original "-burstuuid=$i" "$i"; done

#adds back the extension name
for i in *; do mv "$i" "$i.jpg"; done

#renames the files
for i in *; do exiftool '-FileName<DateTimeOriginal' -d "%Y-%m-%d %H.%M.%S%%-c.%%e" "$i"; done
0

As a bizarre edge case, I will add an additional way that the macOS (not iOS but have not tested the iOS for this) can group burst photos.

It's widely reported that a shared BurstUUID in the EXIF header identifies members of an iPhone burst. Because of a bug in the way Photos (Monterey, Ventura) handles Bursts imported from Aperture, I used Exiftool to remove all MakerNotes containing a burst ID across an Aperture test library using:

exiftool -r -overwrite_original -P -progress -MakerNotes= -if '$BurstUUID ne "" ' /Users/jfaughnan/Documents/Upcoming\ Events/Aperture\ Migration\ Project/Burst\ Bug/TestSuite.aplibrary 

This reported 8 image files belonging to a single burst (4 masters, 4 previews) were updated. On inspection, the MakerNotes were removed.

Despite this when converted to Photos the Burst was recreated (alas, still with the bug). When I exported the original and preview the MakerNote(s) were indeed gone. So how the heck did Photos create the burst even in the absence of an EXIF MakerNotes.BurstUUID?

I don't know, but there's a clue that whatever it does is unique to the Aperture import process—and is probably a bug in the conversion process.

The clue is when I use PowerPhotos to convert the same Aperture Library no Bursts are created. I don't know the cause of the resurrected (pseudo) bursts, but I'm confident it isn't due to something in the images themselves. I think even though Aperture doesn't use the BurstUUID that is somewhere that's being cached, perhaps in an Aperture cache built from EXIF headers. I suspect Photos is using something like that. (However, rebuilding the Photos database does not remove the Bursts.)

I must leave this as a mystery. BurstUUID in the EXIF header does define a Burst. In the case of Aperture conversion by Photos however, Burst information can be passed by an alternate unknown route.

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .