QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
GstGlVideoBuffer.h
Go to the documentation of this file.
1#pragma once
2
3#include <QtCore/qglobal.h>
4
5#if defined(QGC_HAS_GST_GLMEMORY_GPU_PATH)
6
7#include "GstHwVideoBuffer.h"
8
9class QRhi;
10
15class GstGlVideoBuffer final : public GstHwVideoBuffer
16{
17public:
19 GstGlVideoBuffer(GstSample *sample,
20 const GstVideoInfo &videoInfo,
21 const QVideoFrameFormat &format);
22 ~GstGlVideoBuffer() override;
23
24 MapData map(QVideoFrame::MapMode mode) override;
25 QVideoFrameTexturesUPtr mapTextures(QRhi &rhi, QVideoFrameTexturesUPtr &oldTextures) override;
26 bool validatePlaneHandles() const override;
27
30 static quint64 takeMapFailureCount();
31 static quint64 peekMapFailureCount();
32
35 static quint64 takeTextureReuseHits();
36 static quint64 peekTextureReuseHits();
37
41 static quint64 takeSyncWaitCounts(quint64 &gpuWaits);
42};
43
44#endif // QGC_HAS_GST_GLMEMORY_GPU_PATH
virtual bool validatePlaneHandles() const