|
Packit Service |
21b5d1 |
# Sample Exiv2 command file for XMP tags
|
|
Packit Service |
21b5d1 |
# --------------------------------------
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Set basic properties. Exiv2 uses the value type of the XMP specification
|
|
Packit Service |
21b5d1 |
# for the property, if it is not specified. The default XMP value type
|
|
Packit Service |
21b5d1 |
# for unknown properties is a simple text value.
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# A simple text property.
|
|
Packit Service |
21b5d1 |
set Xmp.dc.source xmpsample.cpp
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# An array item (unordered array).
|
|
Packit Service |
21b5d1 |
set Xmp.dc.subject "Palmtree"
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Add a 2nd array item
|
|
Packit Service |
21b5d1 |
set Xmp.dc.subject "Rubbertree"
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# A language alternative (without a default)
|
|
Packit Service |
21b5d1 |
set Xmp.dc.title lang=en-US Sunset on the beach
|
|
Packit Service |
21b5d1 |
set Xmp.dc.title lang=de-DE Sonnenuntergang am Strand
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Any properties can be set provided the namespace is known.
|
|
Packit Service |
21b5d1 |
set Xmp.dc.one -1
|
|
Packit Service |
21b5d1 |
set Xmp.dc.two 3.1415
|
|
Packit Service |
21b5d1 |
set Xmp.dc.three 5/7
|
|
Packit Service |
21b5d1 |
set Xmp.dc.four 255
|
|
Packit Service |
21b5d1 |
set Xmp.dc.five 256
|
|
Packit Service |
21b5d1 |
set Xmp.dc.six false
|
|
Packit Service |
21b5d1 |
set Xmp.dc.seven Seven
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# The value type can be specified. Exiv2 has support for a limited number
|
|
Packit Service |
21b5d1 |
# of specific XMP types with built-in types: The basic XmpText, array
|
|
Packit Service |
21b5d1 |
# types XmpAlt (alternative array), XmpBag (unordered array), XmpSeq
|
|
Packit Service |
21b5d1 |
# (ordered array) and language alternatives LangAlt.
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Simple text property with explicitly specified value type
|
|
Packit Service |
21b5d1 |
set Xmp.dc.format XmpText "image/jpeg"
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# An ordered array
|
|
Packit Service |
21b5d1 |
set Xmp.dc.creator XmpSeq "1) The first creator"
|
|
Packit Service |
21b5d1 |
set Xmp.dc.creator "2) The second creator"
|
|
Packit Service |
21b5d1 |
set Xmp.dc.creator "3) And another one"
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# A language alternative. The default entry of a langauge alternative
|
|
Packit Service |
21b5d1 |
# doesn't need a language qualifier.
|
|
Packit Service |
21b5d1 |
set Xmp.dc.description LangAlt lang=de-DE Hallo, Welt
|
|
Packit Service |
21b5d1 |
set Xmp.dc.description LangAlt Hello, World
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# According to the XMP specification, Xmp.tiff.ImageDescription is an
|
|
Packit Service |
21b5d1 |
# alias for Xmp.dc.description. Exiv2 treats an alias just like any
|
|
Packit Service |
21b5d1 |
# other property.
|
|
Packit Service |
21b5d1 |
set Xmp.tiff.ImageDescription TIFF image description
|
|
Packit Service |
21b5d1 |
set Xmp.tiff.ImageDescription lang=de-DE TIFF Bildbeschreibung
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Register a namespace which Exiv2 doesn't know yet with a prefix.
|
|
Packit Service |
21b5d1 |
reg ns myNamespace/
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Add a property in the new custom namespace.
|
|
Packit Service |
21b5d1 |
set Xmp.ns.myProperty myValue
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# There are no built-in Exiv2 value types for structures, qualifiers and
|
|
Packit Service |
21b5d1 |
# nested types. However, these can be added by using an XmpText value and a
|
|
Packit Service |
21b5d1 |
# path as the key.
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Add a structure
|
|
Packit Service |
21b5d1 |
set Xmp.xmpDM.videoFrameSize/stDim:w 16
|
|
Packit Service |
21b5d1 |
set Xmp.xmpDM.videoFrameSize/stDim:h 9
|
|
Packit Service |
21b5d1 |
set Xmp.xmpDM.videoFrameSize/stDim:unit inch
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Add an element with a qualifier (using the namespace registered earlier)
|
|
Packit Service |
21b5d1 |
set Xmp.dc.publisher James Bond
|
|
Packit Service |
21b5d1 |
set Xmp.dc.publisher[1]/?ns:role secret agent
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Add a qualifer to an array element of Xmp.dc.creator (added above)
|
|
Packit Service |
21b5d1 |
set Xmp.dc.creator[2]/?ns:role programmer
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Add an array of structures. First set a text property with just the
|
|
Packit Service |
21b5d1 |
# array type. (Note: this is not the same as creating an XmpBag property.)
|
|
Packit Service |
21b5d1 |
set Xmp.xmpBJ.JobRef XmpText type=Bag
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
# Then set the array items. Each of them is a structure with two elements.
|
|
Packit Service |
21b5d1 |
set Xmp.xmpBJ.JobRef[1]/stJob:name XmpText Birthday party
|
|
Packit Service |
21b5d1 |
set Xmp.xmpBJ.JobRef[1]/stJob:role XmpText Photographer
|
|
Packit Service |
21b5d1 |
|
|
Packit Service |
21b5d1 |
set Xmp.xmpBJ.JobRef[2]/stJob:name Wedding ceremony
|
|
Packit Service |
21b5d1 |
set Xmp.xmpBJ.JobRef[2]/stJob:role Best man
|