Installation

← Back to Home

Easy Windows install

Download dji-metadata-embedder-setup-<version>.exe from the latest release and run it. One installer carries everything:

  • the DJI Metadata Embedder desktop app (Start menu entry) for the common tasks — make a map, embed telemetry, check your setup — with no command line involved;
  • the full dji-embed command line, ready in any new terminal window (the install folder is added to your user PATH);
  • pinned FFmpeg and ExifTool builds, so nothing else needs installing.

No admin rights needed — it installs per-user. The uninstaller removes the PATH entries again. From v1.23.0 the installer and every binary inside it are Authenticode code-signed, so Windows shows a verified publisher instead of an "unknown publisher" warning.

Windows – bootstrap script

iwr -useb https://raw.githubusercontent.com/CallMarcus/dji-drone-metadata-embedder/master/tools/bootstrap.ps1 | iex

The bootstrap script also installs FFmpeg and ExifTool (CLI only, no desktop app).

Windows – winget

winget install CallMarcus.DJIMetadataEmbedder

Installs the portable dji-embed.exe. FFmpeg and ExifTool are not bundled — add them with winget install Gyan.FFmpeg OliverBetz.ExifTool, or use the bootstrap script above, which bundles everything. For MP4 timed-metadata support you can also let the tool install its own pinned ExifTool: dji-embed doctor --install exiftool (any OS, no admin rights).

The full desktop-app installer is also on winget as a separate package (from v1.23.0, appearing shortly after each release once the winget moderators approve it):

winget install CallMarcus.DJIMetadataEmbedder.Desktop

Install one or the other — both put dji-embed on PATH.

Windows – manual path

pip install dji-drone-metadata-embedder

macOS

brew install ffmpeg exiftool pipx
pipx install dji-drone-metadata-embedder

Homebrew's Python is externally managed, so a bare pip install is refused with an externally-managed-environment error — pipx installs the tool into its own isolated environment and puts dji-embed on your PATH (run pipx ensurepath once if the command isn't found in a new terminal).

Linux

sudo apt update && sudo apt install ffmpeg exiftool
pip install dji-drone-metadata-embedder

Distro ExifTool packages are often too old for DJI MP4 timed metadata — run dji-embed doctor --install exiftool to get a current, checksum-verified copy in your user directory.

Docker

docker run --rm -v "$PWD":/data callmarcus/dji-embed embed /data

Prefer clicking over typing?

On Windows, the installer bundles the desktop app — folder in, map or telemetry out, no terminal. For viewing maps from any OS there's dji-embed photomap <folder> --serve. See the User Guide for details.

Advanced - Build from source with `uv sync --extra dev` (or `pip install -e .`) - Use the provided `Dockerfile` to customize images - CI scripts live under `.github/workflows`

Validation tests

The scripts in validation_tests verify that your installation is ready for real footage. Before running them, make sure that ffmpeg and exiftool can be found on your PATH.

validation_tests/test_installation_and_dependencies.py specifically checks for these binaries. If either command is missing the tests will fail early. Use the installation steps above—your package manager on macOS/Linux—to install FFmpeg and ExifTool before running the validation suite.