All Projects → peregin → Gps Overlay On Video

peregin / Gps Overlay On Video

Licence: mit
Telemetry (GPS) data overlay on videos

Programming Languages

scala
5932 projects

Projects that are alternatives of or similar to Gps Overlay On Video

HPR-Rocket-Flight-Computer
A flight computer for high-powered rockets based on the Teensy platform. 4 programmable pyro outputs, Mach immune flight events, air-start & two-stage capable w/ tilt-sensing safety features, GPS & live telemetry. High-rate data logging at 1000 samples per second. 4.0in x 1.25in x 0.5in fits in a 38mm tube coupler.
Stars: ✭ 33 (-75.74%)
Mutual labels:  gps, telemetry
Luatelemetry
FrSky SmartPort(S.Port), D-series, F.Port and TBS Crossfire telemetry on all Taranis and Horus transmitters
Stars: ✭ 206 (+51.47%)
Mutual labels:  gps, telemetry
Gopro Utils
Tools to parse metadata from GoPro Hero 5 & 6 cameras
Stars: ✭ 191 (+40.44%)
Mutual labels:  gps, telemetry
Gpmf Parser
Parser for GPMF™ formatted telemetry data used within GoPro® cameras.
Stars: ✭ 282 (+107.35%)
Mutual labels:  gps, telemetry
React Native Fused Location
Finest location for react-native on Android using the new Fused API.
Stars: ✭ 118 (-13.24%)
Mutual labels:  gps
Huawei Tcx Converter
A makeshift python tool that generates TCX files from Huawei HiTrack files
Stars: ✭ 108 (-20.59%)
Mutual labels:  gps
Ttgo T Beam Car Tracker
TTGO-T-Beam Arduino Car Tracker - ESP32 + LoRa + GPS + GSM (optional)
Stars: ✭ 106 (-22.06%)
Mutual labels:  gps
Canvas Gauges
HTML5 Canvas Gauge. Tiny implementation of highly configurable gauge using pure JavaScript and HTML5 canvas. No dependencies. Suitable for IoT devices because of minimum code base.
Stars: ✭ 1,443 (+961.03%)
Mutual labels:  gauge
Coregpx
A library for parsing and creation of GPX location files. Purely Swift.
Stars: ✭ 132 (-2.94%)
Mutual labels:  gps
Opentracker
OpenTracker - open source GPS/GLONASS hardware
Stars: ✭ 129 (-5.15%)
Mutual labels:  gps
Telemetry
Data visualization and communication with embedded devices
Stars: ✭ 116 (-14.71%)
Mutual labels:  telemetry
Nativescript Ui Feedback
This repository is used for customer feedback regarding Telerik UI for NativeScript. The issues system here is used by customers who want to submit their feature requests or vote for existing ones.
Stars: ✭ 110 (-19.12%)
Mutual labels:  gauge
Georinex
Python RINEX 2 / 3 NAV / OBS / sp3 reader & batch convert to HDF5 with C-like speed
Stars: ✭ 118 (-13.24%)
Mutual labels:  gps
Sparkfun ublox arduino library
Library to control UBX binary protocol and NMEA over I2C on Ublox GPS modules
Stars: ✭ 107 (-21.32%)
Mutual labels:  gps
Applicationinsights Dotnet Server
Microsoft Application Insights for .NET Web Applications
Stars: ✭ 130 (-4.41%)
Mutual labels:  telemetry
Gnmic
gnmic a gnmi CLI client and collector
Stars: ✭ 105 (-22.79%)
Mutual labels:  telemetry
Dingding
免root远程钉钉打卡,支持wifi和gps定位,仅支持android系统。本项目出于学习目的,仅用于学习玩耍,请于24小时后自行删除。xposed, crack,package,dingtalk,remote control
Stars: ✭ 116 (-14.71%)
Mutual labels:  gps
Jpx
JPX - Java GPX library
Stars: ✭ 125 (-8.09%)
Mutual labels:  gps
Applicationinsights Python
Application Insights SDK for Python
Stars: ✭ 114 (-16.18%)
Mutual labels:  telemetry
Applicationinsights Go
Microsoft Application Insights SDK for Go
Stars: ✭ 113 (-16.91%)
Mutual labels:  telemetry

Build Status Codacy Badge codecov.io License: MIT Issues GitHub release

Build Stats

GPS data overlay on videos

The Ultimate Cycling Software

Table of Contents

Download

Download the latest executable jar file (gps-overlay-on-video.jar) from here. It requires to have a java installation to run the application as follows:

java -jar gps-overlay-on-video.jar

There are other options to run the application see How to run it section.

When running under windows make sure to use 32bit java JDK/JRE (due to bugs in the xuggle library when running in 64bit)

Overview

The idea came after I bought a GoPro camera and started to record some of my rides with the bicycle which were also tracked with a GPS device. For tracking the rides I was using the Strava application on my phone or a Garmin Edge 510. After watching the videos I was asked why I'm not showing the speed and altitude information overlaid onto video? Cool, great idea, I wanted to add all kind of telemetry data acquired via the GPS onto the video, but couldn't find a software for it, running on my Mac. So I decided the write one :) The generated video is able to show the current speed or the actual elevation information, eventually the grade of the slope when climbing a steeper section or the current heart rate zone. The main focus is on cycling videos, but with small effort, different gauge templates it is easy to create dashboard for different type of activities.

Example of videos generated with the tool, links to youtube:

Gurten Classic 2015  Zugerberg Classic 2014  Uetliberg Loop 2014

Screenshot of the tool:

latest screenshot

How to run it

The released packages are published regularly here. The easiest way to run the application having just java installed:

run.sh

The script will download the latest version published on github and will run it.

if you have the scala environment installed, you can run it with:

sbt run

How to use it

how to use 4min Tutorial  how to in german

Basic requirements

Small list of wishes to achieve:

  • show the video file and the track on the map to help synchronizing (shifting) the gps data to the beginning of the video
  • add various gauges (drag'n drop into the video panel) like: speed, cadence, heart rate, altitude, acceleration, temperature, etc.
  • once the gauges were added and adjusted (the size and position) allow to save the configuration as a template, so next time it is easier to just load the template and create the new video
  • and the final bit, export (or generate) to newly created video with the desired gauges.

All the information is extracted from the gps data, since mainly the coordinates and timestamps are known, it is easy to calculate

  • distance
  • speed
  • acceleration
  • direction (compass)
  • provide charts about the elevation
  • etc.

Telemetry data sample collected with a Garmin device (Edge 820):

<trkpt lat="47.1512900" lon="8.7887940">
  <ele>902.4</ele>
  <time>2017-09-24T06:10:53Z</time>
  <extensions>
    <power>205</power>
    <gpxtpx:TrackPointExtension>
      <gpxtpx:atemp>8</gpxtpx:atemp>
      <gpxtpx:hr>160</gpxtpx:hr>
      <gpxtpx:cad>90</gpxtpx:cad>
    </gpxtpx:TrackPointExtension>
  </extensions>
</trkpt>

Credits

The application is using libraries and images created by other people or organizations:

Resources

Links

Useful links and information

Generating new video with gps overlay

After synchronizing the video stream with the gps track (through the shift parameter) everything is prepared to generate a new video:

converter

And here it is :) the first video generated with the software (Zugerberg Classic):

Zugerberg Classic 2014

Gauge ideas

Besides the basic gauge types (speed, cadence, etc.) showing the current value so called chart types are introduced as well. The charts are showing all the data (for example an elevation chart) and the current value.

The very early drafts on the paper, how it started:

gauge ideas

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].