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

#include <mythvtbinterop.h>

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

Public Member Functions

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 MythVTBInteropCreate (MythRenderOpenGL *Context, MythOpenGLInterop::Type Type)
 
- 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

CVPixelBufferRef Verify (MythRenderOpenGL *Context, VideoColourSpace *ColourSpace, VideoFrame *Frame)
 
 MythVTBInterop (MythRenderOpenGL *Context, MythOpenGLInterop::Type Type)
 
 ~MythVTBInterop () 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)
 

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 10 of file mythvtbinterop.h.

Constructor & Destructor Documentation

◆ MythVTBInterop()

MythVTBInterop::MythVTBInterop ( MythRenderOpenGL Context,
MythOpenGLInterop::Type  Type 
)
protected

Definition at line 38 of file mythvtbinterop.cpp.

Referenced by Create().

◆ ~MythVTBInterop()

MythVTBInterop::~MythVTBInterop ( )
overrideprotected

Definition at line 43 of file mythvtbinterop.cpp.

Member Function Documentation

◆ Create()

MythVTBInterop * MythVTBInterop::Create ( MythRenderOpenGL Context,
MythOpenGLInterop::Type  Type 
)
static

Definition at line 26 of file mythvtbinterop.cpp.

Referenced by MythVTBContext::InitialiseDecoder().

◆ Acquire()

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

Reimplemented from MythOpenGLInterop.

Reimplemented in MythVTBSurfaceInterop.

Definition at line 82 of file mythvtbinterop.cpp.

◆ Verify()

CVPixelBufferRef MythVTBInterop::Verify ( MythRenderOpenGL Context,
VideoColourSpace ColourSpace,
VideoFrame Frame 
)
protected

Definition at line 47 of file mythvtbinterop.cpp.

Referenced by Acquire(), and MythVTBSurfaceInterop::Acquire().

◆ GetInteropType()

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

Definition at line 9 of file mythvtbinterop.cpp.

Referenced by MythOpenGLInterop::GetInteropType().

Friends And Related Function Documentation

◆ MythOpenGLInterop

friend class MythOpenGLInterop
friend

Definition at line 12 of file mythvtbinterop.h.


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