Excluding tags while copying metadata between files

Started by lokatz, April 18, 2023, 12:23:06 PM

Previous topic - Next topic

lokatz

Using an args file, I am copying metadata between files using something like this:

-TagsFromFile
[fromFilePathAndName]
-all
--Orientation
--CameraOrientation
--ValidAFPoints
--AFPointsInFocus
--AFAreaWidth
--AFAreaHeight
--AFAreaXPosition
--AFAreaYPosition
[toFilePathAndName]
-overwrite_original
-execute

Judging by a test pair of images, this seems to work fine for the orientation, where source and target (the .CR2 and .PNG versions of the same image) retain different orientations.  However, the AF info gets copied in spite of the --TAG instructions. 

Am I doing something wrong, or is this because the Canon Makernotes group, where these tags reside, can only be copied as a whole?

Phil Harvey

From the -tagsFromFile section of the application documentation:

            3) The maker note information is copied as a block, so it isn't
            affected like other information by subsequent tag assignments on
            the command line, and individual makernote tags may not be
            excluded from a block copy.


- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

StarGeek

You can find out which tags are MakerNotes by using
exiftool -G -a -s -MakerNotes:all /path/to/files/

You might also read FAQ #9, as using just -All after the -TagsFromFile option has the possibility of changing which groups the copied tags are part of.  For example, if you have XMP:Headline set, using -TagsFromFile file.jpg -all means the new file will have IPTC:Headline set, not XMP:Headline.
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype

lokatz

Appreciate your hints.  Looks like ExifTool offers no way to copy only some of the makernotes then.

I've read FAQ #9 several times but, to be honest, was still left confused.  If you don't mind a suggestion, it would benefit from an explanation of what a 'family 1 group' is, or an example such as the one @StarGeek gave in the above.  I'm sure this is mentioned somewhere in the ExifTool documentation. But then, I guess I am not the only 'casual user' who is not nearly as familiar with the terminology of metadata as you guys are. (I use ExifTool to extract and change metadata as part of an ambitious C# hobby project that now has almost 90,000 lines of code, so I'll readily admit that my focus is elsewhere. I AM very familiar with what's in the makernotes for many camera brands, though, as ExifTool allowed me to study them for years now.)

Thanks, and thanks for the great tool that ExifTool is.

StarGeek

Quote from: lokatz on April 19, 2023, 03:17:31 AMAppreciate your hints.  Looks like ExifTool offers no way to copy only some of the makernotes then.

You won't find anything that does. They are proprietary and some companies are overly protective of the format for some reason. Almost none of them release the specs on them.  The meanings of these tags are only known through the hard work of the camera community. And even then, there usually are some tags that are still unknown.  Try adding the -u (unknown) option to your commands.  Depending upon the camera, you might see a bunch of unknown tags.
"It didn't work" isn't helpful. What was the exact command used and the output.
Read FAQ #3 and use that cmd
Please use the Code button for exiftool output

Please include your OS/Exiftool version/filetype