QGroundControl
Ground Control Station for MAVLink Drones
Loading...
Searching...
No Matches
GstAHardwareBufferVideoBuffer.h
Go to the documentation of this file.
1#pragma once
2
3#include <QtCore/qglobal.h>
4
5#if defined(QGC_HAS_GST_AHARDWAREBUFFER_GPU_PATH)
6
7#include "GstHwVideoBuffer.h"
8
9#include <EGL/egl.h>
10
11class QRhi;
12
17class GstAHardwareBufferVideoBuffer final : public GstHwVideoBuffer
18{
19public:
20 GstAHardwareBufferVideoBuffer(GstSample *sample,
21 const GstVideoInfo &videoInfo,
22 const QVideoFrameFormat &format,
23 EGLDisplay eglDisplay);
24 ~GstAHardwareBufferVideoBuffer() override;
25
26 MapData map(QVideoFrame::MapMode mode) override;
27 QVideoFrameTexturesUPtr mapTextures(QRhi &rhi, QVideoFrameTexturesUPtr &oldTextures) override;
28 bool validatePlaneHandles() const override;
29
30 static quint64 takeMapFailureCount();
31 static quint64 peekMapFailureCount();
32
33private:
34 EGLDisplay _eglDisplay = EGL_NO_DISPLAY;
35};
36
37#endif // QGC_HAS_GST_AHARDWAREBUFFER_GPU_PATH
virtual bool validatePlaneHandles() const