Qt
Internal/Contributor docs for the Qt SDK. <b>Note:</b> These are NOT official API docs; those are found <a href='https://doc.qt.io/'>here</a>.
Loading...
Searching...
No Matches
qhwvideobuffer_p.h
Go to the documentation of this file.
1
// Copyright (C) 2024 The Qt Company Ltd.
2
// SPDX-License-Identifier: LicenseRef-Qt-Commercial OR LGPL-3.0-only OR GPL-2.0-only OR GPL-3.0-only
3
4
#ifndef QHWVIDEOBUFFER_P_H
5
#define QHWVIDEOBUFFER_P_H
6
7
//
8
// W A R N I N G
9
// -------------
10
//
11
// This file is not part of the Qt API. It exists purely as an
12
// implementation detail. This header file may change from version to
13
// version without notice, or even be removed.
14
//
15
// We mean it.
16
//
17
18
#include "
qabstractvideobuffer.h
"
19
#include "
qvideoframe.h
"
20
21
#include <QtGui/qmatrix4x4.h>
22
23
QT_BEGIN_NAMESPACE
24
25
class
QRhi
;
26
class
QRhiTexture
;
27
28
class
Q_MULTIMEDIA_EXPORT
QVideoFrameTextures
29
{
30
public
:
31
virtual
~QVideoFrameTextures
();
32
virtual
QRhiTexture
*
texture
(
uint
plane)
const
= 0;
33
};
34
35
class
Q_MULTIMEDIA_EXPORT
QHwVideoBuffer
:
public
QAbstractVideoBuffer
36
{
37
public
:
38
QHwVideoBuffer
(
QVideoFrame::HandleType
type
,
QRhi
*rhi =
nullptr
);
39
40
~QHwVideoBuffer
()
override
;
41
42
QVideoFrame::HandleType
handleType
()
const
{
return
m_type; }
43
QRhi
*
rhi
()
const
{
return
m_rhi; }
44
45
QVideoFrameFormat
format
()
const override
{
return
{}; }
46
47
virtual
std::unique_ptr<QVideoFrameTextures>
mapTextures
(
QRhi
*) {
return
{}; }
48
virtual
quint64
textureHandle
(
QRhi
*,
int
/*plane*/
)
const
{
return
0; }
49
virtual
QMatrix4x4
externalTextureMatrix
()
const
{
return
{}; }
50
51
protected
:
52
QVideoFrame::HandleType
m_type
;
53
QRhi
*m_rhi =
nullptr
;
54
};
55
56
QT_END_NAMESPACE
57
58
#endif
// QHWVIDEOBUFFER_P_H
QAbstractVideoBuffer
The QAbstractVideoBuffer class is an abstraction for video data. \inmodule QtMultimedia.
Definition
qabstractvideobuffer.h:14
QHwVideoBuffer
Definition
qhwvideobuffer_p.h:36
QHwVideoBuffer::mapTextures
virtual std::unique_ptr< QVideoFrameTextures > mapTextures(QRhi *)
Definition
qhwvideobuffer_p.h:47
QHwVideoBuffer::rhi
QRhi * rhi() const
Definition
qhwvideobuffer_p.h:43
QHwVideoBuffer::~QHwVideoBuffer
~QHwVideoBuffer() override
QHwVideoBuffer::textureHandle
virtual quint64 textureHandle(QRhi *, int) const
Definition
qhwvideobuffer_p.h:48
QHwVideoBuffer::format
QVideoFrameFormat format() const override
Gets \l QVideoFrameFormat of the underlying video buffer.
Definition
qhwvideobuffer_p.h:45
QHwVideoBuffer::externalTextureMatrix
virtual QMatrix4x4 externalTextureMatrix() const
Definition
qhwvideobuffer_p.h:49
QHwVideoBuffer::m_type
QVideoFrame::HandleType m_type
Definition
qhwvideobuffer_p.h:52
QHwVideoBuffer::handleType
QVideoFrame::HandleType handleType() const
Definition
qhwvideobuffer_p.h:42
QMatrix4x4
The QMatrix4x4 class represents a 4x4 transformation matrix in 3D space.
Definition
qmatrix4x4.h:25
QRhiTexture
\inmodule QtGui
Definition
qrhi.h:895
QRhi
\inmodule QtGuiPrivate \inheaderfile rhi/qrhi.h
Definition
qrhi.h:1805
QVideoFrameFormat
The QVideoFrameFormat class specifies the stream format of a video presentation surface.
Definition
qvideoframeformat.h:28
QVideoFrameTextures
Definition
qhwvideobuffer_p.h:29
QVideoFrameTextures::texture
virtual QRhiTexture * texture(uint plane) const =0
QVideoFrameTextures::~QVideoFrameTextures
virtual ~QVideoFrameTextures()
QVideoFrame::HandleType
HandleType
Identifies the type of a video buffers handle.
Definition
qvideoframe.h:32
QT_BEGIN_NAMESPACE
Combined button and popup list for selecting options.
Definition
qstandardpaths_haiku.cpp:21
QT_END_NAMESPACE
Definition
qsharedpointer.cpp:1590
qabstractvideobuffer.h
type
GLenum type
Definition
qopengles2ext.h:150
quint64
unsigned long long quint64
Definition
qtypes.h:61
uint
unsigned int uint
Definition
qtypes.h:34
qvideoframe.h
qtmultimedia
src
multimedia
video
qhwvideobuffer_p.h
Generated by
1.10.0