v1.0.0 Utility

Extract & Geotag Photos from Drone Videos

Built for professional aerial photogrammetry. Read hidden DJI sensor telemetry tracks, extract keyframes, and georeference images instantly.

Runs via Python CLI / GUI under Windows & macOS
100% FreeOpen Source Python Utility
DJI Air 3Sdjmd Telemetry Support
ExifToolPrecision Tagging

Engineered for Photogrammetry

Designed to streamline camera calibration workflows on remote mapping operations.

Professional Geotagging

Directly injects calculated GPS Latitude, Longitude, and Altitude coordinate tags into exported image Exif arrays.

Camera Profile Preservation

Copies original camera metadata tags (Make, Model, Focal Length, and Creation Date) from the drone's video header.

DJI Telemetry Parsing

Parses hidden binary telemetry streams (including DJI Air 3S `djmd` and standard telemetry tracks) on ingest.

Batch Processing Power

Select multiple source video clips simultaneously. Process entire datasets in a single automated pass.

Organized Folder Structures

Automatically isolates frame extractions by video file into dedicated, clean output sub-directories.

Offline Verification

Perform telemetry decodes and EXIF injections entirely locally. Perfect for remote sites without network access.

Interactive App Simulator

Experience the functional desktop GUI and command line operations directly below.

GeoFrame Panel
Videos Selected (2)
DJI_0021.MP4
450 MB
DJI_0022.MP4
380 MB
Output Directory
Extraction Frequency1.0 FPS
Job Progress0%
Real-Time LogsStdout
[log] Ready. Click 'START EXTRACTION' to process selected videos.

Setup Instructions

Follow these steps to deploy and run the utility on your workstation.

1

System Requirements

You must install these command-line helper packages and ensure they are added to your operating system's environment PATH variable:

FFmpeg (Video frame decoder)

Used to decode video and extract keyframes at customizable rates.

winget install ffmpeg

ExifTool (Metadata read/writer)

Required to extract binary telemetry streams and write calculated EXIF markers.

winget install OliverBetz.ExifTool
2

Clone & Setup

Download the source repository and initialize the Python runtime requirements:

git clone https://github.com/PixElement/video-keyframer.git
cd video-keyframer
pip install -r requirements.txt
3

Run Applications

Launch the user interface or run command scripts directly:

Launch Desktop GUI

python gui.py

CLI Command Example

python extractor.py video.mp4 --outdir ./exports --fps 1.0

Frequently Asked Questions

Clear answers to technical details and operational requirements.