From b41a6b9ae5accb00003032265fb08a4b6422c311 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matej=20Fran=C4=8De=C5=A1kin?= Date: Sun, 12 May 2019 11:33:40 +0200 Subject: [PATCH] Configure Video Stream: Add bit rate, frame rate and video encoding parameters --- src/Camera/QGCCameraControl.cc | 24 ++++++++++++++++++++++++ src/Camera/QGCCameraControl.h | 9 +++++++++ 2 files changed, 33 insertions(+) diff --git a/src/Camera/QGCCameraControl.cc b/src/Camera/QGCCameraControl.cc index 780b19293..f7aab027b 100644 --- a/src/Camera/QGCCameraControl.cc +++ b/src/Camera/QGCCameraControl.cc @@ -70,6 +70,9 @@ const char* QGCCameraControl::kCAM_SHUTTERSPD = "CAM_SHUTTERSPD"; const char* QGCCameraControl::kCAM_APERTURE = "CAM_APERTURE"; const char* QGCCameraControl::kCAM_WBMODE = "CAM_WBMODE"; const char* QGCCameraControl::kCAM_MODE = "CAM_MODE"; +const char* QGCCameraControl::kCAM_BITRATE = "CAM_BITRATE"; +const char* QGCCameraControl::kCAM_FPS = "CAM_FPS"; +const char* QGCCameraControl::kCAM_ENC = "CAM_ENC"; //----------------------------------------------------------------------------- QGCCameraOptionExclusion::QGCCameraOptionExclusion(QObject* parent, QString param_, QString value_, QStringList exclusions_) @@ -2105,6 +2108,27 @@ QGCCameraControl::mode() return _paramComplete ? getFact(kCAM_MODE) : nullptr; } +//----------------------------------------------------------------------------- +Fact* +QGCCameraControl::bitRate() +{ + return _paramComplete ? getFact(kCAM_BITRATE) : nullptr; +} + +//----------------------------------------------------------------------------- +Fact* +QGCCameraControl::frameRate() +{ + return _paramComplete ? getFact(kCAM_FPS) : nullptr; +} + +//----------------------------------------------------------------------------- +Fact* +QGCCameraControl::videoEncoding() +{ + return _paramComplete ? getFact(kCAM_ENC) : nullptr; +} + //----------------------------------------------------------------------------- QGCVideoStreamInfo::QGCVideoStreamInfo(QObject* parent, const mavlink_video_stream_information_t *si) : QObject(parent) diff --git a/src/Camera/QGCCameraControl.h b/src/Camera/QGCCameraControl.h index a65fd801d..d0a21df0c 100644 --- a/src/Camera/QGCCameraControl.h +++ b/src/Camera/QGCCameraControl.h @@ -167,6 +167,9 @@ public: Q_PROPERTY(Fact* aperture READ aperture NOTIFY parametersReady) Q_PROPERTY(Fact* wb READ wb NOTIFY parametersReady) Q_PROPERTY(Fact* mode READ mode NOTIFY parametersReady) + Q_PROPERTY(Fact* bitRate READ bitRate NOTIFY parametersReady) + Q_PROPERTY(Fact* frameRate READ frameRate NOTIFY parametersReady) + Q_PROPERTY(Fact* videoEncoding READ videoEncoding NOTIFY parametersReady) Q_PROPERTY(QStringList activeSettings READ activeSettings NOTIFY activeSettingsChanged) Q_PROPERTY(VideoStatus videoStatus READ videoStatus NOTIFY videoStatusChanged) @@ -252,6 +255,9 @@ public: virtual Fact* aperture (); virtual Fact* wb (); virtual Fact* mode (); + virtual Fact* bitRate (); + virtual Fact* frameRate (); + virtual Fact* videoEncoding (); //-- Stream names to show the user (for selection) virtual QStringList streamLabels () { return _streamLabels; } @@ -292,6 +298,9 @@ public: static const char* kCAM_APERTURE; static const char* kCAM_WBMODE; static const char* kCAM_MODE; + static const char* kCAM_BITRATE; + static const char* kCAM_FPS; + static const char* kCAM_ENC; signals: void infoChanged (); -- 2.22.0