If i use below command then i get Warning: No writable tags set
exiftool '-subsecdatetimeoriginal+<0:0:0${filesequence;$_*=0.500}' -overwrite_original ./images
and if i do:
exiftool '-datetimeoriginal+<<0:0:0${filesequence;$_*=0.500}' -overwrite_original ./images
This is changing the date and time part correctly but not updating the millisecond part for SubSecTimeOriginal
so if first image has SubSecTimeOriginal=100
then all images have same value when it should all be different.
The SubSecDateTimeOriginal
tag is not a tag that is actually embedded in the file, but is instead a Composite tag that exiftool creates on the fly while reading/writing. This tag is cannot be shifted and unfortunately, there isn't a warning about this unless you add the -v3
( -verbose3
) option , where it will say Composite:SubSecDateTimeOriginal is not shiftable
.
A workaround would be to use an XMP date/time stamp tag, as they can contain the full time value (subsecond and time zone), unlike EXIF time tags which are split into three separate tags. XMP:DateTimeOriginal
would be the most suitable tag.
If it's not already set, you would first copy the time from SubSecDateTimeOriginal
. Then you would run your command to increment the time stamp. Finally, you would copy the XMP:DateTimeOriginal
back into SubSecDateTimeOriginal
.
Example commands and output:
C:\>exiftool -G1 -a -s -EXIF:Time:All -XMP:Time:All -SubSecDateTimeOriginal Y:\!temp\ccc
======== Y:/!temp/ccc/File-1.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-2.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-3.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-4.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
1 directories scanned
4 image files read
C:\>exiftool -P -overwrite_original "-XMP:DateTimeOriginal<SubSecDateTimeOriginal" Y:\!temp\ccc
1 directories scanned
4 image files updated
C:\>exiftool -G1 -a -s -EXIF:Time:All -XMP:Time:All -SubSecDateTimeOriginal Y:\!temp\ccc
======== Y:/!temp/ccc/File-1.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-2.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-3.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-4.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
1 directories scanned
4 image files read
C:\>exiftool -P -overwrite_original "-XMP:DateTimeOriginal+<0:0:0${filesequence;$_*=0.500}" Y:\!temp\ccc
1 directories scanned
3 image files updated
1 image files unchanged
C:\>exiftool -G1 -a -s -EXIF:Time:All -XMP:Time:All -SubSecDateTimeOriginal Y:\!temp\ccc
======== Y:/!temp/ccc/File-1.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-2.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.50-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-3.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:01.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-4.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:01.50-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
1 directories scanned
4 image files read
C:\>exiftool -P -overwrite_original "-SubSecDateTimeOriginal<XMP:DateTimeOriginal" Y:\!temp\ccc
1 directories scanned
4 image files updated
C:\>exiftool -G1 -a -s -EXIF:Time:All -XMP:Time:All -SubSecDateTimeOriginal Y:\!temp\ccc
======== Y:/!temp/ccc/File-1.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.00-07:00
======== Y:/!temp/ccc/File-2.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:00
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 50
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:00.50-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:00.50-07:00
======== Y:/!temp/ccc/File-3.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:01
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 00
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:01.00-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:01.00-07:00
======== Y:/!temp/ccc/File-4.jpg
[ExifIFD] DateTimeOriginal : 2022:05:08 12:00:01
[ExifIFD] OffsetTimeOriginal : -07:00
[ExifIFD] SubSecTimeOriginal : 50
[XMP-exif] DateTimeOriginal : 2022:05:08 12:00:01.50-07:00
[Composite] SubSecDateTimeOriginal : 2022:05:08 12:00:01.50-07:00
1 directories scanned
4 image files read
The technical post webpages of this site follow the CC BY-SA 4.0 protocol. If you need to reprint, please indicate the site URL or the original address.Any question please contact:yoyou2525@163.com.