Go to the documentation of this file. 1 #ifndef MYTHVAAPIDRMINTEROP_H
2 #define MYTHVAAPIDRMINTEROP_H
13 struct AVDRMFrameDescriptor;
20 std::vector<MythVideoTextureOpenGL*>
41 std::vector<MythVideoTextureOpenGL*>
44 std::vector<MythVideoTextureOpenGL*>
54 #ifdef USING_DRM_VIDEO
57 bool m_drmTriedAndFailed {
false };
static VideoFrameType VATypeToMythType(uint32_t Fourcc)
void PostInitDeinterlacer() override
AVDRMFrameDescriptor * GetDRMFrameDescriptor(VASurfaceID Id)
void DestroyDeinterlacer() override
QVector< AVBufferRef * > m_referenceFrames
void DeleteTextures() override
QHash< unsigned long long, AVDRMFrameDescriptor * > m_drmFrames
~MythVAAPIInteropDRM() override
void CleanupReferenceFrames()
static bool IsSupported(MythRenderOpenGL *Context)
std::vector< MythVideoTextureOpenGL * > AcquirePrime(VASurfaceID Id, MythRenderOpenGL *Context, MythVideoFrame *Frame)
Export the given VideoFrame as a DRM PRIME descriptor.
std::vector< MythVideoTextureOpenGL * > AcquireVAAPI(VASurfaceID Id, MythRenderOpenGL *Context, MythVideoFrame *Frame)
void RotateReferenceFrames(AVBufferRef *Buffer)
std::vector< MythVideoTextureOpenGL * > Acquire(MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan) override
MythVAAPIInteropDRM(MythPlayerUI *Player, MythRenderOpenGL *Context, InteropType Type)
MythVideoColourSpace contains a QMatrix4x4 that can convert YCbCr data to RGB.
std::vector< MythVideoTextureOpenGL * > GetReferenceFrames()