24#include <libavfilter/avfilter.h>
25#include <libavutil/hwcontext_drm.h>
35#define RENDERBUFFERS 36
57 cDrmBuffer(
int, uint32_t, uint32_t, uint32_t,
struct gbm_bo *);
61 void Setup(
int, uint32_t, uint32_t, uint32_t, AVDRMFrameDescriptor *,
bool);
63 void InitBo(
int, uint32_t, uint32_t, uint32_t,
struct gbm_bo *);
134 struct gbm_bo *m_pBo;
cDrmBuffer * FindUninitilized(void)
cDrmBuffer * FindByDmaBufHandle(int)
cDrmBuffer * FindNoPresentationPending(void)
void DestroyAllExcept(cDrmBuffer *)
void SetNumPlanes(int numPlanes)
bool m_dirty
true, if the buffer is dirty (it was written to)
cDrmBuffer(void)
cDrmBuffer constructor
bool m_destroyAfterUse
true, if buffer should be destroyed after use
void SetPixFmt(uint32_t pixFmt)
int m_objIdx[4]
index of the objects
bool m_closeHandleOnDestroy
true, if DMA-BUF handle should be closed on destroy
void Setup(int, uint32_t, uint32_t, uint32_t, AVDRMFrameDescriptor *, bool)
Setup the buffer.
void InitBo(int, uint32_t, uint32_t, uint32_t, struct gbm_bo *)
int m_numObjects
number of prime objects in the buffer
void SetOffset(int idx, uint32_t offset)
uint32_t m_fbId
framebuffer id
bool IsPresentationPending(void)
virtual ~cDrmBuffer(void)
cDrmBuffer destructor
void SetNumObjects(int numObjects)
void SetSize(int idx, uint32_t size)
uint32_t m_width
buffer width
uint32_t m_offset[4]
array of the plane offset
uint32_t m_pitch[4]
array of the plane pitch
void SetPitch(int idx, uint32_t pitch)
void FillBlack(void)
Color the buffer black.
uint32_t PrimeHandle(int idx)
AVFrame * frame
associated AVFrame
void SetHandle(int idx, uint32_t handle)
uint32_t m_objectPrimeHandle[4]
primedata objects prime handles (count is numObjects, index is objIdx)
int m_dmaBufHandle[4]
DMA-BUF file descriptor.
uint32_t m_pixFmt
buffer pixel format
uint32_t * PrimeHandle(void)
void SetObjectIndex(int idx, uint32_t objIdx)
int m_drmDeviceFd
drm device file descriptor
uint32_t m_height
buffer height
void SetPresentationPending(bool pending)
void SetWidth(uint32_t width)
void PresentationFinished(void)
bool m_presentationPending
true, if buffer is pending presentation
uint8_t * m_pPlane[4]
array of the plane data
void SetHeight(uint32_t height)
void Destroy(void)
Clear and destroy the buffer object and its parameters.
uint32_t m_size[4]
array of the plane size
void SetDmaBufHandle(uint32_t fd)
uint32_t m_planePrimeHandle[4]
array of the plane handles
int m_numPlanes
number of planes in the buffer
void SetDestroyAfterUse(bool val)
#define RENDERBUFFERS
number of render video buffers
Misc function header file.