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

#include <VTB.h>

Inheritance diagram for VTB::CDecoder:
IHardwareDecoder IDVDResourceCounted< IHardwareDecoder >

Public Member Functions

 CDecoder (CProcessInfo &processInfo)
 
 ~CDecoder () override
 
bool Open (AVCodecContext *avctx, AVCodecContext *mainctx, const enum AVPixelFormat) override
 
CDVDVideoCodec::VCReturn Decode (AVCodecContext *avctx, AVFrame *frame) override
 
bool GetPicture (AVCodecContext *avctx, VideoPicture *picture) override
 
CDVDVideoCodec::VCReturn Check (AVCodecContext *avctx) override
 
const std::string Name () override
 
unsigned GetAllowedReferences () override
 
void Close ()
 
- Public Member Functions inherited from IHardwareDecoder
 IHardwareDecoder ()=default
 
 ~IHardwareDecoder () override=default
 
virtual void Reset ()
 
virtual bool CanSkipDeint ()
 
virtual void SetCodecControl (int flags)
 
- Public Member Functions inherited from IDVDResourceCounted< IHardwareDecoder >
 IDVDResourceCounted ()
 
 IDVDResourceCounted (const IDVDResourceCounted &)=delete
 
virtual ~IDVDResourceCounted ()=default
 
IDVDResourceCountedoperator= (const IDVDResourceCounted &)=delete
 
virtual IHardwareDecoderAcquire ()
 
virtual long Release ()
 

Static Public Member Functions

static IHardwareDecoderCreate (CDVDStreamInfo &hint, CProcessInfo &processInfo, AVPixelFormat fmt)
 
static bool Register ()
 

Protected Attributes

unsigned m_renderbuffers_count
 
AVCodecContext * m_avctx
 
CProcessInfom_processInfo
 
CVideoBufferVTBm_renderBuffer = nullptr
 
std::shared_ptr< CVideoBufferPoolVTBm_videoBufferPool
 

Additional Inherited Members

- Public Attributes inherited from IDVDResourceCounted< IHardwareDecoder >
std::atomic< long > m_refs
 

Constructor & Destructor Documentation

◆ CDecoder()

CDecoder::CDecoder ( CProcessInfo & processInfo)

◆ ~CDecoder()

CDecoder::~CDecoder ( )
override

Member Function Documentation

◆ Check()

CDVDVideoCodec::VCReturn CDecoder::Check ( AVCodecContext * avctx)
overridevirtual

Implements IHardwareDecoder.

◆ Close()

void CDecoder::Close ( )

◆ Create()

IHardwareDecoder * CDecoder::Create ( CDVDStreamInfo & hint,
CProcessInfo & processInfo,
AVPixelFormat fmt )
static

◆ Decode()

CDVDVideoCodec::VCReturn CDecoder::Decode ( AVCodecContext * avctx,
AVFrame * frame )
overridevirtual

Implements IHardwareDecoder.

◆ GetAllowedReferences()

unsigned CDecoder::GetAllowedReferences ( )
overridevirtual

Reimplemented from IHardwareDecoder.

◆ GetPicture()

bool CDecoder::GetPicture ( AVCodecContext * avctx,
VideoPicture * picture )
overridevirtual

Implements IHardwareDecoder.

◆ Name()

const std::string VTB::CDecoder::Name ( )
inlineoverridevirtual

Implements IHardwareDecoder.

◆ Open()

bool CDecoder::Open ( AVCodecContext * avctx,
AVCodecContext * mainctx,
const enum AVPixelFormat fmt )
overridevirtual

Implements IHardwareDecoder.

◆ Register()

bool CDecoder::Register ( )
static

Member Data Documentation

◆ m_avctx

AVCodecContext* VTB::CDecoder::m_avctx
protected

◆ m_processInfo

CProcessInfo& VTB::CDecoder::m_processInfo
protected

◆ m_renderBuffer

CVideoBufferVTB* VTB::CDecoder::m_renderBuffer = nullptr
protected

◆ m_renderbuffers_count

unsigned VTB::CDecoder::m_renderbuffers_count
protected

◆ m_videoBufferPool

std::shared_ptr<CVideoBufferPoolVTB> VTB::CDecoder::m_videoBufferPool
protected

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