Possible to copy iphone images with correct creation date, or rename to correct creation date?

Hello,
Goal: Copy over iphone images to a PC, then use the rename tool to move images into corresponding folders named after the date of creation.

Problem: Whilst still on the phone, Iphone images have a correct creation date (and, annoyingly, a different modified date, whilst still on the phone):

eg https://i.imgur.com/7TKAr95.png

After copying the images to the PC, the creation date changes to today's date, and the modified date stays the same (though it's not the correct creation date).

A similar problem exists with iphone video files, however, luckily, the problem is solved by using the {releasedate} field in the rename tool as it picks up a metadata field that stores the correct creation date.

It appears there is no secondary metadata field for the creation date for images - just the original "created" date that is changed on copying.

Could there be a solution?

Thank you.

There’s usually a datetaken or datedigitized field on images from cameras and phones.

Are you copying from the iPhone in JPG or HEIC format?

Thank you.
In the screenshot you can see that the only fields in the PNGs and HEICs (not sure what the PNGs are of - perhaps something to do with video files?) and that there are no datetaken or datedigitized fields (I also tested for these fields in the rename tool).

(BTW This is an Iphone 13 max pro.)

I just used a more detailed metadata tool on a HEIC file and it has found the correct creation date under the fields:

CreateDate 2023:10:13 15:21:33

DateTimeOriginal 2023:10:13 15:21:33

ModifyDate 2023:10:13 15:21:33

SubSecCreateDate 2023:10:13 15:21:33.429+01:00

SubSecDateTimeOriginal 2023:10:13 15:21:33.429+01:00

SubSecModifyDate 2023:10:13 15:21:33+01:00

I tried each of the fields above in the rename tool enclosed in {} and they weren't recognized.

There were also a LOT of other metadata fields that dopus doesn't seem to recognise.

So, it seems that the correct creation date is recorded, however it seems to be in fields that dopus can't access, or it is reading different CreateDate and ModifyDate fields that windows has changed after copying?

You can use an add-in (ExifTool Custom Columns) if you want almost all metadata or a script column that reads the shell property System.Photo.DateTaken. Or Opus v13 - it provides a dialog for this :slight_smile:

Here's the column:

function OnInit(initData) {
    initData.name = 'SystemPhotoDateTaken';
    initData.version = '2023-10-25';
    initData.url = 'https://resource.dopus.com/t/possible-to-copy-iphone-images-with-correct-creation-date-or-rename-to-correct-creation-date/46634';
    initData.desc = 'Retrieves System.Photo.DateTaken from the Shell';
    initData.default_enable = true;
    initData.min_version = '12.0';
}

function OnAddColumns(addColData) {
    var col = addColData.AddColumn();
    col.name = 'SystemPhotoDateTaken';
    col.justify = 'left';
    col.type = 'datetime';
    col.autogroup = true;
    col.method = 'OnColumn';
}

function OnColumn(scriptColData) {
    var dateTaken = scriptColData.item.ShellProp('System.Photo.DateTaken');
    scriptColData.value = DOpus.TypeOf(dateTaken) == 'object.Date' ? dateTaken.FromUTC() : '';
}

:one: Save ColumnSystemPhotoDateTaken.js.txt to   ↓

%appdata%\GPSoftware\Directory Opus\Script AddIns

:two: Toggle the column with

Set COLUMNSTOGGLE="scp:SystemPhotoDateTaken/SystemPhotoDateTaken(!,a,0)"

You'll find the column in the Advanced Renamer as well.


How to use buttons and scripts from this forum

Oh, wow, thank you.

Never used this in dopus, so will climb up the learning curve and give it a go!

(Perhaps future versions could have more extensive EXIF data capabilities inbuilt.)

Thanks a lot!

They will :slight_smile:

Didn't know there was a beta 13. Trying it now.

How would I do this in 13 using the dialog you mentioned?

Thank you

EDIT: I started researching the solution above, then found that in dopus 13b for images the field {datetaken} works as creation date.

EDIT2: this works for only some of the HEICs and all DNGs, not JPGs. Apple, what a mess :confused:

Following your instructions the column appears in the lister with the correct date - great!

Though, I can't figure out how to do the same in the rename dialog, though more importantly, how would you rename a batch of video files with that field, which isn't recognized at the moment? Would the exiftool custom columns add-in give the rename tool the ability to recognize the other metadata?

Thanks.

You should find the column here:

rename a batch of video files with that field

That's a different field, probably System.Media.DateEncoded.

Would the exiftool custom columns add-in give the rename tool the ability to recognize the other metadata?

Yes.

Thank you, that works well!

Do you know if there is a field that gives the date only (rather than the date + time), so one could use the rename tool to move images/video files to folders named after the date the media was created?

Or, is it possible to take the field SystemPhotoDateTaken and remove the time, then use the date to create the folder?

Yes, can be formatted like any other date/time field, e.g.

{scp:SystemPhotoDateTaken/SystemPhotoDateTaken|A#yyyy-MM-dd}\*

Codes for date and time [Directory Opus Manual]

Wow, I really appreciate your time in explaining this.

I normally use dopus for relatively basic renames/other tasks, and don't venture close to the full potential of this program (which seems to have the power of a programming language rather than a mere file manager), partly due to the (seemingly) steep learning curve (though I did program in C++in the past).

Date Taken is not a metadata field. It is a Windows file property that looks at dates in 5 different metadata fields.

Use Date Taken in Directory Opus. I am an expert in photo date metadata.
The Date Created that changed when you got the photos off your phone is the date the FILE was created on your PC.

IF the photos have good/intact date metadata, look at the Date Taken in Directory Opus. Date Taken looks at several different date metadata fields.

IF you transferred the photo using a method that stripped the metadata, you will likely see no Date Taken.
Date Taken can be used in the rename dialog.

Video files use different date metadata fields - different ones for different file types, so it's complicated.

1 Like

May I assume that scp means script here? Did not use such a construct so far.

Why is SystemPhotoDateTaken doubled and what's the purpose of the devider / between?

And last question: What does * mean at the end of this line?

You sure? :wink:

What does * mean at the end of this line?

The old name.

1 Like

Huh? Really? Did not ever though about this.

But you must admit it's been over a year back, right :grin: and I'm getting old :crazy_face:
Danke Alex!

Rename starting with Date Taken without time:
image

I see your screenshot and I looked at those settings. None are Exif fields. Are you suggesting you think Exif fields will be added to that list?