5#include <QtCore/QObject>
7#include <QtCore/QTimer>
8#include <QtQmlIntegration/QtQmlIntegration>
Encapsulates the contents of a VIDEO_STREAM_INFORMATION message.
void recordingStarted(const QString &filename)
std::atomic< qint64 > _lastSourceFrameTime
QGCVideoStreamInfo * _videoStreamInfo
void setLowLatency(bool lowLatency)
void setName(const QString &name)
std::atomic< qint64 > _lastVideoFrameTime
void * VideoSinkHandle
Backend-specific decoded-frame sink.
void videoSizeChanged(QSize size)
void streamingChanged(bool active)
void nameChanged(const QString &name)
virtual void stopRecording()=0
virtual void startRecording(const QString &videoFile, FILE_FORMAT format)=0
void rtpJitterLatencyMsChanged(int ms)
static bool isValidStatus(STATUS status)
VideoReceiver(QObject *parent=nullptr)
void lowLatencyChanged(bool lowLatency)
void recordingChanged(bool active)
void sinkChanged(VideoSinkHandle sink)
std::atomic< bool > _decoding
void onStartRecordingComplete(STATUS status)
VideoSinkHandle sink() const
void videoStreamInfoChanged()
virtual void setSink(VideoSinkHandle sink)
virtual void start(uint32_t timeout)=0
void onTakeScreenshotComplete(STATUS status)
bool autoReconnect() const
void decodingChanged(bool active)
void onStartComplete(STATUS status)
void startedChanged(bool started)
virtual void startDecoding(VideoSinkHandle sink)=0
void setStarted(bool started)
void setUri(const QString &uri)
static bool isValidFileFormat(FILE_FORMAT format)
void widgetChanged(QQuickItem *widget)
void onStopDecodingComplete(STATUS status)
virtual void setWidget(QQuickItem *widget)
void setAutoReconnect(bool enabled)
void onStopRecordingComplete(STATUS status)
void uriChanged(const QString &uri)
virtual void stopDecoding()=0
QString recordingOutput() const
void setVideoStreamInfo(QGCVideoStreamInfo *videoStreamInfo)
void onStartDecodingComplete(STATUS status)
void setRtpJitterLatencyMs(int ms)
void onStopComplete(STATUS status)
int rtpJitterLatencyMs() const
virtual void takeScreenshot(const QString &imageFile)=0
QGCVideoStreamInfo * videoStreamInfo()
std::atomic< bool > _autoReconnect
RTSP/UDP auto-reconnect with exponential backoff on watchdog/error.
void autoReconnectChanged(bool enabled)