Missed user-defined tags in output

Started by _alexs_, July 13, 2012, 01:14:56 PM

Previous topic - Next topic

_alexs_

I have troubles using user-defined tags. What I need is to create a user-defined tag with some name and add  this tag with value to all photos in directory. I read this info and create next config file

%Image::ExifTool::UserDefined = (
    'Image::ExifTool::Exif::Main' => {
        0xd000 => {
            Name => 'Specie',
            Writable => 'string',
            WriteGroup => 'IFD0',
        },
    },
);

#------------------------------------------------------------------------------
1;  #end

And use next command to add tag in batch mode to all files

exiftool -config path_to_my_config -Specie='Canis lupus' -ext jpg -r dirName/

As I can see, tag added succesfully and I can see it with tag-viewer in Geeqie (strange thing. this tag has name 0xd000 instead of "Specie"). But when I try to print all tags with
exiftool myphoto.jpg
I can't find new tag "Specie" in output as I expect. Maybe I miss something important? All what I need is to be able add this tag (or any another user-defined tag) and view it in output under EXIF group like e.g. GPS-related tags.

I'm new to ExifTool, sorry if this question already was aswered — I didn't find any similar topics with search.
Thanks and sorry for my English

_alexs_

Well, finally I found solution. To see user-defined tags in output I need to have all this tags in global config or, alternatively, run exiftool with "-u" option

_alexs_

But there is something strange. This user defined tags have names like "Exif 0xd000". Is it possible to display name, that were specified in config file even if there is no config file used?

Phil Harvey

Sorry for the delay in responding.  I was on vacation.

You must use a metadata format that stores the tag name (such as XMP) for your user-defined tags if you want them to show up properly when read by unaware applications.

- 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 ($).