Geotagging mp4-video files with gpx-file data from external GPS unit

Started by Videodriver, September 18, 2018, 08:30:13 AM

Previous topic - Next topic

Videodriver

Hi,

I'm new to ExifTool. I have lots of mp4-video files from a track documentation by car where I would like to add the GPS location data from a gpx-file. While recording the video I had a Garmin GPS receiver running all the time. The time of the camera was corrected before the start of the video recording manually by the time of the GPS receiver.

How can I geotag the mp4-files from the video camera with the gpx-files from the GPS receiver?

Thanks for your help.

Wolfgang

Phil Harvey

Hi Wolfgang,

If you want dynamic tagging, I think you can probably forget it (I don't know of any utility that would do this).  But if you want to tag just an initial static GPS location you may be able to do this with ffmpeg.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

travel_yu

I was searching for a method to do this exact same thing.  Now that so many places use geotags to give amazing reports - like google photos which can display all of them in map + we can search like - 'mountain' in Africa (it picks up Africa from GPS, and mountain using ai).

Thanks to Exiftool by Phil and gpssetter, I just finished geotagging 3000+ photos with 90% accuracy (some fuzzy matching since some non GPS files did not have near timed GPS files)

I was amazed - how well both these tools worked - ExifTool and GeoSetter

I understand exiftool would have supported this fully but even if Phil wants to do, there is no clear standards.  Really sad that nobody - Nikon, Red, Youtube etc. cam together to setup one.

But one thing I want to add is - regarding the interpolation calculation, gesetter is able to do it -  once we select

 'Edit > Synchronize to Data files'.  So if we had a standard and after that once exiftool supports that, then same logic geosetter uses for photos can be used for videos.

Just wanted to pitch in this very old topic - because it is still relevant and hoping some one from the video industry (Nikon etc) reads and creates a standard.

Also, thanks a lot Phil for this amazing software.  Nothing else is there to do all these things (write, read, make gpx files etc).

Phil Harvey

This post was 5 years old.  Since 4 years ago ExifTool has the ability to geotag MOV/MP4 videos from GPX files.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).

travel_yu

:) Sorry.

Okay thats very helpful.  I think geosetter is not using this ability - they are using exiftool to write to photos but not videos.

I will now use this to write to video files. Thanks a lot for this really useful software Phil.

StarGeek

You might take a look at GeoTagNinja. It is designed to replace Geosetter and the author is very active in updating in (RIP my github notifications).

I don't know if it can do video but you might request it if it doesn't.
* Did you read FAQ #3 and use the command listed there?
* Please use the Code button for exiftool code/output.
 
* Please include your OS, Exiftool version, and type of file you're processing (MP4, JPG, etc).

Phil Harvey

Note that ExifTool will write XMP tags when geotagging videos.  If you want to copy this to native QuickTime GPSCoordinates, you will have to do this with a second command:

exiftool "-gpscoordinates<$gpslatitude $gpslongitude" -n FILE

This will write ItemList:GPSCoordinates by default, but you may want to specify UserData:GPSCoordinates or Keys:GPSCoordinates depending on where your other software expects to find this information.

But I will add a feature to version 12.68 to allow geotagging directly to QuickTime GPSCoordinates.

- Phil
...where DIR is the name of a directory/folder containing the images.  On Mac/Linux/PowerShell, use single quotes (') instead of double quotes (") around arguments containing a dollar sign ($).