Kodi Documentation 22.0
Kodi is an open source media player and entertainment hub.
Loading...
Searching...
No Matches
VAAPI::CVaapiBufferPool Class Reference
Inheritance diagram for VAAPI::CVaapiBufferPool:
IVideoBufferPool

Public Member Functions

 CVaapiBufferPool (CDecoder &decoder)
 
 ~CVaapiBufferPool () override
 
CVideoBufferGet () override
 
void Return (int id) override
 
CVaapiRenderPictureGetVaapi ()
 
bool HasFree ()
 
void QueueReturnPicture (CVaapiRenderPicture *pic)
 
CVaapiRenderPictureProcessSyncPicture ()
 
void Init ()
 
void DeleteTextures (bool precleanup)
 
- Public Member Functions inherited from IVideoBufferPool
virtual ~IVideoBufferPool ()=default
 
virtual void Configure (AVPixelFormat format, int size)
 
virtual bool IsConfigured ()
 
virtual bool IsCompatible (AVPixelFormat format, int size)
 
virtual void Released (CVideoBufferManager &videoBufferManager)
 
virtual void Discard (CVideoBufferManager *bm, ReadyToDispose cb)
 
std::shared_ptr< IVideoBufferPoolGetPtr ()
 

Public Attributes

std::deque< CVaapiProcessedPictureprocessedPics
 
std::deque< CVaapiProcessedPictureprocessedPicsAway
 
std::deque< CVaapiDecodedPicturedecodedPics
 
int procPicId
 

Protected Attributes

std::vector< CVaapiRenderPicture * > allRenderPics
 
std::deque< intusedRenderPics
 
std::deque< intfreeRenderPics
 
std::deque< intsyncRenderPics
 
CDecoderm_vaapi
 

Detailed Description

Buffer pool holds allocated vaapi and gl resources Embedded in COutput

Constructor & Destructor Documentation

◆ CVaapiBufferPool()

CVaapiBufferPool::CVaapiBufferPool ( CDecoder & decoder)
explicit

◆ ~CVaapiBufferPool()

CVaapiBufferPool::~CVaapiBufferPool ( )
override

Member Function Documentation

◆ DeleteTextures()

void CVaapiBufferPool::DeleteTextures ( bool precleanup)

◆ Get()

CVideoBuffer * CVaapiBufferPool::Get ( )
overridevirtual

Implements IVideoBufferPool.

◆ GetVaapi()

CVaapiRenderPicture * CVaapiBufferPool::GetVaapi ( )

◆ HasFree()

bool CVaapiBufferPool::HasFree ( )

◆ Init()

void CVaapiBufferPool::Init ( )

◆ ProcessSyncPicture()

CVaapiRenderPicture * CVaapiBufferPool::ProcessSyncPicture ( )

◆ QueueReturnPicture()

void CVaapiBufferPool::QueueReturnPicture ( CVaapiRenderPicture * pic)

◆ Return()

void CVaapiBufferPool::Return ( int id)
overridevirtual

Implements IVideoBufferPool.

Member Data Documentation

◆ allRenderPics

std::vector<CVaapiRenderPicture*> VAAPI::CVaapiBufferPool::allRenderPics
protected

◆ decodedPics

std::deque<CVaapiDecodedPicture> VAAPI::CVaapiBufferPool::decodedPics

◆ freeRenderPics

std::deque<int> VAAPI::CVaapiBufferPool::freeRenderPics
protected

◆ m_vaapi

CDecoder& VAAPI::CVaapiBufferPool::m_vaapi
protected

◆ processedPics

std::deque<CVaapiProcessedPicture> VAAPI::CVaapiBufferPool::processedPics

◆ processedPicsAway

std::deque<CVaapiProcessedPicture> VAAPI::CVaapiBufferPool::processedPicsAway

◆ procPicId

int VAAPI::CVaapiBufferPool::procPicId

◆ syncRenderPics

std::deque<int> VAAPI::CVaapiBufferPool::syncRenderPics
protected

◆ usedRenderPics

std::deque<int> VAAPI::CVaapiBufferPool::usedRenderPics
protected

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