Remove exiftool traces from file - metadata

If I set some tag with exiftool e.g.
exiftool UserComment="test" video.mp4
I can then remove it with
exiftool UserComment= video.mp4
However, exiftool sets an additional tag ExifToolVersion which I cannot delete with
exiftool -ExifToolVersion= video.mp4
because
Warning: Sorry, ExifToolVersion is not writable
How can I remove all traces of exiftool from the file? I need to keep other meta data tags untouched.

ExifToolVersion is not stored in the file. This is only information returned by ExifTool. Use the -G1 option to see the group name for each tag. Tags with a group name of "ExifTool" are generated internally. Other "ExifTool" tags are Error and Warning. For a complete list, see the Extra Tags documentation

Related

Copy values from one XMP tag to another XMP tag

I have a lot of images (JPG) with some metadata.
I'm interested in these three tags, for example, from one of the images:
[XMP] FlightPitchDegree : 0.734793
[XMP] FlightRollDegree : -1.024403
[XMP] FlightYawDegree : 192.286436
I need to copy these values for each image to the next tags:
Xmp.Camera.Pitch
Xmp.Camera.Roll
Xmp.Camera.Yaw
Mostly for tag editing, I'm using ExifTool, but I can't find commands for copying values between tags inside one file.
I'll be very appreciative of any recommendation.
Best,
Andriy
To copy from one tag to another you would use the redirection feature of the -TagsFromFile option. Basically it would be
exiftool "-TARGETTAG<SOURCETAG" file.xmp
You have the names of the SourceTags (FlightPitchDegree/FlightRollDegree/FlightYawDegree), you just need to figure out the exiftool names of your target tags. I can find CameraPitch/CameraYaw/CameraRoll tags on the DJI Tags page, but those are not XMP tags. The only other place I can find tags with similar names are part of the XMP-Camera group, which are not built into exiftool and you would have to download the pix4d.config file and use the -Config option to include those definitions.
exiftool -config /path/to/pix4d.config "-XMP:Pitch< FlightPitchDegree" "-XMP:Yaw<FlightYawDegree" "-XMP:Roll< FlightRollDegree" file.xmp
The -config option must be the very first option in the command in order to load the definitions.

File Date to Exif Data

I have a bunch of old folders containing photos from 2000s.
For an unknown reason photos are empty of Exif data.
But I want, at least, to keep the dates of each photo. So that they are in order when I import them in iCloud Photos.
Is there a software, or in command line way, or a script in any programming language, able to take each date inside 'file properties' and insert it in the photos' Exif data?
Thanks in advance.
You should be able to do this with exiftool. Make a backup of your files first, then try this on a single file:
exiftool "-alldates<filecreatedate" ONEIMAGE.jpg
Then check your "file properties" that you refer to and also check with:
exiftool ONEIMAGE.jpg
If that all looks correct, you can do all files in a directory like this:
exiftool "-alldates<filecreatedate" DIRECTORYNAME

How to use Exiftool to copy jpg metadata to RAW file after exporting from Lightroom

Using Lightroom, I made adjustments to some jpg files (primarily to the toning), as well as added some IPTC data. I saved the metadata to those files and also exported them.
Now I would like to copy just the IPTC and edit adjustments from either the sorce jpgs or the exported jpgs into their corresponding RAW files, but I'm not sure of the syntax or tags to specify.
This is my folder structure:
.\Working
.\Working\RAW_Source\
.\Working\JPG_Source\
.\Working\JPG_Exports\
Notes:
all file names are the same except for their extensions.
there are no sidecar files involved. Metadata needs to exist ONLY in the jpg
or RAW files.
Thanks
Assuming that the files have the same base name, your basic command would be along these lines.
To copy from JPG_Source to RAW_Source
exiftool -TagsFromFile .\Working\JPG_Source\%f.jpg -xmp:all -iptc:all .\Working\RAW_Source\
To copy from JPG_Exports to RAW_Source
exiftool -TagsFromFile .\Working\JPG_Exports\%f.jpg -xmp:all -iptc:all .\Working\RAW_Source\
To copy tags from either source (latter DIR has priority)
exiftool -TagsFromFile .\Working\JPG_Exports\%f.jpg -xmp:all -iptc:all -TagsFromFile .\Working\JPG_Source\%f.jpg -xmp:all -iptc:all .\Working\RAW_Source\
That will copy all XMP tags (which includes IPTC Core) and IPTC IIM/Legacy tags to the RAW files.
These commands would create backup files which can be suppressed with the -Overwrite_Original option. You can recurse into subdirectories with the -r (recurse) option.
These commands do not include any GPS tags or EXIF tags. You can add the GPS tags by adding -GPS:All to the command. It's usually not a good idea to edit tags in the EXIF group in RAW files unless you know exactly what you are doing, as it can cause the RAW file to become unviewable, as some of these tags are needed to tell software how to render the image (see ExifTool FAQ #8).
Also take note that these command write the data directly into the RAW file. If you wish to write the data into an XMP sidecar file, the command would be more complex, depending upon whether the XMP sidecar files already exists or not. If the sidecar files already exist, then you would add -ext XMP to the above commands.

Why some tags I can not edit them with exiftool

With exiftool I could not edit some tags like the result after when I put this line
exiftool logo.jpg -"Photoshop Quality"=""
I get this message
Warning: Sorry, Photoshop is not writable
Nothing to do.
My question . why ? how can i fix this problem ? . also I tried this line
exiftool logo.jpg -all=""
all of tags are removed exception of some like . . . .
File Size
File Type
So at the first did not edit . But in the second code worked ?
"Photoshop Quality" is not the name of a tag, it is the description. Make sure you use the command in exiftool FAQ #2 to figure out the correct name to process. You can also look at the Photoshop Tag page to see more info on the Photoshop tags.
The second command will remove all embedded tags in the file, but some tags are actually properties of the file, not embedded information. FileSize, for example, is the actual size of the file as reported by the underlying OS. FileType is the type of the file. These items can't just be changed on a whim, nor can they be removed.

Edit MP4 Metadata with exiftool

I have an MP4 file with Title metadata:
exiftool movie.mp4
Which gives:
Audio Bits Per Sample : 16
Audio Sample Rate : 48000
Handler Type : Metadata
Handler Vendor ID : Apple
Title : Movie Title
I want to completely remove this Title metadata. I have tried overwriting the title:
exiftool -Title="" movie.mp4
exiftool -Title= movie.mp4
exiftool -Title="" -overwrite_original movie.mp4
The command takes awhile to execute, but exits with:
0 image files updated
1 image files unchanged
What am I doing incorrectly? How can I view what the exiftool error is? How can I remove the Title attribute? According to the man page, MP4 seems to be a supported file type.
Thanks so much for your help!
Since the time of the original question, exiftool, as of ver 11.39, has gained the ability to create/edit a larger range of MP4/MOV metadata tags (see Quicktime tags page). To remove the Title tag from a video the original commands that #James Taylor used will work:
exiftool -Title= movie.mp4
Or in batch with
exiftool -Title= /path/to/files/
These commands creates backup files. Add -overwrite_original to suppress the creation of backup files. Add -r to recurse into subdirectories.
You can also use ffmpeg with a command similar to this, based upon this StackOverflow answer
ffmpeg -i InputFile -c copy -metadata title= OutputFile
But as is, I believe this command will remove all metadata. I think that -map_metadata 0 needs to be added to the command to keep the remaining metadata, but unsure of where.