|
QGroundControl
Ground Control Station for MAVLink Drones
|
#include <QtCore/qglobal.h>#include <QtMultimedia/QVideoFrameFormat>#include <gst/gst.h>#include <gst/video/video-info.h>#include <memory>
Include dependency graph for GstHwVideoBufferFactory.h:
This graph shows which files directly or indirectly include this file:Go to the source code of this file.
Classes | |
| struct | HwResolvedPathCache |
| struct | HwVideoBufferContext |
| Platform context for the factory; encapsulates EGL handles so callers don't need path-specific ifdefs. More... | |
Enumerations | |
| enum class | HwVideoBufferPath { None , DmaBuf , GlMemory , D3D11 , D3D12 , IOSurface , AHardwareBuffer , Vulkan } |
| Identifies which GPU path was chosen; used by the adapter to increment the right counter. More... | |
Functions | |
| std::unique_ptr< QHwVideoBuffer > | makeHwVideoBuffer (GstSample *sample, const GstVideoInfo &info, QVideoFrameFormat format, const HwVideoBufferContext &context, HwVideoBufferPath &matchedPath, HwResolvedPathCache *cache=nullptr) |
|
strong |
Identifies which GPU path was chosen; used by the adapter to increment the right counter.
| Enumerator | |
|---|---|
| None | |
| DmaBuf | |
| GlMemory | |
| D3D11 | |
| D3D12 | |
| IOSurface | |
| AHardwareBuffer | |
| Vulkan | |
Definition at line 16 of file GstHwVideoBufferFactory.h.
| std::unique_ptr< QHwVideoBuffer > makeHwVideoBuffer | ( | GstSample * | sample, |
| const GstVideoInfo & | info, | ||
| QVideoFrameFormat | format, | ||
| const HwVideoBufferContext & | context, | ||
| HwVideoBufferPath & | matchedPath, | ||
| HwResolvedPathCache * | cache = nullptr |
||
| ) |
Selects the zero-copy QHwVideoBuffer for a GstSample; returns nullptr when no GPU path matches (CPU memcpy fallback).
Definition at line 210 of file GstHwVideoBufferFactory.cc.
References AHardwareBuffer, D3D11, D3D12, DmaBuf, GlMemory, HwVideoBufferContext::gpuEnabled, GstHwPathTelemetry::ImportUnsupported, IOSurface, GstHwPathTelemetry::NoExt, None, HwResolvedPathCache::path, GstHwPathTelemetry::recordFallbackReason(), GstHwPathTelemetry::UnknownMemType, HwResolvedPathCache::validated, GstHwPathTelemetry::ValidateFailed, and Vulkan.
Referenced by mapSampleToFrame().