Kodi Docs 20.0
Kodi is an open source media player and entertainment hub.
CRendererSoftware Class Reference

#include <RendererSoftware.h>

Inheritance diagram for CRendererSoftware:
CRendererBase

Classes

class  CRenderBufferImpl
 

Public Member Functions

 ~CRendererSoftware ()
 
bool Configure (const VideoPicture &picture, float fps, unsigned orientation) override
 
bool Supports (ESCALINGMETHOD method) 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 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)
 

Static Public Member Functions

static CRendererBaseCreate (CVideoSettings &videoSettings)
 
static void GetWeight (std::map< RenderMethod, int > &weights, const VideoPicture &picture)
 
- 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)
 

Protected Member Functions

 CRendererSoftware (CVideoSettings &videoSettings)
 
CRenderBufferCreateBuffer () override
 
void RenderImpl (CD3DTexture &target, CRect &sourceRect, CPoint(&destPoints)[4], uint32_t flags) override
 
void FinalOutput (CD3DTexture &source, CD3DTexture &target, const CRect &src, const CPoint(&destPoints)[4]) override
 
- Protected Member Functions inherited from CRendererBase
 CRendererBase (CVideoSettings &videoSettings)
 
bool CreateIntermediateTarget (unsigned int width, unsigned int height, bool dynamic=false)
 
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)
 
virtual void UpdateVideoFilters ()
 
virtual void CheckVideoParameters ()
 
virtual void OnViewSizeChanged ()
 
virtual void OnOutputReset ()
 

Additional Inherited Members

- Protected Attributes inherited from CRendererBase
bool m_toneMapping = false
 
bool m_useDithering = false
 
bool m_cmsOn = false
 
bool m_clutLoaded = false
 
bool m_useHLGtoPQ = false
 
int m_toneMapMethod = 0
 
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_NONE_SDR
 
bool m_AutoSwitchHDR = false
 

Constructor & Destructor Documentation

◆ ~CRendererSoftware()

CRendererSoftware::~CRendererSoftware ( )

◆ CRendererSoftware()

CRendererSoftware::CRendererSoftware ( CVideoSettings videoSettings)
inlineexplicitprotected

Member Function Documentation

◆ Configure()

bool CRendererSoftware::Configure ( const VideoPicture picture,
float  fps,
unsigned  orientation 
)
override

◆ Create()

CRendererBase * CRendererSoftware::Create ( CVideoSettings videoSettings)
static

◆ CreateBuffer()

CRenderBuffer * CRendererSoftware::CreateBuffer ( )
overrideprotectedvirtual

Implements CRendererBase.

◆ FinalOutput()

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

Reimplemented from CRendererBase.

◆ GetWeight()

void CRendererSoftware::GetWeight ( std::map< RenderMethod, int > &  weights,
const VideoPicture picture 
)
static

◆ RenderImpl()

void CRendererSoftware::RenderImpl ( CD3DTexture target,
CRect sourceRect,
CPoint(&)  destPoints[4],
uint32_t  flags 
)
overrideprotectedvirtual

Implements CRendererBase.

◆ Supports()

bool CRendererSoftware::Supports ( ESCALINGMETHOD  method)
overridevirtual

Implements CRendererBase.


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