mattwilson1024 / google-photos-exif

A tool to populate missing `DateTimeOriginal` EXIF metadata in Google Photos takeout, using Google's JSON metadata.
MIT License
827 stars 120 forks source link

Support .MOV media type #4

Closed jtsalva closed 3 years ago

jtsalva commented 3 years ago

Hiya 👋

Really like the tool you've made, just wondering why only four extension types are supported?

I get the following error Not a valid JPG (looks more like a MOV)

Screenshot 2020-11-30 at 02 32 55

The error doesn't seem to be coming from google-photos-exif as I've done a search for that message with no results 🤔

What would it take to support more extension types such as .MOV?

mattwilson1024 commented 3 years ago

Hi @jtsalva.

No reason other than that my photo library happened to only contain those 4 types (JPG, JPEG, GIF, MP4) so I designed it around that to keep it simple - it would definitely be good to update the tool to include more extensions and make that list easier to tweak too.

When it comes to your error, as you've already identified that isn't coming from google-photos-exif, it'll be coming from ExifTool which is used to read/write the metadata.

Do you have a Pixel phone or similar? From the filename (MVIMG_...), it looks like your file is a "motion photo" which is not a format I'm familiar with, but from some googling it looks like they encode both a photo (e.g. JPEG) and a movie (e.g. MP4) into a single JPG file. I guess this format is what is confusing ExifTool since it is expecting a standard JPEG but finding embedded video.

When it comes to regular .MOV video files I suspect they would work ok if added to the SUPPORTED_MEDIA_FILE_EXTENSIONS array and possibly also added to the doesFileSupportExif function (note that not all filetypes support EXIF metadata, see this list.

For these MVIMG motion photo jpg files, I think it would need some research into the MVIMG format and whether ExifTool can support it since I have relied on that library to do all of the work for reading/writing metadata 🤔

jtsalva commented 3 years ago

Thanks for the quick response and the research you've done into it already @mattwilson1024, I do have motion photos from my Pixel phone which does seem to be causing the issue. I've raise this issue on the exiftool repo to see if they can provide some insight :)

jtsalva commented 3 years ago

Update: I've found an app which works for me called meta data fixer. Happy to close :)