Skip to content

emericg/OffloadBuddy

Repository files navigation

OffloadBuddy

GitHub action GitHub issues License: GPL v3

OffloadBuddy is a multimedia offloading software with a few tricks up his sleeve!
It's designed to remove the hassle of handling and transferring the many videos and pictures files from your devices like action cameras, regular cameras and smartphones...

Works on Linux, macOS and Windows!

Features

  • Import data from SD cards, mass storage or MTP devices
    • Organize and sort your media library
    • Copy, merge or reencode media
    • Preview videos, photos and timelapses
    • Show and export GoPro telemetry & GPS traces
    • Change wrong dates (WIP)
  • Media transcoding
    • Create short video clips (and GIFs) from your videos!
    • Create videos from timelapses
    • Create timelapses from videos
    • Extract photos/screenshots from videos
  • Apply filters to transcoded media
    • Reframe media, change aspect ratio
    • Clip duration
    • Rotate media
    • Defisheye media (WIP)
    • Stabilize videos
  • Telemetry handling
    • Export GoPro telemetry and GPS trace
    • Visualize telemetry with graphs
    • Visualize GPS trace on maps
    • Video overlay
  • GoPro firmware updates

Screenshots

overview offload video1 telemetry timelapse video3 resize clip

Documentation

Dependencies

You will need a C++17 compiler and Qt 6.5+ with the following 'additional librairies':

  • Qt Multimedia
  • Qt Positioning
  • Qt Location
  • Qt Charts

On Windows, the contribs builds fine with MSVC 2019 and 2022.
On macOS you will need Xcode 13+.

OffloadBuddy dependencies:

  • Qt (6.5+)
  • pkg-config (linux / macOS without contribs)

Optional dependencies:

  • libusb and libmtp
  • libexif
  • ffmpeg (4+)
  • MiniVideo (0.14+)

Build dependencies:

  • python 3
  • cmake
  • and a couple others (see contribs/contribs.py)

Building OffloadBuddy

Clone the repository:

$ git clone https://github.com/emericg/OffloadBuddy.git

You can either use the libraries from your system, or use the contribs_builder.py script to build necessary libraries.
You will probably need to use this script, because some libraries aren't widely available in package managers. Also, if you wish to cross compile for Android or iOS, the script will make your life so much easier.

Build dependencies using the contribs_builder.py script (optional):

$ cd OffloadBuddy/contribs/
$ python3 contribs_builder.py

Build OffloadBuddy:

$ cd OffloadBuddy/
$ qmake6 DEFINES+=USE_CONTRIBS CONFIG+=release
$ make

Third party projects used by OffloadBuddy

Get involved!

Developers

You can browse the code on the GitHub page, submit patches and pull requests! Your help would be greatly appreciated ;-)

Users

You can help us find and report bugs, suggest new features, help with translation, documentation and more! Visit the Issues section of the GitHub page to start!

License

OffloadBuddy is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3 of the License, or (at your option) any later version.
Read the LICENSE file or consult the license on the FSF website directly.

Emeric Grange emeric.grange@gmail.com