QOpenHD is the default OpenHD companion app that runs on the OHD Ground station or any other "external" devices connected to the ground station.
It is responsible for displaying the main video stream to the user, composed with the OSD, and changing OpenHD settings.
As the name suggests, it is based on QT (5.15.X) and will not run on older versions.
- QOpenHD is not OpenHD (main). It can communicate with a running OpenHD main instance (ground and/or air) via Mavlink and receives the (primary / secondary / ++) video streams.
- While QOpenHD is the default companion app, OpenHD MUST NOT assume there is a QOpenHD instance somewhere that initiates voodoo settings / setup processes. This is in contrast to OpenHD/QOpenHD releases before the "evo" series. As a result of this limitation, both OpenHD and QOpenHD can be developed independently from each other, making debugging easier.
Like every OpenHD app or module, we publish packages into our Cloudsmith Repository. There are Packages for X86 (ubuntu 22.04,23.04), armhf (rpi, arm64 rockchip). Android releases are available on the Playstore and can be downloaded from there.
We have a CI setup that checks compilation on Ubuntu. You can review the steps it performs to build and run QOpenHD. Other platforms than Linux are not supported at the moment.
-
Install Xcode from the Mac App Store.
-
Install Qt using the Qt online installer.
-
Download Qt 5.15.0+ for Mac and Qt Creator using the Qt Installer.
-
Clone the source code:
git clone --recurse-submodules https://github.com/OpenHD/QOpenHD.git
If you use a GUI git client, ensure you update the submodules or QOpenHD won't build properly.
- Install Xcode from the Mac App Store.
- Install Qt using the Qt online installer.
- Download Qt 5.15.0+ for iOS and Qt Creator using the Qt Installer.
- You'll need an Apple developer membership to install directly on an iOS device.
- Clone the source code as mentioned earlier.
- Install Visual Studio 2019 (free).
- Install Qt using the Qt online installer.
- Download Qt 5.15.0+ and Qt Creator using the Qt Installer.
- Download the GStreamer development kit for Windows, both the Runtime and Development packages (32-bit MinGW packages, version 1.14.4). QT will look for gstreamer in c:/gstreamer/1.0/x86.
- Clone the source code as mentioned earlier.
QTCreator
- Install Qt using the Qt online installer.
- Have it download Qt 5.15.0+ for Linux.
- Install GStreamer development packages from the package manager (e.g., on Ubuntu, run
apt install gstreamer1.0-gl libgstreamer1.0-dev libgstreamer-plugins-good1.0-dev gstreamer1.0-plugins-good libgstreamer-plugins-base1.0-dev gstreamer1.0-plugins-base libgstreamer-plugins-bad1.0-dev gstreamer1.0-plugins-bad gstreamer1.0-plugins-ugly gstreamer1.0-qt libxcb-cursor0
). - Clone the source code as mentioned earlier.
- Clone the source code.
- Run 'bash install_build_dependencies.sh ARCHITECTURE' (ARCHITECTURE can be X86, rpi, rock5).
- Run 'build_qmake.sh'.
- Find the binary under build/releases/QOpenHD.
- Install Android Studio.
- Install Android SDK level 28 and NDK r18b using Android Studio.
- Install Qt using the Qt online installer.
- Download Qt 5.15.0+ for Android (not for the OS you're building on).
- Clone the source code as mentioned earlier.
Step 1) clone this repository with --recurse-submodules Step 2) install all dependencies Step 3) recommended - open in QT creator. Otherwise, you can build QOpenHD via the command line:
mkdir build
cd build
qmake ..
Thanks to all the people who have contributed !