Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
CRendererHQ Class Reference

#include <RendererHQ.h>

Inheritance diagram for CRendererHQ:
CRendererBase CRendererDXVA CRendererShaders

Public Member Functions

bool Supports (ESCALINGMETHOD method) const override
 
- Public Member Functions inherited from CRendererBase
virtual ~CRendererBase ()
 
virtual CRenderInfo GetRenderInfo ()
 
virtual bool Configure (const VideoPicture &picture, float fps, unsigned int orientation)
 
virtual bool Supports (ERENDERFEATURE feature) const
 
virtual bool WantsDoublePass ()
 
virtual bool NeedBuffer (int idx)
 
void AddVideoPicture (const VideoPicture &picture, int index)
 
void Render (int index, int index2, CD3DTexture &target, const CRect &sourceRect, const CRect &destRect, const CRect &viewRect, unsigned flags)
 
void Render (CD3DTexture &target, const CRect &sourceRect, const CRect &destRect, const CRect &viewRect, unsigned flags=0)
 
void ManageTextures ()
 
int NextBuffer () const
 
void ReleaseBuffer (int idx)
 
bool Flush (bool saveBuffers)
 
void SetBufferSize (int numBuffers)
 
DEBUG_INFO_VIDEO GetDebugInfo (int idx)
 

Protected Member Functions

 CRendererHQ (CVideoSettings &videoSettings)
 
virtual ~CRendererHQ ()=default
 
void OnOutputReset () override
 
void CheckVideoParameters () override
 
void UpdateVideoFilters () override
 
void FinalOutput (CD3DTexture &source, CD3DTexture &target, const CRect &sourceRect, const CPoint(&destPoints)[4]) override
 
void SelectPSVideoFilter ()
 
bool HasHQScaler () const
 
- Protected Member Functions inherited from CRendererBase
 CRendererBase (CVideoSettings &videoSettings)
 
bool CreateIntermediateTarget (unsigned int width, unsigned int height, bool dynamic=false, DXGI_FORMAT format=DXGI_FORMAT_UNKNOWN)
 
void OnCMSConfigChanged (AVColorPrimaries srcPrimaries)
 
void ReorderDrawPoints (const CRect &destRect, CPoint(&rotatedPoints)[4]) const
 
bool CreateRenderBuffer (int index)
 
void DeleteRenderBuffer (int index)
 
void ProcessHDR (CRenderBuffer *rb)
 
bool ActualRenderAsHDR ()
 Call after rendering has started to find out if the output is configured as SDR or HDR.
 
virtual void RenderImpl (CD3DTexture &target, CRect &sourceRect, CPoint(&destPoints)[4], uint32_t flags)=0
 
virtual CRenderBufferCreateBuffer ()=0
 
virtual void OnViewSizeChanged ()
 
virtual std::string GetRenderMethodDebugInfo () const
 

Protected Attributes

ESCALINGMETHOD m_scalingMethod = VS_SCALINGMETHOD_AUTO
 
ESCALINGMETHOD m_scalingMethodGui = VS_SCALINGMETHOD_AUTO
 
std::unique_ptr< CConvolutionShaderm_scalerShader = nullptr
 
bool m_bUseHQScaler = false
 
- Protected Attributes inherited from CRendererBase
bool m_toneMapping = false
 
bool m_useDithering = false
 
bool m_cmsOn = false
 
bool m_lutIsLoading = false
 
bool m_useHLGtoPQ = false
 
ETONEMAPMETHOD m_toneMapMethod = VS_TONEMAPMETHOD_OFF
 
int m_iBufferIndex = 0
 
int m_iNumBuffers = 0
 
int m_iBuffersRequired = 0
 
int m_ditherDepth = 0
 
int m_cmsToken = -1
 
int m_lutSize = 0
 
unsigned m_sourceWidth = 0
 
unsigned m_sourceHeight = 0
 
unsigned m_viewWidth = 0
 
unsigned m_viewHeight = 0
 
unsigned m_renderOrientation = 0
 
float m_fps = 0.0f
 
uint64_t m_frameIdx = 0
 
AVPixelFormat m_format = AV_PIX_FMT_NONE
 
CD3DTexture m_IntermediateTarget
 
std::shared_ptr< COutputShaderm_outputShader
 
std::unique_ptr< CColorManagerm_colorManager
 
Microsoft::WRL::ComPtr< ID3D11ShaderResourceView > m_pLUTView
 
CVideoSettingsm_videoSettings
 
std::map< int, CRenderBuffer * > m_renderBuffers
 
DXGI_HDR_METADATA_HDR10 m_lastHdr10 = {}
 
HDR_TYPE m_HdrType = HDR_TYPE::HDR_INVALID
 
bool m_AutoSwitchHDR = false
 
bool m_initialHdrEnabled = false
 
std::string m_renderMethodName
 

Additional Inherited Members

- Static Public Member Functions inherited from CRendererBase
static DXGI_FORMAT GetDXGIFormat (const VideoPicture &picture)
 
static DXGI_FORMAT GetDXGIFormat (CVideoBuffer *videoBuffer)
 
static AVPixelFormat GetAVFormat (DXGI_FORMAT dxgi_format)
 
static DXGI_HDR_METADATA_HDR10 GetDXGIHDR10MetaData (CRenderBuffer *rb)
 
- Static Protected Member Functions inherited from CRendererBase
static bool IntendToRenderAsHDR (const VideoPicture &picture)
 Call before rendering begins to find out if rendering will be attempted as SDR or HDR.
 

Constructor & Destructor Documentation

◆ CRendererHQ()

CRendererHQ::CRendererHQ ( CVideoSettings & videoSettings)
inlineexplicitprotected

◆ ~CRendererHQ()

virtual CRendererHQ::~CRendererHQ ( )
protectedvirtualdefault

Member Function Documentation

◆ CheckVideoParameters()

void CRendererHQ::CheckVideoParameters ( )
overrideprotectedvirtual

Reimplemented from CRendererBase.

Reimplemented in CRendererShaders.

◆ FinalOutput()

void CRendererHQ::FinalOutput ( CD3DTexture & source,
CD3DTexture & target,
const CRect & sourceRect,
const CPoint(&) destPoints[4] )
overrideprotectedvirtual

Reimplemented from CRendererBase.

◆ HasHQScaler()

bool CRendererHQ::HasHQScaler ( ) const
protected

◆ OnOutputReset()

void CRendererHQ::OnOutputReset ( )
overrideprotectedvirtual

Reimplemented from CRendererBase.

◆ SelectPSVideoFilter()

void CRendererHQ::SelectPSVideoFilter ( )
protected

◆ Supports()

bool CRendererHQ::Supports ( ESCALINGMETHOD method) const
overridevirtual

Implements CRendererBase.

Reimplemented in CRendererShaders.

◆ UpdateVideoFilters()

void CRendererHQ::UpdateVideoFilters ( )
overrideprotectedvirtual

Reimplemented from CRendererBase.

Reimplemented in CRendererShaders.

Member Data Documentation

◆ m_bUseHQScaler

bool CRendererHQ::m_bUseHQScaler = false
protected

◆ m_scalerShader

std::unique_ptr<CConvolutionShader> CRendererHQ::m_scalerShader = nullptr
protected

◆ m_scalingMethod

ESCALINGMETHOD CRendererHQ::m_scalingMethod = VS_SCALINGMETHOD_AUTO
protected

◆ m_scalingMethodGui

ESCALINGMETHOD CRendererHQ::m_scalingMethodGui = VS_SCALINGMETHOD_AUTO
protected

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