Qt
Internal/Contributor docs for the Qt SDK. Note: These are NOT official API docs; those are found at https://doc.qt.io/
Loading...
Searching...
No Matches
QVideoWindowPrivate Class Reference

#include <qvideowindow_p.h>

Collaboration diagram for QVideoWindowPrivate:

Public Member Functions

 QVideoWindowPrivate (QVideoWindow *q)
 ~QVideoWindowPrivate ()
bool canRender () const
QRhirhi () const
void init ()
void render ()
void initRhi ()
void resizeSwapChain ()
void releaseSwapChain ()
void updateTextures (QRhiResourceUpdateBatch *rub)
void updateSubtitle (QRhiResourceUpdateBatch *rub, const QSize &frameSize)
void setupGraphicsPipeline (QRhiGraphicsPipeline *pipeline, QRhiShaderResourceBindings *bindings, const QVideoFrameFormat &fmt)

Public Attributes

QVideoWindowq = nullptr
Qt::AspectRatioMode aspectRatioMode = Qt::KeepAspectRatio
QBackingStorebackingStore = nullptr
std::unique_ptr< QRhim_rhi
std::unique_ptr< QRhiSwapChainm_swapChain
std::unique_ptr< QRhiRenderPassDescriptorm_renderPass
std::unique_ptr< QRhiBufferm_vertexBuf
bool m_vertexBufReady = false
std::unique_ptr< QRhiBufferm_uniformBuf
std::unique_ptr< QRhiSamplerm_textureSampler
std::unique_ptr< QRhiShaderResourceBindingsm_shaderResourceBindings
std::unique_ptr< QRhiGraphicsPipelinem_graphicsPipeline
std::unique_ptr< QRhiTexturem_subtitleTexture
std::unique_ptr< QRhiShaderResourceBindingsm_subtitleResourceBindings
std::unique_ptr< QRhiGraphicsPipelinem_subtitlePipeline
std::unique_ptr< QRhiBufferm_subtitleUniformBuf
std::unique_ptr< QVideoSinkm_sink
QRhi::Implementation m_graphicsApi = QRhi::Null
QVideoTextureHelper::SubtitleLayout m_subtitleLayout
QVideoFrameTexturePool m_texturePool
bool initialized = false
bool isExposed = false
bool m_useRhi = true
bool m_hasSwapChain = false
bool m_subtitleDirty = false
bool m_hasSubtitle = false
QVideoFrameFormat format

Detailed Description

Definition at line 32 of file qvideowindow_p.h.

Constructor & Destructor Documentation

◆ QVideoWindowPrivate()

QVideoWindowPrivate::QVideoWindowPrivate ( QVideoWindow * q)

Definition at line 36 of file qvideowindow.cpp.

◆ ~QVideoWindowPrivate()

QVideoWindowPrivate::~QVideoWindowPrivate ( )

Definition at line 70 of file qvideowindow.cpp.

Member Function Documentation

◆ canRender()

bool QVideoWindowPrivate::canRender ( ) const
inline

Definition at line 36 of file qvideowindow_p.h.

References m_useRhi.

◆ init()

void QVideoWindowPrivate::init ( )

Definition at line 279 of file qvideowindow.cpp.

References initialized, and initRhi().

Referenced by render().

Here is the call graph for this function:
Here is the caller graph for this function:

◆ initRhi()

void QVideoWindowPrivate::initRhi ( )

Definition at line 110 of file qvideowindow.cpp.

References m_vertexBufReady.

Referenced by init().

Here is the caller graph for this function:

◆ releaseSwapChain()

void QVideoWindowPrivate::releaseSwapChain ( )

Definition at line 298 of file qvideowindow.cpp.

References m_hasSwapChain.

Referenced by render().

Here is the caller graph for this function:

◆ render()

void QVideoWindowPrivate::render ( )

Definition at line 306 of file qvideowindow.cpp.

References QRhiSwapChainHdrInfo::ColorComponentValue, init(), initialized, isExposed, m_hasSubtitle, m_hasSwapChain, m_vertexBufReady, q, QPaintEngine::QPainter, releaseSwapChain(), resizeSwapChain(), updateSubtitle(), and updateTextures().

Here is the call graph for this function:

◆ resizeSwapChain()

void QVideoWindowPrivate::resizeSwapChain ( )

Definition at line 293 of file qvideowindow.cpp.

Referenced by render().

Here is the caller graph for this function:

◆ rhi()

QRhi * QVideoWindowPrivate::rhi ( ) const
inline

Definition at line 38 of file qvideowindow_p.h.

◆ setupGraphicsPipeline()

void QVideoWindowPrivate::setupGraphicsPipeline ( QRhiGraphicsPipeline * pipeline,
QRhiShaderResourceBindings * bindings,
const QVideoFrameFormat & fmt )

Definition at line 177 of file qvideowindow.cpp.

◆ updateSubtitle()

void QVideoWindowPrivate::updateSubtitle ( QRhiResourceUpdateBatch * rub,
const QSize & frameSize )

Definition at line 243 of file qvideowindow.cpp.

References m_hasSubtitle, and m_subtitleDirty.

Referenced by render().

Here is the caller graph for this function:

