How to maintain metadata when screen-shotting video observations?

I have a large number of observations, currently in the form of videos, that I need to upload to iNat. I understand that I need to take screen shots of the videos because iNat doesn’t accept video, which is fine. What I’m wondering is if there is any tool or trick that would allow me to automatically attach the metadata from the video to the still I take from it? Taking stills is not such a chore, typing in metadata that were attached to the videos is. Is there any way to make the metadata stick when I take a still? Thank you.

Oh, I should say I am working on a Mac, but also have a PC available if there is a better tool.


For what it’s worth, if the videos are short you could turn them into animated gifs (which are accepted) as well, I think - but that probably doesn’t solve the metadata issue anyway.

1 Like

I agree, GIFs might be useful in some cases to preserve the sense of motion when it aides with ID, but there again the metadata are lost in conversion.

You can probably use ExifTool to copy from one file to another. This is an extremely powerful application, but only runs on a command line in Terminal, so can be intimidating if you are not experienced with that kind of thing.

Some discussion here:

Looks like there is also an online tool that might work:


Interesting, thank you @twr61 . The online tool you linked to seems to only work with images, not videos, as input. ExifTool, as you say, can extract the metadata, but doesn’t really make my task feasible as far as I see. Specifically, I need to be able to quickly choose the frame I want from a video, click something, and have that frame as a still with the metadata, and do this for thousands of videos. ExifTool lets me get the metadata from the video, and find and select a still I’ve already taken in another application, and attach those metadata to that image, and repeat that process for each still, but by then I’ve spent more time than just typing in the metadata by hand, since the date and time are actually visible in the still.

If I’ve misunderstood, please correct me.

Since it is iNat’s official policy that video observations should be uploaded as stills (or GIFs) there should be some efficient way to do that.

how long are your videos? are you doing multiple stills per video? and what metadata do you need to copy (e.g. just date/time, also location, other?)?
if the videos are short, I’m sure it could be scripted to use ExifTool to take the start date/time of the video and copy that to a matching screenshot. there may be a discrepancy between the metadata time and the time shown on the screenshot, but for a 15s video for instance that wouldn’t be very much.
It still wouldn’t be 1-step work of just taking a screenshot, but the 2nd step would work for hundreds of screenshots so it isn’t that much more.

The videos are short, mostly 10-20 second MP4s. Usually one carefully selected frame from each video is sufficient for ID, in a few cases more are needed. In those few cases, I don’t mind combining the multiple pictures into single observations by hand. The challenge is that it can’t always be the first or last or middle frame, and I think that will be true for most people’s video observations. So unless the script in ExifTool allows me to view the video and select the frame I want, I need to take the stills in one application, associate each still to its video in some way ExifTool can read, then go into Terminal and use ExifTool to transfer metadata using a custom script before I upload. Very few users are going to do that.

If you use VLC to take your screenshots, you can configure the name of the screenshots to be the name of the video file.
Settings->Video->Video snapshots->Prefix, set to “$N” and use Sequential numbering. Also set the save folder to be the folder where all your videos are.

Then associating ‘VIDEO.MP4’ to ‘VIDEO.MP400001.png’ (or .jpg) is easily taken care of in the script.

To be honest, I think you’ve backed yourself into a corner by having thousands of videos to do this with. I think very few people (especially as a proportion of iNat users) are going to be in that situation to begin with, so I’m not surprised there isn’t an all-in-one application to do it all.

@jlmartin , I didn’t take the videos, I just have to process them. But it doesn’t strike me as an unusual situation for camera trap networks or similar to result in large numbers of short wildlife videos. Rather, I suspect these types of datasets mostly don’t end up on iNat, despite their value, because the site isn’t yet set up to accommodate them.

You are certainly right that with the right tool the name matching can be automated, obviating one repetitive step.


I don’t do much with videos, but I just tried importing an mp4 file into Adobe Lightroom, extracted one frame from the video, and it appears to have copied over the capture date and time to the new jpeg file. So that might be an option if you don’t mind subscribing to Adobe software. (I am still using an older version of Lightroom).

1 Like

Great thank you @twr61 . I don’t have Lightroom, but maybe some of the Adobe software I have will do the same, or I can find a computer with Lightroom to borrow briefly.

No wait, I do have Lightroom, I’ve just never use it. I’ve imported a sample of videos and selected a frame from the first. @twr61 what did you do to extract a frame and save it with the capture data, please?

Open the mp4 file in Lightroom. At the bottom of the image is a bar with a “Play” arrow on the left end. Near the right end is a filled rectangle which is a dropdown menu, the top option is Capture Frame.

I am running Lightroom 6, a couple of years old.


Perfect, that works, and is easy! Thank you so much.

1 Like

You’re welcome, look forward to seeing your observations.

1 Like

These observations will be under the username sec_research , the Sonoma Ecology Center.

1 Like

I know there are people who take GoPros while snorkeling and then take stills from the video for iNat observations, and I think this would be useful for that as well.


The videos you want to take stills from seem to be from a trail camera? If so, then the camera takes a photo followed by a video, yes? If you upload the photo, which will have all the metadata, and combine it with the snapshots from the video, then you would have all the info without any extra steps.

The photo plus video is a camera setting. My videos are all just videos, no photo with them.

1 Like

Heads up to iPhone users- Lightroom doesn’t appear to support HEVC.MOV video files yet, so that solution won’t work if you have HEVC (‘High Efficiency’) enabled.