Digital Source Type records what kind of process produced an image: a camera, a film scanner, a person drawing on a tablet, or a generative model. The value is a URI from the IPTC NewsCodes vocabulary, stored in XMP as Iptc4xmpExt:DigitalSourceType. The field has existed since 2009; it got attention once IPTC added AI terms in 2022 and platforms began labeling synthetic images.
Current values
Every value is http://cv.iptc.org/newscodes/digitalsourcetype/ plus a term. Keep the http:// as published: it is an identifier, not a link to fix.
| Term | Meaning |
|---|---|
| digitalCapture | Captured from real life by a camera |
| computationalCapture | Multi-frame merge, such as phone HDR |
| negativeFilm, positiveFilm, print | Scans |
| humanEdits | Edited by a person, non-generative tools |
| algorithmicallyEnhanced | Sharpening, noise reduction |
| digitalCreation | Made by a person, non-generative tools |
| trainedAlgorithmicMedia | Created with generative AI |
| compositeWithTrainedAlgorithmicMedia | Edited with generative AI (inpainting, outpainting) |
| compositeSynthetic | Composite with at least one AI element |
| algorithmicMedia | Pure algorithm, no training data |
The list at cv.iptc.org also has screenCapture, composite, compositeCapture, dataDrivenMedia and virtualRecording. Google's documentation names four values it supports: trainedAlgorithmicMedia, compositeSynthetic, algorithmicMedia and compositeWithTrainedAlgorithmicMedia.
Relation to C2PA
C2PA reuses the same URIs. A generative tool's manifest carries a c2pa.created action whose digitalSourceType is trainedAlgorithmicMedia. The difference is trust: the XMP field is an unsigned string anyone can change in seconds, while the C2PA value sits in a signed manifest whose hash stops matching once the file is edited. The C2PA guide covers the signed side.
Reading and setting it
$ exiftool -G1 -s -XMP-iptcExt:DigitalSourceType image.jpg
[XMP-iptcExt] DigitalSourceType : http://cv.iptc.org/newscodes/digitalsourcetype/trainedAlgorithmicMediaThe EXIF editor offers it as a dropdown for JPEG and TIFF. That list follows the 2022 vocabulary: it still includes minorHumanEdits and digitalArt, which IPTC retired in 2024 in favor of humanEdits and digitalCreation, and it lacks the 2024 additions. Write those with ExifTool, which also handles PNG (the XMP goes into an iTXt chunk):
exiftool -XMP-iptcExt:DigitalSourceType="http://cv.iptc.org/newscodes/digitalsourcetype/humanEdits" image.pngAn empty field proves nothing. Plenty of cameras never write it, and one strip removes it from AI output.