◆ updateTextures()

void QVideoWindowPrivate::updateTextures ( QRhiResourceUpdateBatch * rub)

Definition at line 204 of file qvideowindow.cpp.

Referenced by render().

Here is the caller graph for this function:

Member Data Documentation

◆ aspectRatioMode

Qt::AspectRatioMode QVideoWindowPrivate::aspectRatioMode = Qt::KeepAspectRatio

Definition at line 54 of file qvideowindow_p.h.

◆ backingStore

QBackingStore* QVideoWindowPrivate::backingStore = nullptr

Definition at line 56 of file qvideowindow_p.h.

◆ format

QVideoFrameFormat QVideoWindowPrivate::format

Definition at line 88 of file qvideowindow_p.h.

◆ initialized

bool QVideoWindowPrivate::initialized = false

Definition at line 82 of file qvideowindow_p.h.

Referenced by init(), and render().

◆ isExposed

bool QVideoWindowPrivate::isExposed = false

Definition at line 83 of file qvideowindow_p.h.

Referenced by render().

◆ m_graphicsApi

QRhi::Implementation QVideoWindowPrivate::m_graphicsApi = QRhi::Null

Definition at line 78 of file qvideowindow_p.h.

◆ m_graphicsPipeline

std::unique_ptr<QRhiGraphicsPipeline> QVideoWindowPrivate::m_graphicsPipeline

Definition at line 70 of file qvideowindow_p.h.

◆ m_hasSubtitle

bool QVideoWindowPrivate::m_hasSubtitle = false

Definition at line 87 of file qvideowindow_p.h.

Referenced by render(), and updateSubtitle().

◆ m_hasSwapChain

bool QVideoWindowPrivate::m_hasSwapChain = false

Definition at line 85 of file qvideowindow_p.h.

Referenced by releaseSwapChain(), and render().

◆ m_renderPass

std::unique_ptr<QRhiRenderPassDescriptor> QVideoWindowPrivate::m_renderPass

Definition at line 63 of file qvideowindow_p.h.

◆ m_rhi

std::unique_ptr<QRhi> QVideoWindowPrivate::m_rhi

Definition at line 61 of file qvideowindow_p.h.

◆ m_shaderResourceBindings

std::unique_ptr<QRhiShaderResourceBindings> QVideoWindowPrivate::m_shaderResourceBindings

Definition at line 69 of file qvideowindow_p.h.

◆ m_sink

std::unique_ptr<QVideoSink> QVideoWindowPrivate::m_sink

Definition at line 77 of file qvideowindow_p.h.

◆ m_subtitleDirty

bool QVideoWindowPrivate::m_subtitleDirty = false

Definition at line 86 of file qvideowindow_p.h.

Referenced by updateSubtitle().

◆ m_subtitleLayout

QVideoTextureHelper::SubtitleLayout QVideoWindowPrivate::m_subtitleLayout

Definition at line 79 of file qvideowindow_p.h.

◆ m_subtitlePipeline

std::unique_ptr<QRhiGraphicsPipeline> QVideoWindowPrivate::m_subtitlePipeline

Definition at line 74 of file qvideowindow_p.h.

◆ m_subtitleResourceBindings

std::unique_ptr<QRhiShaderResourceBindings> QVideoWindowPrivate::m_subtitleResourceBindings

Definition at line 73 of file qvideowindow_p.h.

◆ m_subtitleTexture

std::unique_ptr<QRhiTexture> QVideoWindowPrivate::m_subtitleTexture

Definition at line 72 of file qvideowindow_p.h.

◆ m_subtitleUniformBuf

std::unique_ptr<QRhiBuffer> QVideoWindowPrivate::m_subtitleUniformBuf

Definition at line 75 of file qvideowindow_p.h.

◆ m_swapChain

std::unique_ptr<QRhiSwapChain> QVideoWindowPrivate::m_swapChain

Definition at line 62 of file qvideowindow_p.h.

◆ m_texturePool

QVideoFrameTexturePool QVideoWindowPrivate::m_texturePool

Definition at line 80 of file qvideowindow_p.h.

◆ m_textureSampler

std::unique_ptr<QRhiSampler> QVideoWindowPrivate::m_textureSampler

Definition at line 68 of file qvideowindow_p.h.

◆ m_uniformBuf

std::unique_ptr<QRhiBuffer> QVideoWindowPrivate::m_uniformBuf

Definition at line 67 of file qvideowindow_p.h.

◆ m_useRhi

bool QVideoWindowPrivate::m_useRhi = true

Definition at line 84 of file qvideowindow_p.h.

Referenced by canRender().

◆ m_vertexBuf

std::unique_ptr<QRhiBuffer> QVideoWindowPrivate::m_vertexBuf

Definition at line 65 of file qvideowindow_p.h.

◆ m_vertexBufReady

bool QVideoWindowPrivate::m_vertexBufReady = false

Definition at line 66 of file qvideowindow_p.h.

Referenced by initRhi(), and render().

◆ q

QVideoWindow* QVideoWindowPrivate::q = nullptr

Definition at line 53 of file qvideowindow_p.h.

Referenced by render().


The documentation for this class was generated from the following files: