|
MythTV master
|
#include <libmythtv/mythinteropgpu.h>
Public Types | |
| 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 > |
Public Member Functions | |
| 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... | |
Static Public Member Functions | |
| 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 Attributes | |
| 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} |
Additional Inherited Members | |
Protected Member Functions inherited from ReferenceCounter | |
| virtual | ~ReferenceCounter (void) |
| Called on destruction, will warn if object deleted with references in place. More... | |
Definition at line 20 of file mythinteropgpu.h.
| using MythInteropGPU::InteropMap = std::map<VideoFrameType,InteropTypes> |
Definition at line 44 of file mythinteropgpu.h.
| using MythInteropGPU::InteropTypes = std::vector<InteropType> |
Definition at line 43 of file mythinteropgpu.h.
| enum MythInteropGPU::InteropType : std::uint8_t |
| Enumerator | |
|---|---|
| Unsupported | |
| GL_VAAPIGLXCOPY | |
| GL_VAAPIGLXPIX | |
| GL_VAAPIEGLDRM | |
| GL_VTB | |
| GL_VTBSURFACE | |
| GL_MEDIACODEC | |
| GL_VDPAU | |
| GL_NVDEC | |
| GL_MMAL | |
| GL_DRMPRIME | |
| DRM_DRMPRIME | |
| DUMMY | |
Definition at line 25 of file mythinteropgpu.h.
| MythInteropGPU::MythInteropGPU | ( | MythRender * | Context, |
| InteropType | Type, | ||
| MythPlayerUI * | Player = nullptr |
||
| ) |
Definition at line 59 of file mythinteropgpu.cpp.
Referenced by CreateDummy().
|
override |
Definition at line 69 of file mythinteropgpu.cpp.
|
static |
Definition at line 50 of file mythinteropgpu.cpp.
Referenced by MythCodecContext::CreateDevice().
| FreeAVHWDeviceContext MythInteropGPU::GetDefaultFree | ( | ) |
Definition at line 95 of file mythinteropgpu.cpp.
| void * MythInteropGPU::GetDefaultUserOpaque | ( | ) |
Definition at line 100 of file mythinteropgpu.cpp.
| MythPlayerUI * MythInteropGPU::GetPlayer | ( | ) |
Definition at line 80 of file mythinteropgpu.cpp.
Referenced by MythCodecContext::DestroyInterop().
| MythInteropGPU::InteropType MythInteropGPU::GetType | ( | void | ) |
Definition at line 75 of file mythinteropgpu.cpp.
Referenced by MythVAAPIContext::InitialiseContext().
|
static |
Definition at line 11 of file mythinteropgpu.cpp.
Referenced by MythCodecContext::GetDecoders(), MythVideoProfile::InitStatics(), and MythPlayerVideoUI::MythPlayerVideoUI().
| void MythInteropGPU::SetDefaultFree | ( | FreeAVHWDeviceContext | FreeContext | ) |
Definition at line 85 of file mythinteropgpu.cpp.
Referenced by MythCodecContext::CreateDevice().
| void MythInteropGPU::SetDefaultUserOpaque | ( | void * | UserOpaque | ) |
Definition at line 90 of file mythinteropgpu.cpp.
Referenced by MythCodecContext::CreateDevice().
|
static |
Definition at line 40 of file mythinteropgpu.cpp.
Referenced by MythVideoProfile::InitStatics().
|
static |
Definition at line 23 of file mythinteropgpu.cpp.
Referenced by MythVAAPIInterop::InitaliseDisplay(), MythVAAPIContext::InitialiseContext(), and TypesToString().
|
protected |
Definition at line 61 of file mythinteropgpu.h.
Referenced by MythInteropGPU(), and ~MythInteropGPU().
|
protected |
Definition at line 64 of file mythinteropgpu.h.
Referenced by GetDefaultFree(), and SetDefaultFree().
|
protected |
Definition at line 65 of file mythinteropgpu.h.
Referenced by GetDefaultUserOpaque(), and SetDefaultUserOpaque().
|
protected |
Definition at line 63 of file mythinteropgpu.h.
Referenced by MythNVDECInterop::Acquire(), MythVAAPIInteropDRM::Acquire(), MythVDPAUInterop::Acquire(), and MythVTBSurfaceInterop::Acquire().
|
protected |
Definition at line 66 of file mythinteropgpu.h.
Referenced by GetPlayer().
|
protected |
Definition at line 62 of file mythinteropgpu.h.
Referenced by MythNVDECInterop::Acquire(), MythVAAPIInteropGLXCopy::Acquire(), MythVAAPIInteropGLXPixmap::Acquire(), MythVDPAUInterop::Acquire(), MythVTBInterop::Verify(), MythDRMPRIMEInterop::VerifyBuffer(), MythMMALInterop::VerifyBuffer(), and MythVAAPIInterop::VerifySurface().
|
protected |
Definition at line 67 of file mythinteropgpu.h.
Referenced by GetType(), and MythVAAPIInterop::InitaliseDisplay().