Skip to content

Instantly share code, notes, and snippets.

@suhithr
Last active August 1, 2025 01:29
Show Gist options
  • Select an option

  • Save suhithr/c3215bc6a34fa628221c784b8e6b9a34 to your computer and use it in GitHub Desktop.

Select an option

Save suhithr/c3215bc6a34fa628221c784b8e6b9a34 to your computer and use it in GitHub Desktop.
Overlay GPX data onto Video Footage

Steps to overlay GPX data onto video footage.

These are mostly notes to self. I assumed this process would be easy but there were some pitfalls and hiccups I'm documenting here. Huge thanks to the open source developers behind https://github.com/time4tea/gopro-dashboard-overlay and https://kdenlive.org/ without which this couldn't be possible.

  1. Pull the video off the GoPro (this needs to be done via the microsd card directly for "reasons").
  2. Download the .fit file from Garmin Connect (GPX file won't have power data)
  3. Run the https://github.com/time4tea/gopro-dashboard-overlay tool to generate a video of the data with a transparent background

(assuming you have a python environment with the above tool installed) $ cd code/gopro_edit_gpx $ uv run .venv/bin/gopro-dashboard.py --use-fit-only --fit $PATH_TO_FIT_FILE --profile mov --overlay-size 3840x2160 $VIDEO_FILE_NAME.mov

  1. In KDENLive open a new project and add both clips.

There is currently a bug with .mov files not showing as playable. https://docs.kdenlive.org/en/troubleshooting/faq.html

    I have a .mov file that is made with .png images and was able to import it into Kdenlive but now I only get an unusable audio track from it. How do I fix this?¶

    This bug has been reported for version 23.04.3 and higher. Until a fix is available there is this as a temporary solution:

    Open the .kdenlive project file in a text editor

    Look for this line: <property name=“set.test_image”>1</property>

    Remove the line or change the 1 to 0

    Look for this line: <property name=“video_index”>-1</property>

    Change the -1 to 0

    Repeat steps 2 thru 5 for each file that is imported

    Save the file

If we've generated the video from the gopro-dashboard-overlay correctly we shouldn't need any effects like the Composite effect to create these videos. It should "just work".

  1. Align the videos, use the map and points on course to get as close as possible.
  2. CMD + Enter will bring up the Render menu, render and expect it to take a few hours!
  3. Upload to Youtube!
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment