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
13class GstGlVideoBuffer final : public GstHwVideoBuffer
14{
15public:
17 GstGlVideoBuffer(GstSample* sample, const GstVideoInfo& videoInfo, const QVideoFrameFormat& format);
18
19 QVideoFrameTexturesUPtr mapTextures(QRhi& rhi, QVideoFrameTexturesUPtr& oldTextures) override;
20 bool validatePlaneHandles() const override;
21
22 const char* storageTag() const override { return "GstGL"; }
23};
24
25#endif // QGC_HAS_GST_GLMEMORY_GPU_PATH
Common base for GStreamer-backed QHwVideoBuffer subclasses.
virtual const char * storageTag() const
Human-readable GPU path identifier (e.g. "DMABuf"); string literal, safe from any thread.
virtual bool validatePlaneHandles() const
Streaming-thread sanity check on per-plane handles; failure routes to CPU memcpy.