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

#include <VAAPI.h>

Inheritance diagram for VAAPI::COutput:
CThread

Public Member Functions

 COutput (CDecoder &decoder, CEvent *inMsgEvent)
 
 ~COutput () override
 
void Start ()
 
void Dispose ()
 

Public Attributes

COutputControlProtocol m_controlPort
 
COutputDataProtocol m_dataPort
 

Protected Member Functions

void OnStartup () override
 
void OnExit () override
 
void Process () override
 
void StateMachine (int signal, Protocol *port, Message *msg)
 
bool HasWork ()
 
bool PreferPP ()
 
void InitCycle ()
 
CVaapiRenderPictureProcessPicture (CVaapiProcessedPicture &pic)
 
void QueueReturnPicture (CVaapiRenderPicture *pic)
 
void ProcessReturnPicture (CVaapiRenderPicture *pic)
 
void ProcessReturnProcPicture (int id)
 
void ProcessSyncPicture ()
 
void ReleaseProcessedPicture (CVaapiProcessedPicture &pic)
 
bool Init ()
 
bool Uninit ()
 
void Flush ()
 
void EnsureBufferPool ()
 
void ReleaseBufferPool (bool precleanup=false)
 
void ReadyForDisposal (CPostproc *pp)
 

Protected Attributes

CEvent m_outMsgEvent
 
CEventm_inMsgEvent
 
int m_state
 
bool m_bStateMachineSelfTrigger
 
CDecoderm_vaapi
 
std::chrono::milliseconds m_extTimeout = std::chrono::milliseconds::zero()
 
bool m_seenInterlaced
 Whether at least one interlaced frame was encountered in the video stream (indicating that more interlaced frames could potentially follow)
 
CVaapiConfig m_config
 
std::shared_ptr< CVaapiBufferPoolm_bufferPool
 
CVaapiDecodedPicture m_currentPicture
 
CPostprocm_pp
 
std::list< std::shared_ptr< CPostproc > > m_discardedPostprocs
 
SDiMethods m_diMethods
 

Constructor & Destructor Documentation

◆ COutput()

COutput::COutput ( CDecoder & decoder,
CEvent * inMsgEvent )

◆ ~COutput()

COutput::~COutput ( )
override

Member Function Documentation

◆ Dispose()

void COutput::Dispose ( )

◆ EnsureBufferPool()

void COutput::EnsureBufferPool ( )
protected

◆ Flush()

void COutput::Flush ( )
protected

◆ HasWork()

bool COutput::HasWork ( )
protected

◆ Init()

bool COutput::Init ( )
protected

◆ InitCycle()

void COutput::InitCycle ( )
protected

◆ OnExit()

void COutput::OnExit ( )
overrideprotectedvirtual

Reimplemented from CThread.

◆ OnStartup()

void COutput::OnStartup ( )
overrideprotectedvirtual

Reimplemented from CThread.

◆ PreferPP()

bool COutput::PreferPP ( )
protected

◆ Process()

void COutput::Process ( void )
overrideprotectedvirtual

Reimplemented from CThread.

◆ ProcessPicture()

CVaapiRenderPicture * COutput::ProcessPicture ( CVaapiProcessedPicture & pic)
protected

◆ ProcessReturnPicture()

void COutput::ProcessReturnPicture ( CVaapiRenderPicture * pic)
protected

◆ ProcessReturnProcPicture()

void COutput::ProcessReturnProcPicture ( int id)
protected

◆ ProcessSyncPicture()

void COutput::ProcessSyncPicture ( )
protected

◆ QueueReturnPicture()

void COutput::QueueReturnPicture ( CVaapiRenderPicture * pic)
protected

◆ ReadyForDisposal()

void COutput::ReadyForDisposal ( CPostproc * pp)
protected

◆ ReleaseBufferPool()

void COutput::ReleaseBufferPool ( bool precleanup = false)
protected

◆ ReleaseProcessedPicture()

void COutput::ReleaseProcessedPicture ( CVaapiProcessedPicture & pic)
protected

◆ Start()

void COutput::Start ( )

◆ StateMachine()

void COutput::StateMachine ( int signal,
Protocol * port,
Message * msg )
protected

◆ Uninit()

bool COutput::Uninit ( )
protected

Member Data Documentation

◆ m_bStateMachineSelfTrigger

bool VAAPI::COutput::m_bStateMachineSelfTrigger
protected

◆ m_bufferPool

std::shared_ptr<CVaapiBufferPool> VAAPI::COutput::m_bufferPool
protected

◆ m_config

CVaapiConfig VAAPI::COutput::m_config
protected

◆ m_controlPort

COutputControlProtocol VAAPI::COutput::m_controlPort

◆ m_currentPicture

CVaapiDecodedPicture VAAPI::COutput::m_currentPicture
protected

◆ m_dataPort

COutputDataProtocol VAAPI::COutput::m_dataPort

◆ m_diMethods

SDiMethods VAAPI::COutput::m_diMethods
protected

◆ m_discardedPostprocs

std::list<std::shared_ptr<CPostproc> > VAAPI::COutput::m_discardedPostprocs
protected

◆ m_extTimeout

std::chrono::milliseconds VAAPI::COutput::m_extTimeout = std::chrono::milliseconds::zero()
protected

◆ m_inMsgEvent

CEvent* VAAPI::COutput::m_inMsgEvent
protected

◆ m_outMsgEvent

CEvent VAAPI::COutput::m_outMsgEvent
protected

◆ m_pp

CPostproc* VAAPI::COutput::m_pp
protected

◆ m_seenInterlaced

bool VAAPI::COutput::m_seenInterlaced
protected

Whether at least one interlaced frame was encountered in the video stream (indicating that more interlaced frames could potentially follow)

◆ m_state

int VAAPI::COutput::m_state
protected

◆ m_vaapi

CDecoder& VAAPI::COutput::m_vaapi
protected

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