Copy link to clipboard
Copied
Does anyone have a script that can be used in cs5 to copy the keywords to the description field?
Thanks
Mark
@Lumigraphics is correct, there is no way in Bridge (in the app or via scripting) to change file Date Created.
ExifTool is your best bet to do the batch edit you want.
ExifTool is an amazing tool but it is command line, which can be cumbersome if you're not used to it.
For what you want to do, I think this would be the command:
exiftool "-filecreatedate<datetimeoriginal" "DIR"
...where DIR is the name of a directory/folder containing the images.
I tested this and it works for me, meaning
...Copy link to clipboard
Copied
Is File Properties > Date Created read-only for Adobe Bridge?
Copy link to clipboard
Copied
Yes.
Copy link to clipboard
Copied
@Lumigraphics is correct, there is no way in Bridge (in the app or via scripting) to change file Date Created.
ExifTool is your best bet to do the batch edit you want.
ExifTool is an amazing tool but it is command line, which can be cumbersome if you're not used to it.
For what you want to do, I think this would be the command:
exiftool "-filecreatedate<datetimeoriginal" "DIR"
...where DIR is the name of a directory/folder containing the images.
I tested this and it works for me, meaning when I read the file back through ExifTool the file date created is changed. Also, in Windows explorer the file date created is correct. Oddly, Bridge is still showing the original File Date Created value. I purged the folder cache, but that didn't help. Anyway, I think ExifTool is changing the file date, but Bridge has some issue showing it, so that's another puzzle to solve.
Copy link to clipboard
Copied
I tested this command using these files:
https://drive.google.com/drive/folders/1j7Gdi7xJeRmSKWH7EEJk-46NgBugWIIb?usp=sharing
in "DIR" = "test". No go. Command used:
C:/exiftool.exe "-filecreatedate<datetimeoriginal" "D:\rlmcc\Pictures\McCord Images\test"
Question: What's the real image filename to be used above (e.g., for "filecreatedate") we see in Bridge under File Properties > Date Created ? Maybe I'm using the wrong argument???
Copy link to clipboard
Copied
Not " filename ", but fieldname in the image
Copy link to clipboard
Copied
Correct, "filecreatedate" would be displayed in Bridge under File Properties > Date Created
When you ran the command, what was the result message in the terminal window? Any errors?
If there were no errors, can you check the file Date Created in Finder/Explorer? I found that Bridge was stuck displaying the original Date Created until I purged the cache and reset the preferences (a hard reset). I'm not sure that's really necessary. I'm still investigating.
Copy link to clipboard
Copied
You can also look in File Info->Raw data to see what the tags are, but created and modified dates are system data stored outside XMP so I'm not sure how that gets synched.
Copy link to clipboard
Copied
Thanks for your help!
1. Results in Terminal window:
" C:\Users\rlmcc>C:/exiftool.exe "-datecreated<datetimeoriginal" "D:\rlmcc\Pictures\McCord Images\test"
1 directories scanned
6 image files updated " Thar's it, no errors.
2. Output back to "test" folder, see link:
https://drive.google.com/drive/folders/1dDWrsrlz9Yzp5BNxaavmsTwfU8x42eET?usp=sharing
Note that actual value of datetimeoriginal that should be the Date Taken now is found in each image's filename YYYYMMDD-RLM-nnnn.jpg. This value YYYYMMDD should now be filecreatedate per image.
3. My File Explorer displays non-changed dates.
4. Think target filename/image that Capture ONE called "Date" (taken) some other field. Do you see output changed correctly looking at my output?
Thanks, Bob
Copy link to clipboard
Copied
I did it again: "filename/image" in item 4 above should be "fieldname/image." Sorry!
Copy link to clipboard
Copied
Google says I need permission to your drive. Check for an email.
Copy link to clipboard
Copied
Sorry, I think I was not being accurate. "filecreatedate" would be displayed in Bridge under File Properties > Date File Created
Here are the exiftool definitions:
FileCreateDate (the filesystem creation date/time)
FileModifyDate (the filesystem modification date/time)
DateTimeOriginal (date/time when original image was taken)
OffsetTimeOriginal (time zone for DateTimeOriginal)
CreateDate (called DateTimeDigitized by the EXIF spec.)
OffsetTimeDigitized (time zone for CreateDate)
ModifyDate (called DateTime by the EXIF spec.)
OffsetTime (time zone for ModifyDate)
Copy link to clipboard
Copied
Which one is the File Properties > "Date Created"? That's the one we want to be equal to "datetimeoriginal". File Properties > "Date File Created" NOT critical here. Thank you!
Copy link to clipboard
Copied
From testing, I think File Properties > "Date Created" is exif DateTimeOriginal
I'm not positive because the File Properties panel is not documented, unlike the XMP metadata fields which have a well defined mapping.
Copy link to clipboard
Copied
Somethng I just remembered is that when you edit -datecreated, exiftool automatically creates a backup copy of the file ending in "_original" Did you get this? If so, you have to add -overwrite_original_in_place to the command
Copy link to clipboard
Copied
I created a simple script to read dates, which might help in tracking down which date property contains the value you want to use.
The top part displays the raw data and the bottom part breaks it apart for improved(?) readability.
If you install it, look for the menu "Metadata Deluxe" (it's a joke) and select "Read Dates"
#target bridge
if(BridgeTalk.appName == "bridge"){
var menuLabel = "Metadata Deluxe"; // human friendly. can use spaces
var menuName = "Metadata_Deluxe"; // computer friendly. don't use spaces, use camelCase or _ or -
var reDtsLabel = "Read Dates"
var reDtsVersion = "2022-12-06"
//Create a menu option within Adobe Bridge
var findProjectMenu = MenuElement.find (menuName);
if (findProjectMenu == null){
var projectMenu = new MenuElement ('menu', menuLabel, 'before Help', menuName);
}
var reDtsMenu = new MenuElement ('command', reDtsLabel, 'at the end of '+menuName);
reDtsMenu.onSelect = function(){
reDts();
}
function reDts(){
try{
// Load the XMP Script library
if ( ExternalObject.AdobeXMPScript == undefined ) {
ExternalObject.AdobeXMPScript = new ExternalObject( "lib:AdobeXMPScript" );
}
// window
// DIALOG
// ======
var dialog = new Window("dialog");
dialog.text = reDtsLabel;
// dialog.preferredSize.width = 300;
dialog.orientation = "column";
// dialog.alignChildren = ["left","top"];
dialog.spacing = 10;
dialog.margins = 16;
/* not used
var button1 = dialog.add("button", undefined, undefined);
button1.text = "Read Dates";
button1.preferredSize.width = 150;
button1.preferredSize.height = 32;
button1.alignment = ["center","top"];
button1.onClick = reDts;
*/
var edittext1 = dialog.add('edittext {properties: {multiline: true}}');
edittext1.preferredSize.width = 400;
edittext1.preferredSize.height = 200;
edittext1.alignment = ["center","top"];
var detailsGrp = dialog.add("group", undefined, {name: "detailsGrp"});
detailsGrp.orientation = "row";
detailsGrp.alignment = ["left","top"];
detailsGrp.alignChildren = ["left","center"];
detailsGrp.spacing = 10;
detailsGrp.margins = 0;
var details1 = detailsGrp.add("statictext", undefined, undefined);
details1.preferredSize.width = 170;
var details2 = detailsGrp.add("statictext", undefined, undefined);
details2.text = "Date";
details2.preferredSize.width = 80;
var details3 = detailsGrp.add("statictext", undefined, undefined);
details3.text = "Time";
details3.preferredSize.width = 80;
var details4 = detailsGrp.add("statictext", undefined, undefined);
details4.text = "Time Zone Offset";
details4.preferredSize.width = 110;
var detailsLbl1 = dialog.add("statictext", undefined, undefined);
detailsLbl1.text = "File";
detailsLbl1.alignment = ["left","top"];
var fileDateCreatedGrp = dialog.add("group", undefined);
fileDateCreatedGrp.orientation = "row";
fileDateCreatedGrp.alignment = ["left","top"];
fileDateCreatedGrp.alignChildren = ["left","center"];
fileDateCreatedGrp.spacing = 10;
fileDateCreatedGrp.margins = 0;
var fileDateCreated1 = fileDateCreatedGrp.add("statictext", undefined, undefined);
fileDateCreated1.text = "File created date:";
fileDateCreated1.preferredSize.width = 170;
var fileDateCreated2 = fileDateCreatedGrp.add("statictext", undefined, undefined);
fileDateCreated2.preferredSize.width = 80;
var fileDateCreated3 = fileDateCreatedGrp.add("statictext", undefined, undefined);
fileDateCreated3.preferredSize.width = 80;
var fileDateCreated4 = fileDateCreatedGrp.add("statictext", undefined, undefined);
fileDateCreated4.preferredSize.width = 110;
var fileDateModifiedGrp = dialog.add("group", undefined);
fileDateModifiedGrp.orientation = "row";
fileDateModifiedGrp.alignment = ["left","top"];
fileDateModifiedGrp.alignChildren = ["left","center"];
fileDateModifiedGrp.spacing = 10;
fileDateModifiedGrp.margins = 0;
var fileDateModified1 = fileDateModifiedGrp.add("statictext", undefined, undefined);
fileDateModified1.text = "File created modified:";
fileDateModified1.preferredSize.width = 170;
var fileDateModified2 = fileDateModifiedGrp.add("statictext", undefined, undefined);
fileDateModified2.preferredSize.width = 80;
var fileDateModified3 = fileDateModifiedGrp.add("statictext", undefined, undefined);
fileDateModified3.preferredSize.width = 80;
var fileDateModified4 = fileDateModifiedGrp.add("statictext", undefined, undefined);
fileDateModified4.preferredSize.width = 110;
var xmpExifDateTimeOriginalGrp = dialog.add("group", undefined);
xmpExifDateTimeOriginalGrp.orientation = "row";
xmpExifDateTimeOriginalGrp.alignment = ["left","top"];
xmpExifDateTimeOriginalGrp.alignChildren = ["left","center"];
xmpExifDateTimeOriginalGrp.spacing = 10;
xmpExifDateTimeOriginalGrp.margins = 0;
var xmpExifDateTimeOriginal1 = xmpExifDateTimeOriginalGrp.add("statictext", undefined, undefined);
xmpExifDateTimeOriginal1.text = "XMP exif: Date Time Original:";
xmpExifDateTimeOriginal1.preferredSize.width = 170;
var xmpExifDateTimeOriginal2 = xmpExifDateTimeOriginalGrp.add("statictext", undefined, undefined);
xmpExifDateTimeOriginal2.preferredSize.width = 80;
var xmpExifDateTimeOriginal3 = xmpExifDateTimeOriginalGrp.add("statictext", undefined, undefined);
xmpExifDateTimeOriginal3.preferredSize.width = 80;
var xmpExifDateTimeOriginal4 = xmpExifDateTimeOriginalGrp.add("statictext", undefined, undefined);
xmpExifDateTimeOriginal4.preferredSize.width = 110;
var xmpPsDateCreatedGrp = dialog.add("group", undefined);
xmpPsDateCreatedGrp.orientation = "row";
xmpPsDateCreatedGrp.alignment = ["left","top"];
xmpPsDateCreatedGrp.alignChildren = ["left","center"];
xmpPsDateCreatedGrp.spacing = 10;
xmpPsDateCreatedGrp.margins = 0;
var xmpPsDateCreated1 = xmpPsDateCreatedGrp.add("statictext", undefined, undefined);
xmpPsDateCreated1.text = "XMP photoshop: Date Created:";
xmpPsDateCreated1.preferredSize.width = 170;
var xmpPsDateCreated2 = xmpPsDateCreatedGrp.add("statictext", undefined, undefined);
xmpPsDateCreated2.preferredSize.width = 80;
var xmpPsDateCreated3 = xmpPsDateCreatedGrp.add("statictext", undefined, undefined);
xmpPsDateCreated3.preferredSize.width = 80;
var xmpPsDateCreated4 = xmpPsDateCreatedGrp.add("statictext", undefined, undefined);
xmpPsDateCreated4.preferredSize.width = 110;
var xmpXmpCreateDateGrp = dialog.add("group", undefined);
xmpXmpCreateDateGrp.orientation = "row";
xmpXmpCreateDateGrp.alignment = ["left","top"];
xmpXmpCreateDateGrp.alignChildren = ["left","center"];
xmpXmpCreateDateGrp.spacing = 10;
xmpXmpCreateDateGrp.margins = 0;
var xmpXmpCreateDate1 = xmpXmpCreateDateGrp.add("statictext", undefined, undefined);
xmpXmpCreateDate1.text = "XMP xmp: Create Date:";
xmpXmpCreateDate1.preferredSize.width = 170;
var xmpXmpCreateDate2 = xmpXmpCreateDateGrp.add("statictext", undefined, undefined);
xmpXmpCreateDate2.preferredSize.width = 80;
var xmpXmpCreateDate3 = xmpXmpCreateDateGrp.add("statictext", undefined, undefined);
xmpXmpCreateDate3.preferredSize.width = 80;
var xmpXmpCreateDate4 = xmpXmpCreateDateGrp.add("statictext", undefined, undefined);
xmpXmpCreateDate4.preferredSize.width = 110;
var xmpXmpModifyDateGrp = dialog.add("group", undefined);
xmpXmpModifyDateGrp.orientation = "row";
xmpXmpModifyDateGrp.alignment = ["left","top"];
xmpXmpModifyDateGrp.alignChildren = ["left","center"];
xmpXmpModifyDateGrp.spacing = 10;
xmpXmpModifyDateGrp.margins = 0;
var xmpXmpModifyDate1 = xmpXmpModifyDateGrp.add("statictext", undefined, undefined);
xmpXmpModifyDate1.text = "XMP xmp: Modify Date:";
xmpXmpModifyDate1.preferredSize.width = 170;
var xmpXmpModifyDate2 = xmpXmpModifyDateGrp.add("statictext", undefined, undefined);
xmpXmpModifyDate2.preferredSize.width = 80;
var xmpXmpModifyDate3 = xmpXmpModifyDateGrp.add("statictext", undefined, undefined);
xmpXmpModifyDate3.preferredSize.width = 80;
var xmpXmpModifyDate4 = xmpXmpModifyDateGrp.add("statictext", undefined, undefined);
xmpXmpModifyDate4.preferredSize.width = 110;
var xmpXmpMetadataDateGrp = dialog.add("group", undefined);
xmpXmpMetadataDateGrp.orientation = "row";
xmpXmpMetadataDateGrp.alignment = ["left","top"];
xmpXmpMetadataDateGrp.alignChildren = ["left","center"];
xmpXmpMetadataDateGrp.spacing = 10;
xmpXmpMetadataDateGrp.margins = 0;
var xmpXmpMetadataDate1 = xmpXmpMetadataDateGrp.add("statictext", undefined, undefined);
xmpXmpMetadataDate1.text = "XMP xmp: Metadata Date:";
xmpXmpMetadataDate1.preferredSize.width = 170;
var xmpXmpMetadataDate2 = xmpXmpMetadataDateGrp.add("statictext", undefined, undefined);
xmpXmpMetadataDate2.preferredSize.width = 80;
var xmpXmpMetadataDate3 = xmpXmpMetadataDateGrp.add("statictext", undefined, undefined);
xmpXmpMetadataDate3.preferredSize.width = 80;
var xmpXmpMetadataDate4 = xmpXmpMetadataDateGrp.add("statictext", undefined, undefined);
xmpXmpMetadataDate4.preferredSize.width = 110;
var button2 = dialog.add("button", undefined, undefined);
button2.text = "Cancel";
button2.alignment = ["right","top"];
reDts();
dialog.show();
// functions
function reDts(){
if(app.document.selections.length > 1){
alert("Multiple files selected\nOnly the first one will be read");
}
if(app.document.selections.length == 1){
var selectedFile = app.document.selections[0]
if(selectedFile.spec instanceof File){ // if selectedFiles is a file, we don't want to list folders
// File spec dates
// File created
var fileDateCreated = new Date(); // get file date created and format to ISO
fileDateCreated = selectedFile.spec.created;
var fileDateCreatedYYYY = fileDateCreated.getFullYear();
var fileDateCreatedMM = fileDateCreated.getMonth()+1; // add +1 becasue getMonth() returns the month (from 0 to 11) of a date, 0=January
if(fileDateCreatedMM < 10){fileDateCreatedMM = "0"+fileDateCreatedMM}
var fileDateCreatedDD = fileDateCreated.getDate();
if(fileDateCreatedDD < 10){fileDateCreatedDD = "0"+fileDateCreatedDD}
var fileDateHours = fileDateCreated.getHours();
var fileDateMinutes = fileDateCreated.getMinutes();
var fileDateSeconds = fileDateCreated.getSeconds();
var fileDateTimezoneOffset = fileDateCreated.getTimezoneOffset();
var fileDateCreatedTT = fileDateCreated.toTimeString(); // fileDateCreated.getHours()+":"+fileDateCreated.getMinutes()+":"+fileDateCreated.getSeconds();
fileDateCreatedTT = fileDateCreatedTT.split(" GMT").join("");
var fileDateCreatedDisplay = fileDateCreatedYYYY+"-"+fileDateCreatedMM+"-"+fileDateCreatedDD+"T"+fileDateCreatedTT;
// convert getTimezoneOffset (total minutes) to hours:minutes format
function formatOffsetToHhMm (offsetInMins) {
var negative=offsetInMins<0?"-":"";
var positiveMins= Math.abs(offsetInMins);
var hours = Math.floor(positiveMins/ 60);
var mins = Math.floor((positiveMins- ((hours * 3600)) / 60));
if (hours < 10) {hours = "0"+hours;}
if (mins < 10) {mins = "0"+mins;}
return negative+hours+':'+mins;
}
// $.writeln(formatOffsetToHhMm(fileDateTimezoneOffset))
// 2022-11-29T20:11:46-0800
/*
fileDateCreated2.text = fileDateCreatedYYYY+"-"+fileDateCreatedMM+"-"+fileDateCreatedDD
fileDateCreated3.text = fileDateCreated.getHours()+":"+fileDateCreated.getMinutes()+":"+fileDateCreated.getSeconds()
fileDateCreated4.text = formatOffsetToHhMm(fileDateTimezoneOffset)
*/
// File modified date
var fileDateModified = new Date(); // get file date created and format to ISO
fileDateModified = selectedFile.spec.modified;
var fileDateModifiedYYYY = fileDateModified.getFullYear();
var fileDateModifiedMM = fileDateModified.getMonth();
if(fileDateModifiedMM < 10){fileDateModifiedMM = "0"+fileDateModifiedMM}
var fileDateModifiedDD = fileDateModified.getDay();
if(fileDateModifiedDD < 10){fileDateModifiedDD = "0"+fileDateModifiedDD}
var fileDateModifiedTT = fileDateModified.toTimeString(); // fileDateModified.getHours()+":"+fileDateModified.getMinutes()+":"+fileDateModified.getSeconds();
fileDateModifiedTT = fileDateModifiedTT.split(" GMT").join("");
var fileDateModifiedDisplay = fileDateModifiedYYYY+"-"+fileDateModifiedMM+"-"+fileDateModifiedDD+"T"+fileDateModifiedTT;
// XMP dates
var md = selectedFile.synchronousMetadata; // read embedded metadata
var xmp = new XMPMeta(md.serialize()); // read embedded XMP
var xmpExifDateTimeOriginal = xmp.getProperty(XMPConst.NS_EXIF, "DateTimeOriginal"); // Exif Date Time Original
// bad prop name var xmpExifDateTimeDigitized = xmp.getProperty(XMPConst.NS_EXIF, "DateTimeDigitized "); // Exif Date Time Original Offset
var xmpPsDateCreated = xmp.getProperty(XMPConst.NS_PHOTOSHOP, "DateCreated"); // IPTC (Photoshop) Date Created
var xmpCreateDate = xmp.getProperty(XMPConst.NS_XMP, "CreateDate") // xmp:CreateDate
var xmpModifyDate = xmp.getProperty(XMPConst.NS_XMP, "ModifyDate")// xmp:ModifyDate
var xmpMetadataDate = xmp.getProperty(XMPConst.NS_XMP, "MetadataDate", XMPConst.XMPDATE)// xmp:MetadataDate
var arr1 = [];
// separate date/time
function sepDateTime(fullDateTime){
arr1 = [];
var spiltDate = [];
var dateOnly = "";
var splitTime = [];
var timeOnly = "";
var timeOffsetOnly = "";
if(fullDateTime.toString().indexOf("T") !== -1){ // TODO undefined on dateTimeOriginal
spiltDate = fullDateTime.toString().split("T");
dateOnly = spiltDate[0];
if(spiltDate[1].toString().indexOf("Z") !== -1){ // if there is a "Z" time zone designator
splitTime = spiltDate[1].split("Z");
timeOnly = splitTime[0];
timeOffsetOnly = "Z"+splitTime[1];
}
if(spiltDate[1].toString().indexOf("-") !== -1){ // if there is a "-" time zone designator
splitTime = spiltDate[1].split("-");
timeOnly = splitTime[0];
timeOffsetOnly = "-"+splitTime[1];
}
if(spiltDate[1].toString().indexOf("+") !== -1){ // if there is a "+" time zone designator
splitTime = spiltDate[1].split("+");
timeOnly = splitTime[0];
timeOffsetOnly = "+"+splitTime[1];
}
var tzd = /Z|-|\+/i // regex search for "Z" or "-" or "+"
if(tzd.test(spiltDate[1]) == false){
timeOnly = spiltDate[1];
}
}
else{
dateOnly = fullDateTime;
}
arr1.push(dateOnly,timeOnly,timeOffsetOnly);
} // CLOSE function sepDateTime
// sepDateTime(xmpExifDateTimeOriginal)
function readFileDateCreated(){
sepDateTime(fileDateCreatedDisplay)
fileDateCreated2.text = arr1[0];
fileDateCreated3.text = arr1[1];
fileDateCreated4.text = arr1[2];
}
readFileDateCreated()
function readFileDateModified(){
sepDateTime(fileDateModifiedDisplay)
fileDateModified2.text = arr1[0];
fileDateModified3.text = arr1[1];
fileDateModified4.text = arr1[2];
}
readFileDateModified();
function readXmpExifDateTimeOriginal(){
sepDateTime(xmpExifDateTimeOriginal)
xmpExifDateTimeOriginal2.text = arr1[0];
xmpExifDateTimeOriginal3.text = arr1[1];
xmpExifDateTimeOriginal4.text = arr1[2];
}
if(xmpExifDateTimeOriginal){
readXmpExifDateTimeOriginal();
}
function readXmpPsDateCreated(){
sepDateTime(xmpPsDateCreated)
xmpPsDateCreated2.text = arr1[0];
xmpPsDateCreated3.text = arr1[1];
xmpPsDateCreated4.text = arr1[2];
}
if(xmpPsDateCreated){
readXmpPsDateCreated();
}
function readXmpCreateDate(){
sepDateTime(xmpCreateDate)
xmpXmpCreateDate2.text = arr1[0];
xmpXmpCreateDate3.text = arr1[1];
xmpXmpCreateDate4.text = arr1[2];
}
if(xmpCreateDate){
readXmpCreateDate();
}
function readXmpModifyDate(){
sepDateTime(xmpModifyDate)
xmpXmpModifyDate2.text = arr1[0];
xmpXmpModifyDate3.text = arr1[1];
xmpXmpModifyDate4.text = arr1[2];
}
if(xmpModifyDate){
readXmpModifyDate();
}
function readXmpMetadataDate(){
sepDateTime(xmpMetadataDate)
xmpXmpMetadataDate2.text = arr1[0];
xmpXmpMetadataDate3.text = arr1[1];
xmpXmpMetadataDate4.text = arr1[2];
}
if(xmpMetadataDate){
readXmpMetadataDate();
}
}
edittext1.text =
"File created date: "+fileDateCreatedDisplay+"\n"+
"File modified date: "+fileDateModifiedDisplay+"\n"+
"XMP exif: Date Time Original: "+xmpExifDateTimeOriginal+"\n"+
"XMP photoshop: Date Created: "+xmpPsDateCreated+"\n"+
"XMP xmp: Create Date: "+xmpCreateDate+"\n"+
"XMP xmp: Modify Date: "+xmpModifyDate+"\n"+
"XMP xmp: Metadata Date: "+xmpMetadataDate
} // CLOSE if(app.document.selections.length == 1)
else{edittext1.text = "NO FILE SELECTED"}
} // CLOSE reDts(){
} // CLOSE try
catch(e){
alert(e + " " + e.line);
}
}
} //CLOSE if(BridgeTalk.appName == "bridge"){
Copy link to clipboard
Copied
Wow, Greg! That's a lot of code.
But it identified that
XMP exif: Date Time Original: 1899-12-31T00:00:00 which I originally changed properly for Fotoxx (manually/each image) is the problem. It got corrupted. Could corruption possibly be some instruction in Script #1? It doesn't rerpresent the proper Date Taken iused for image filename: YYYYMMDD-RLM-nnnn.jpg.
Thus, solution is for selected image(s):
1. Read YYYYMMDD first part of each filename YYYYMMDD-RLM-nnnn.jpg.
2. Alternate safeguard turn on/off: Do only if:
Camera Make (scanner) = "IMAGE" and
Camera Model (scanner) = "M125"
3. Since Bridge will allow me to manually change it one-by-one, write out XMP exif: Date Time Original in proper format = input's YYYYMMDD per file. ( "T00:00:00" ok)
If this possible, Script #2 would save me many man-months fixing one-by-one 1,000+ now scanned images. There seems no problem with those taken with real camera...another 2,000+... unless camera clock dead. I used a Bridge workflow to originally create these filenames..... but somehow input Date Time Original got corrupted.
Thanks for your MANY hours coming up with menu "Metadata Deluxe". Very Deluxe! It worked!
Bob
Copy link to clipboard
Copied
Greg, after carefully looking at scanned images, ONLY 138 of 1000+ got corrupted, many groups with same XMP exif: Date Time Original. I believe I can relatively easily fix these "few' images without more programming by you. So disregard my request for Script #2 above. Thanks for all your help. Stand by. Bob
Copy link to clipboard
Copied
Bob, very glad to hear it's only 138 files to be fixed. (still a lot of work to fix). I don't think script #1 would have changed XMP exif: Date Time Original. That script reads that property but it doesn't have any commands to edit it. Maybe the final step of serializing and savig the XMP packet could have changed Date Time Original (Date Modified is definatley changed), but I doubt it. If you see this happen again let me know. We definatley want to track that down for everyone's benefit.
Copy link to clipboard
Copied
Woo Hoo! Greg, the cleanup is done. "Date" (taken) in Capture ONE now sorts proper. Thanks for Metadata Deluxe which help narrow the field(s) to be updated. Bob
Copy link to clipboard
Copied
You're very welcome. There are many questions about dates on the forum, so I'm hoping this script will be useful to a lot of people.
Find more inspiration, events, and resources on the new Adobe Community
Explore Now