36 template <
typename Buffer>
44 template <
typename Buffer = QAbstractV
ideoBuffer>
48 if constexpr (std::is_base_of_v<QHwVideoBuffer, Buffer>)
50 else if constexpr (std::is_same_v<QAbstractVideoBuffer, Buffer>)
59 return frame.d ?
frame.d->hwVideoBuffer :
nullptr;
64 return frame.d ?
frame.d->videoBuffer.get() :
nullptr;
The QAbstractVideoBuffer class is an abstraction for video data. \inmodule QtMultimedia.
void reset(T *ptr=nullptr) noexcept
\macro QT_RESTRICTED_CAST_FROM_ASCII
static QVideoFramePrivate * handle(QVideoFrame &frame)
static QAbstractVideoBuffer * buffer(const QVideoFrame &frame)
QAbstractVideoBuffer::MapData mapData
QVideoFramePrivate()=default
QHwVideoBuffer * hwVideoBuffer
QVideoFrame adoptThisByVideoFrame()
static QVideoFrame createFrame(std::unique_ptr< Buffer > buffer, QVideoFrameFormat format)
std::unique_ptr< QAbstractVideoBuffer > videoBuffer
QVideoFramePrivate(QVideoFrameFormat format, std::unique_ptr< Buffer > buffer=nullptr)
static QHwVideoBuffer * hwBuffer(const QVideoFrame &frame)
The QVideoFrame class represents a frame of video data.
Combined button and popup list for selecting options.
MapMode
Enumerates how a video buffer's data is mapped to system memory.
GLint GLsizei GLsizei GLenum format
The QAbstractVideoBuffer::MapData structure describes the mapped plane layout.
\inmodule QtCore \threadsafe