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

#include <DXVA.h>

Inheritance diagram for DXVA::CVideoBufferCopy:
DXVA::CVideoBufferShared DXVA::CVideoBuffer CVideoBuffer

Public Member Functions

void Initialize (CDecoder *decoder) override
 
unsigned GetIdx () override
 
- Public Member Functions inherited from DXVA::CVideoBufferShared
HRESULT GetResource (ID3D11Resource **ppResource) override
 
void Initialize (CDecoder *decoder) override
 
virtual ~CVideoBufferShared ()
 
- Public Member Functions inherited from DXVA::CVideoBuffer
virtual ~CVideoBuffer ()
 
void SetRef (AVFrame *frame)
 
void Unref ()
 
- Public Member Functions inherited from CVideoBuffer
 CVideoBuffer ()=delete
 
void Acquire ()
 
void Acquire (std::shared_ptr< IVideoBufferPool > pool)
 
void Release ()
 
int GetId () const
 
virtual AVPixelFormat GetFormat ()
 
virtual uint8_tGetMemPtr ()
 
virtual void GetPlanes (uint8_t *(&planes)[YuvImage::MAX_PLANES])
 
virtual void GetStrides (int(&strides)[YuvImage::MAX_PLANES])
 
virtual void SetPixelFormat (const AVPixelFormat pixFormat)
 
virtual void SetDimensions (int width, int height, const int(&strides)[YuvImage::MAX_PLANES])
 
virtual void SetDimensions (int width, int height, const int(&strides)[YuvImage::MAX_PLANES], const int(&planeOffsets)[YuvImage::MAX_PLANES])
 

Protected Member Functions

 CVideoBufferCopy (int id)
 
- Protected Member Functions inherited from DXVA::CVideoBufferShared
 CVideoBufferShared (int id)
 
void InitializeFence (CDecoder *decoder)
 
void SetFence ()
 
- Protected Member Functions inherited from DXVA::CVideoBuffer
 CVideoBuffer (int id)
 
- Protected Member Functions inherited from CVideoBuffer
 CVideoBuffer (int id)
 

Protected Attributes

Microsoft::WRL::ComPtr< ID3D11Resource > m_copyRes
 
Microsoft::WRL::ComPtr< ID3D11Resource > m_pResource
 
Microsoft::WRL::ComPtr< ID3D11DeviceContext > m_pDeviceContext
 
- Protected Attributes inherited from DXVA::CVideoBufferShared
HANDLE handle = INVALID_HANDLE_VALUE
 
Microsoft::WRL::ComPtr< ID3D11Resource > m_sharedRes
 
Microsoft::WRL::ComPtr< ID3D11Fence > m_fence
 decoder-side fence object
 
Microsoft::WRL::ComPtr< ID3D11DeviceContext4 > m_deviceContext4
 decoder-side context
 
HANDLE m_handleFence {INVALID_HANDLE_VALUE}
 fence shared handle that allows opening the fence on a different device
 
UINT64 m_fenceValue {0}
 
Microsoft::WRL::ComPtr< ID3D11Fence > m_appFence
 app-side fence object
 
Microsoft::WRL::ComPtr< ID3D11DeviceContext4 > m_appContext4
 app-side context
 
- Protected Attributes inherited from CVideoBuffer
AVPixelFormat m_pixFormat = AV_PIX_FMT_NONE
 
std::atomic_int m_refCount
 
int m_id
 
std::shared_ptr< IVideoBufferPoolm_pool
 

Friends

template<typename TBuffer >
class CVideoBufferPoolTyped
 

Additional Inherited Members

- Static Public Member Functions inherited from CVideoBuffer
static bool CopyPicture (YuvImage *pDst, YuvImage *pSrc)
 
static bool CopyNV12Picture (YuvImage *pDst, YuvImage *pSrc)
 
static bool CopyYUV422PackedPicture (YuvImage *pDst, YuvImage *pSrc)
 
- Public Attributes inherited from DXVA::CVideoBuffer
ID3D11View * view = nullptr
 
DXGI_FORMAT format = DXGI_FORMAT_UNKNOWN
 
unsigned width = 0
 
unsigned height = 0
 

Constructor & Destructor Documentation

◆ CVideoBufferCopy()

DXVA::CVideoBufferCopy::CVideoBufferCopy ( int id)
inlineexplicitprotected

Member Function Documentation

◆ GetIdx()

unsigned DXVA::CVideoBufferCopy::GetIdx ( )
inlineoverridevirtual

Reimplemented from DXVA::CVideoBuffer.

◆ Initialize()

void CVideoBufferCopy::Initialize ( CDecoder * decoder)
overridevirtual

Reimplemented from DXVA::CVideoBuffer.

Friends And Related Symbol Documentation

◆ CVideoBufferPoolTyped

template<typename TBuffer >
friend class CVideoBufferPoolTyped
friend

Member Data Documentation

◆ m_copyRes

Microsoft::WRL::ComPtr<ID3D11Resource> DXVA::CVideoBufferCopy::m_copyRes
protected

◆ m_pDeviceContext

Microsoft::WRL::ComPtr<ID3D11DeviceContext> DXVA::CVideoBufferCopy::m_pDeviceContext
protected

◆ m_pResource

Microsoft::WRL::ComPtr<ID3D11Resource> DXVA::CVideoBufferCopy::m_pResource
protected

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