Browse Source

Settings/VideoManager: add Herelink video stream

This adds two video settings:

1. QGC running on Herelink connecting to the AirUnit.
2. QGC running on any device connected to Herelink's hotspot.

By default (without custom build) only 2. is enabled.

Signed-off-by: Julian Oes <julian@oes.ch>
QGC4.4
Julian Oes 2 years ago committed by Don Gagne
parent
commit
13abdb072b
  1. 9
      src/Settings/VideoSettings.cc
  2. 2
      src/Settings/VideoSettings.h
  3. 6
      src/VideoManager/VideoManager.cc

9
src/Settings/VideoSettings.cc

@ -29,6 +29,8 @@ const char* VideoSettings::videoSourceMPEGTS = QT_TRANSLATE_NOOP("Vid @@ -29,6 +29,8 @@ const char* VideoSettings::videoSourceMPEGTS = QT_TRANSLATE_NOOP("Vid
const char* VideoSettings::videoSource3DRSolo = QT_TRANSLATE_NOOP("VideoSettings", "3DR Solo (requires restart)");
const char* VideoSettings::videoSourceParrotDiscovery = QT_TRANSLATE_NOOP("VideoSettings", "Parrot Discovery");
const char* VideoSettings::videoSourceYuneecMantisG = QT_TRANSLATE_NOOP("VideoSettings", "Yuneec Mantis G");
const char* VideoSettings::videoSourceHerelinkAirUnit = QT_TRANSLATE_NOOP("VideoSettings", "Herelink AirUnit");
const char* VideoSettings::videoSourceHerelinkHotspot = QT_TRANSLATE_NOOP("VideoSettings", "Herelink Hotspot");
DECLARE_SETTINGGROUP(Video, "Video")
{
@ -48,6 +50,13 @@ DECLARE_SETTINGGROUP(Video, "Video") @@ -48,6 +50,13 @@ DECLARE_SETTINGGROUP(Video, "Video")
videoSourceList.append(videoSourceParrotDiscovery);
videoSourceList.append(videoSourceYuneecMantisG);
#endif
#ifdef QGC_HERELINK_AIRUNIT_VIDEO
videoSourceList.append(videoSourceHerelinkAirUnit);
#else
videoSourceList.append(videoSourceHerelinkHotspot);
#endif
#ifndef QGC_DISABLE_UVC
QList<QCameraInfo> cameras = QCameraInfo::availableCameras();
for (const QCameraInfo &cameraInfo: cameras) {

2
src/Settings/VideoSettings.h

@ -73,6 +73,8 @@ public: @@ -73,6 +73,8 @@ public:
static const char* videoSource3DRSolo;
static const char* videoSourceParrotDiscovery;
static const char* videoSourceYuneecMantisG;
static const char* videoSourceHerelinkAirUnit;
static const char* videoSourceHerelinkHotspot;
signals:
void streamConfiguredChanged (bool configured);

6
src/VideoManager/VideoManager.cc

@ -565,6 +565,8 @@ VideoManager::isGStreamer() @@ -565,6 +565,8 @@ VideoManager::isGStreamer()
videoSource == VideoSettings::videoSource3DRSolo ||
videoSource == VideoSettings::videoSourceParrotDiscovery ||
videoSource == VideoSettings::videoSourceYuneecMantisG ||
videoSource == VideoSettings::videoSourceHerelinkAirUnit ||
videoSource == VideoSettings::videoSourceHerelinkHotspot ||
autoStreamConfigured();
#else
return false;
@ -741,6 +743,10 @@ VideoManager::_updateSettings(unsigned id) @@ -741,6 +743,10 @@ VideoManager::_updateSettings(unsigned id)
settingsChanged |= _updateVideoUri(0, QStringLiteral("udp://0.0.0.0:8888"));
else if (source == VideoSettings::videoSourceYuneecMantisG)
settingsChanged |= _updateVideoUri(0, QStringLiteral("rtsp://192.168.42.1:554/live"));
else if (source == VideoSettings::videoSourceHerelinkAirUnit)
settingsChanged |= _updateVideoUri(0, QStringLiteral("rtsp://192.168.0.10:8554/H264Video"));
else if (source == VideoSettings::videoSourceHerelinkHotspot)
settingsChanged |= _updateVideoUri(0, QStringLiteral("rtsp://192.168.43.1:8554/fpv_stream"));
else if (source == VideoSettings::videoDisabled || source == VideoSettings::videoSourceNoVideo)
settingsChanged |= _updateVideoUri(0, "");
else {

Loading…
Cancel
Save