MythTV
master
|
#include <libmythtv/opengl/mythvtbinterop.h>
Public Member Functions | |
MythVTBSurfaceInterop (MythPlayerUI *Player, MythRenderOpenGL *Context) | |
~MythVTBSurfaceInterop () override | |
std::vector< MythVideoTextureOpenGL * > | Acquire (MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan) override |
Public Member Functions inherited from MythOpenGLInterop | |
~MythOpenGLInterop () override | |
Public Member Functions inherited from MythInteropGPU | |
MythInteropGPU (MythRender *Context, InteropType Type, MythPlayerUI *Player=nullptr) | |
~MythInteropGPU () override | |
InteropType | GetType () |
MythPlayerUI * | GetPlayer () |
void | SetDefaultFree (FreeAVHWDeviceContext FreeContext) |
void | SetDefaultUserOpaque (void *UserOpaque) |
FreeAVHWDeviceContext | GetDefaultFree () |
void * | GetDefaultUserOpaque () |
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... | |
Private Member Functions | |
void | RotateReferenceFrames (IOSurfaceID Buffer) |
std::vector< MythVideoTextureOpenGL * > | GetReferenceFrames (void) |
Private Attributes | |
QVector< IOSurfaceID > | m_referenceFrames { } |
Additional Inherited Members | |
Public Types inherited from MythInteropGPU | |
enum | InteropType : std::uint8_t { Unsupported = 0, GL_VAAPIGLXCOPY, GL_VAAPIGLXPIX, GL_VAAPIEGLDRM, GL_VTB, GL_VTBSURFACE, GL_MEDIACODEC, GL_VDPAU, GL_NVDEC, GL_MMAL, GL_DRMPRIME, DRM_DRMPRIME, DUMMY } |
using | InteropTypes = std::vector< InteropType > |
using | InteropMap = std::map< VideoFrameType, InteropTypes > |
Static Public Member Functions inherited from MythVTBInterop | |
static void | GetVTBTypes (MythRenderOpenGL *Render, MythInteropGPU::InteropMap &Types) |
static MythVTBInterop * | CreateVTB (MythPlayerUI *Player, MythRenderOpenGL *Context) |
Static Public Member Functions inherited from MythOpenGLInterop | |
static void | GetTypes (MythRender *Render, MythInteropGPU::InteropMap &Types) |
static std::vector< MythVideoTextureOpenGL * > | Retrieve (MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan) |
Static Public Member Functions inherited from MythInteropGPU | |
static InteropMap | GetTypes (MythRender *Render) |
static QString | TypeToString (InteropType Type) |
static QString | TypesToString (const InteropMap &Types) |
static MythInteropGPU * | CreateDummy () |
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 inherited from MythVTBInterop | |
CVPixelBufferRef | Verify (MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame) |
MythVTBInterop (MythPlayerUI *Player, MythRenderOpenGL *Context, MythOpenGLInterop::InteropType Type) | |
~MythVTBInterop () override | |
Protected Member Functions inherited from MythOpenGLInterop | |
MythOpenGLInterop (MythRenderOpenGL *Context, InteropType Type, MythPlayerUI *Player=nullptr) | |
virtual void | DeleteTextures () |
Protected Member Functions inherited from ReferenceCounter | |
virtual | ~ReferenceCounter (void) |
Called on destruction, will warn if object deleted with references in place. More... | |
Protected Attributes inherited from MythOpenGLInterop | |
MythRenderOpenGL * | m_openglContext { nullptr } |
QHash< unsigned long long, std::vector< MythVideoTextureOpenGL * > > | m_openglTextures |
Protected Attributes inherited from MythInteropGPU | |
MythRender * | m_context { nullptr } |
QSize | m_textureSize |
uint64_t | m_discontinuityCounter { 0 } |
FreeAVHWDeviceContext | m_defaultFree { nullptr } |
void * | m_defaultUserOpaque { nullptr } |
MythPlayerUI * | m_player { nullptr } |
InteropType | m_type { Unsupported } |
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} |
Definition at line 27 of file mythvtbinterop.h.
|
explicit |
Definition at line 170 of file mythvtbinterop.cpp.
|
override |
Definition at line 175 of file mythvtbinterop.cpp.
|
overridevirtual |
Reimplemented from MythVTBInterop.
Definition at line 180 of file mythvtbinterop.cpp.
|
private |
Definition at line 288 of file mythvtbinterop.cpp.
Referenced by Acquire().
|
private |
Definition at line 304 of file mythvtbinterop.cpp.
Referenced by Acquire().
|
private |
Definition at line 42 of file mythvtbinterop.h.
Referenced by Acquire(), GetReferenceFrames(), and RotateReferenceFrames().