I exported my Google Photos collection using Google Takeout and received directories with many JPG and MP4 files, each accompanied by an additional JSON file with metadata. Since the Exif fields $Make and $Model are not filled for some media files (JPG and MP4), I would at least like to enrich the files with the information "ANDROID_PHONE" or "IOS_PHONE", which is only found in the JSON files, here in the field `googlePhotosOrigin.mobileUpload.deviceType`.
But when I use a command like
exiftool -r -tagsFromFile %d/%f.%e.json "-ProcessingSoftware<${googlePhotosOriginMobileUploadDeviceType;}" "Photos from 2013"
this only works for JPG files, not for MP4 files.
Even if I also use the `-ext MP4` flag, I can only see that the MP4 files are processed but left unchanged.
From the documentation I cannot see that this feature would not be supported for MP4. So I think this is a bug. Or am I missing something?
ProcessingSoftware is an EXIF tag and any EXIF data is non-standard in a video file. This doesn't stop camera companies from shoving it in to a video, but because there isn't a standard, every company does it differently.
A video file can hold Quicktime data (https://exiftool.org/TagNames/QuickTime.html) and XMP data (https://exiftool.org/TagNames/XMP.html). You'll have to look through those tags to see if there is something you can use.
Thanks for your quick reply! I understand now. So ExifTool works as intended when it refuses to add Exif data to MP4 files. But wouldn't it then make sense to output an appropriate error message like:
QuoteThis action is not supported for video files. Use Quicktime or XMP data instead.
While this error message may seem like a good idea when copying a single tag, you would get hundreds of errors for various reasons when copying tags in bulk between files of different types.
- Phil