MythTV  master
Public Member Functions | Static Public Member Functions | Protected Member Functions | Static Protected Member Functions | Private Member Functions | Friends | List of all members
MythMMALInterop Class Reference

#include <mythmmalinterop.h>

Inheritance diagram for MythMMALInterop:
Inheritance graph
[legend]
Collaboration diagram for MythMMALInterop:
Collaboration graph
[legend]

Public Member Functions

virtual vector< MythVideoTexture * > Acquire (MythRenderOpenGL *Context, VideoColourSpace *ColourSpace, VideoFrame *Frame, FrameScanType Scan) override
 
- Public Member Functions inherited from MythOpenGLInterop
 ~MythOpenGLInterop () override
 
Type GetType (void)
 
MythPlayerGetPlayer (void)
 
void SetPlayer (MythPlayer *Player)
 
void SetDefaultFree (FreeAVHWDeviceContext FreeContext)
 
void SetDefaultUserOpaque (void *UserOpaque)
 
FreeAVHWDeviceContext GetDefaultFree (void)
 
void * GetDefaultUserOpaque (void)
 
- Public Member Functions inherited from ReferenceCounter
 ReferenceCounter (const QString &debugName, bool logDebug=true)
 Creates reference counter with an initial value of 1. More...
 
virtual int IncrRef (void)
 Increments reference count. More...
 
virtual int DecrRef (void)
 Decrements reference count and deletes on 0. More...
 

Static Public Member Functions

static MythMMALInteropCreate (MythRenderOpenGL *Context, Type InteropType)
 
- Static Public Member Functions inherited from MythOpenGLInterop
static QStringList GetAllowedRenderers (VideoFrameType Format)
 
static Type GetInteropType (VideoFrameType Format, MythPlayer *Player)
 Check whether we support direct rendering for the given VideoFrameType. More...
 
static void GetInteropTypeCallback (void *Wait, void *Format, void *Result)
 
static vector< MythVideoTexture * > Retrieve (MythRenderOpenGL *Context, VideoColourSpace *ColourSpace, VideoFrame *Frame, FrameScanType Scan)
 
static QString TypeToString (Type InteropType)
 
static MythOpenGLInteropCreateDummy (void)
 
- Static Public Member Functions inherited from ReferenceCounter
static void PrintDebug (void)
 Print out any leaks if that level of debugging is enabled. More...
 

Protected Member Functions

 MythMMALInterop (MythRenderOpenGL *Context)
 
virtual ~MythMMALInterop () override
 
- Protected Member Functions inherited from MythOpenGLInterop
 MythOpenGLInterop (MythRenderOpenGL *Context, Type InteropType)
 
virtual void DeleteTextures (void)
 
- Protected Member Functions inherited from ReferenceCounter
virtual ~ReferenceCounter (void)
 Called on destruction, will warn if object deleted with references in place. More...
 

Static Protected Member Functions

static Type GetInteropType (VideoFrameType Format)
 

Private Member Functions

MMAL_BUFFER_HEADER_T * VerifyBuffer (MythRenderOpenGL *Context, VideoFrame *Frame)
 

Friends

class MythOpenGLInterop
 

Additional Inherited Members

- Public Types inherited from MythOpenGLInterop
enum  Type {
  Unsupported = 0, VAAPIGLXCOPY, VAAPIGLXPIX, VAAPIEGLDRM,
  VTBOPENGL, VTBSURFACE, MEDIACODEC, VDPAU,
  NVDEC, MMAL, DRMPRIME, DUMMY
}
 
- Protected Attributes inherited from MythOpenGLInterop
MythRenderOpenGLm_context
 
Type m_type
 
QHash< unsigned long long, vector< MythVideoTexture * > > m_openglTextures
 
QSize m_openglTextureSize { }
 
long long m_discontinuityCounter { 0 }
 
FreeAVHWDeviceContext m_defaultFree { nullptr }
 
void * m_defaultUserOpaque { nullptr }
 
MythPlayerm_player { nullptr }
 
- Protected Attributes inherited from ReferenceCounter
bool m_logDebug
 This is used to suppress creating LoggingItem classes for LoggingItem reference count changes. More...
 
QAtomicInt m_referenceCount {1}
 

Detailed Description

Definition at line 13 of file mythmmalinterop.h.

Constructor & Destructor Documentation

◆ MythMMALInterop()

MythMMALInterop::MythMMALInterop ( MythRenderOpenGL Context)
protected

Definition at line 15 of file mythmmalinterop.cpp.

Referenced by Create().

◆ ~MythMMALInterop()

MythMMALInterop::~MythMMALInterop ( )
overrideprotectedvirtual

Definition at line 20 of file mythmmalinterop.cpp.

Member Function Documentation

◆ Create()

MythMMALInterop * MythMMALInterop::Create ( MythRenderOpenGL Context,
Type  InteropType 
)
static

Definition at line 51 of file mythmmalinterop.cpp.

Referenced by MythMMALContext::HwDecoderInit().

◆ Acquire()

vector< MythVideoTexture * > MythMMALInterop::Acquire ( MythRenderOpenGL Context,
VideoColourSpace ColourSpace,
VideoFrame Frame,
FrameScanType  Scan 
)
overridevirtual

Reimplemented from MythOpenGLInterop.

Definition at line 94 of file mythmmalinterop.cpp.

◆ GetInteropType()

MythOpenGLInterop::Type MythMMALInterop::GetInteropType ( VideoFrameType  Format)
staticprotected

Definition at line 25 of file mythmmalinterop.cpp.

Referenced by MythOpenGLInterop::GetInteropType().

◆ VerifyBuffer()

MMAL_BUFFER_HEADER_T * MythMMALInterop::VerifyBuffer ( MythRenderOpenGL Context,
VideoFrame Frame 
)
private

Definition at line 60 of file mythmmalinterop.cpp.

Referenced by Acquire().

Friends And Related Function Documentation

◆ MythOpenGLInterop

friend class MythOpenGLInterop
friend

Definition at line 15 of file mythmmalinterop.h.


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