QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
UVCReceiver Class Reference

#include <UVCReceiver.h>

+ Inheritance diagram for UVCReceiver:
+ Collaboration diagram for UVCReceiver:

Public Slots

void adjustAspectRatio ()
 
- Public Slots inherited from QtMultimediaReceiver
void start (uint32_t timeout) override
 
void stop () override
 
void startDecoding (void *sink) override
 
void stopDecoding () override
 
void startRecording (const QString &videoFile, VideoReceiver::FILE_FORMAT format) override
 
void stopRecording () override
 
void takeScreenshot (const QString &imageFile) override
 
- Public Slots inherited from VideoReceiver
virtual void start (uint32_t timeout)=0
 
virtual void stop ()=0
 
virtual void startDecoding (void *sink)=0
 
virtual void stopDecoding ()=0
 
virtual void startRecording (const QString &videoFile, FILE_FORMAT format)=0
 
virtual void stopRecording ()=0
 
virtual void takeScreenshot (const QString &imageFile)=0
 

Public Member Functions

 UVCReceiver (QObject *parent=nullptr)
 
 ~UVCReceiver ()
 
- Public Member Functions inherited from QtMultimediaReceiver
 QtMultimediaReceiver (QObject *parent=nullptr)
 
virtual ~QtMultimediaReceiver ()
 
- Public Member Functions inherited from VideoReceiver
 VideoReceiver (QObject *parent=nullptr)
 
bool isThermal () const
 
void * sink ()
 
QQuickItem * widget ()
 
QString name () const
 
QString uri () const
 
bool started () const
 
bool lowLatency () const
 
QGCVideoStreamInfovideoStreamInfo ()
 
QString recordingOutput () const
 
virtual void setSink (void *sink)
 
virtual void setWidget (QQuickItem *widget)
 
void setName (const QString &name)
 
void setUri (const QString &uri)
 
void setStarted (bool started)
 
void setLowLatency (bool lowLatency)
 
void setVideoStreamInfo (QGCVideoStreamInfo *videoStreamInfo)
 

Static Public Member Functions

static bool enabled ()
 
static QCameraDevice findCameraDevice (const QString &cameraId)
 
static void checkPermission ()
 
static QString getSourceId ()
 
static bool deviceExists (const QString &device)
 
static QStringList getDeviceNameList ()
 
- Static Public Member Functions inherited from QtMultimediaReceiver
static bool enabled ()
 
static void * createVideoSink (QQuickItem *widget, QObject *parent=nullptr)
 
static void releaseVideoSink (void *sink)
 
static VideoReceivercreateVideoReceiver (QObject *parent)
 
- Static Public Member Functions inherited from VideoReceiver
static bool isValidFileFormat (FILE_FORMAT format)
 
static bool isValidStatus (STATUS status)
 

Additional Inherited Members

- Public Types inherited from VideoReceiver
enum  FILE_FORMAT {
  FILE_FORMAT_MIN = 0 , FILE_FORMAT_MKV = FILE_FORMAT_MIN , FILE_FORMAT_MOV , FILE_FORMAT_MP4 ,
  FILE_FORMAT_MAX = FILE_FORMAT_MP4
}
 
enum  STATUS {
  STATUS_MIN = 0 , STATUS_OK = STATUS_MIN , STATUS_FAIL , STATUS_INVALID_STATE ,
  STATUS_INVALID_URL , STATUS_NOT_IMPLEMENTED , STATUS_MAX = STATUS_NOT_IMPLEMENTED
}
 
- Signals inherited from VideoReceiver
void timeout ()
 
void streamingChanged (bool active)
 
void decodingChanged (bool active)
 
void recordingChanged (bool active)
 
void recordingStarted (const QString &filename)
 
void videoSizeChanged (QSize size)
 
void sinkChanged (void *sink)
 
void nameChanged (const QString &name)
 
void uriChanged (const QString &uri)
 
void startedChanged (bool started)
 
void lowLatencyChanged (bool lowLatency)
 
void videoStreamInfoChanged ()
 
void widgetChanged (QQuickItem *widget)
 
void onStartComplete (STATUS status)
 
void onStopComplete (STATUS status)
 
void onStartDecodingComplete (STATUS status)
 
void onStopDecodingComplete (STATUS status)
 
void onStartRecordingComplete (STATUS status)
 
void onStopRecordingComplete (STATUS status)
 
void onTakeScreenshotComplete (STATUS status)
 
- Protected Attributes inherited from QtMultimediaReceiver
QTimer _frameTimer
 
QMediaPlayer * _mediaPlayer = nullptr
 
QVideoSink * _videoSink = nullptr
 
QMediaCaptureSession * _captureSession = nullptr
 
QMediaRecorder * _mediaRecorder = nullptr
 
QMetaObject::Connection _videoSizeUpdater
 
QMetaObject::Connection _videoFrameUpdater
 
QRhi * _rhi = nullptr
 
const QIODevice * _streamDevice
 
QQuickVideoOutput * _videoOutput = nullptr
 
- Protected Attributes inherited from VideoReceiver
void * _sink = nullptr
 
QQuickItem * _widget = nullptr
 
QGCVideoStreamInfo_videoStreamInfo = nullptr
 
QString _name
 
QString _uri
 
bool _started = false
 
bool _decoding = false
 
bool _recording = false
 
bool _streaming = false
 
bool _lowLatency = false
 
bool _resetVideoSink = false
 
bool _endOfStream = false
 
bool _removingDecoder = false
 
bool _removingRecorder = false
 
int _buffer = 0
 
qint64 _lastSourceFrameTime = 0
 
qint64 _lastVideoFrameTime = 0
 
QTimer _watchdogTimer
 
uint32_t _signalDepth = 0
 
uint32_t _timeout = 0
 
QString _recordingOutput
 

Detailed Description

Definition at line 14 of file UVCReceiver.h.

Constructor & Destructor Documentation

◆ UVCReceiver()

UVCReceiver::UVCReceiver ( QObject *  parent = nullptr)
explicit

Definition at line 19 of file UVCReceiver.cc.

◆ ~UVCReceiver()

UVCReceiver::~UVCReceiver ( )

Definition at line 38 of file UVCReceiver.cc.

Member Function Documentation

◆ adjustAspectRatio

void UVCReceiver::adjustAspectRatio ( )
slot

Definition at line 52 of file UVCReceiver.cc.

References QtMultimediaReceiver::_videoOutput.

◆ checkPermission()

void UVCReceiver::checkPermission ( )
static

Definition at line 85 of file UVCReceiver.cc.

References qApp, and qgcApp.

◆ deviceExists()

bool UVCReceiver::deviceExists ( const QString &  device)
static

Definition at line 110 of file UVCReceiver.cc.

References findCameraDevice().

◆ enabled()

bool UVCReceiver::enabled ( )
static

Definition at line 43 of file UVCReceiver.cc.

◆ findCameraDevice()

QCameraDevice UVCReceiver::findCameraDevice ( const QString &  cameraId)
static

Definition at line 73 of file UVCReceiver.cc.

Referenced by deviceExists(), and getSourceId().

◆ getDeviceNameList()

QStringList UVCReceiver::getDeviceNameList ( )
static

Definition at line 115 of file UVCReceiver.cc.

Referenced by VideoSettings::VideoSettings().

◆ getSourceId()

QString UVCReceiver::getSourceId ( )
static

Definition at line 97 of file UVCReceiver.cc.

References findCameraDevice(), and VideoSettings::videoSource().


The documentation for this class was generated from the following files: