Image Metadata
Introduction
AdmiralCloud's transcoding service reads and writes embedded metadata for image assets. During ingestion, the transcoder extracts standard IPTC, EXIF, and XMP fields and maps them to AdmiralCloud metadata fields. When exporting or generating image formats, these fields can be written back into the image file automatically.
Our transcoders analyze metadata based on the data model below.
The same data model is used to write metadata back to images.
AdmiralCloud automatically updates metadata of images (IPTC, etc) as soon as the metadata in AdmiralCloud changes if it is defined in the related format.
Reading Metadata
TBC
Writing Metadata
The format defines which fields will be embedded into the image. In order to map AdmiralCloud metadata fields to image metadata fields (IPTC, EXIF, XMP) we use a basic mapping you can find below.
You can change this mapping using the metadata configuration of the format itself. If you want to change it on a more global level, you can also use the customer's mediaMetadataConfiguration object.
Example 1 – Format with metadata instructions
The following setup in formats will write the AdmiralCloud field "container_name" to IPTC field "Headline" (see mapping below). And it will write the AC field "meta_photographer to the XMP field "Creator
`// settings
"metadata":[ { "metaTitle":"meta_photographer" }, { "metaTitle":"container_name" }
]`
Example 2 – Use custom mapping
This setup will write the custom field "meta_c123_myfield" to the XMP field "myfield"
`// settings
"metadata" [ { "metaTitle": "meta_c123_myfield", "keyWrite": "myfield", "typeWrite": "xmp" }
]`
Automatic updating of metadata in images
If metadata for a mediacontainer is updated, the preview images (format 6) as well as formats with metadata in command structure (settings) will be automatically updated within the next minute.
Note, not every update will immediately trigger this update – we collect metadata changes within the same minute and only trigger the update once after that minute.
Mapping
The mapping format definition is always an array of object. Each object contains of the properties defined in section Data Model
Data Model
FieldTypeRequiredDescriptiontypestringyesexif/iptckeystring|arrayyesKey name in Exif/IPTC as analyzed by exiftool If you use an array the first match is usedpathstringfield to AdmiralCloud media field (if the value should be written to media instead of metadata). Leave empty if you want to create an entry in metadata tablemetaTitlestringfield name for AdmiralCloud metadata. Make sure to use the following structure: "meta_TYPE_KEY", e.g. meta_exif_lensModellockbooleanIf true, the value is locked in metadata and cannot be overwrittenmethodstringUsually we use Exiftool for analysis. You can set method to "identify" if you want to use Imagemagick's identify method instead. fnstringAn optional function to use for preparing the value. Options are: parseInt, "size", "format". You can use your own function like this: fn: (val) => { return parseInt(val) }mappingarrayMapping for values. An array of objects with type, key and value
Basic mapping
FieldTypeAC Field****NotesCityiptcmeta_iptc_cityCountry-PrimaryLocationCodeiptcmeta_productionCountryCopyrightNoticeiptcmeta_copyrightCreatoriptcmeta_iptc_creatorIf you want to write this field, use xmp:creatorCredit Lineiptcmeta_iptc_creditLineDescriptioniptccontainer_descriptionPrecedence 1Captioniptccontainer_descriptionPrecedence 2Caption-Abstractiptccontainer_descriptionPrecedence 3by_lineiptccontainer_descriptionPrecedence 4Description Writeriptcmeta_iptc_descriptionWriterHeadlineiptccontainer_namePrecedence 1Titleiptccontainer_namePrecedence 2ObjectNameiptccontainer_namePrecedence 3Instructionsiptcmeta_iptc_instructionsJobIdiptcmeta_iptc_jobIdRights Usage Termsiptcmeta_iptc_rightsUsageTermsSourceiptcmeta_iptc_sourceSubject Codeiptcmeta_iptc_subjectCodeCreatorxmpmeta_photographerTBC