MythTV
master
|
#include <libmythtv/opengl/mythvdpauinterop.h>
Public Slots | |
void | UpdateColourSpace (bool PrimariesChanged) |
void | DisplayPreempted (void) |
Public Member Functions | |
std::vector< MythVideoTextureOpenGL * > | Acquire (MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan) override |
Map VDPAU video surfaces to an OpenGL texture. More... | |
bool | IsPreempted (void) const |
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... | |
Static Public Member Functions | |
static void | GetVDPAUTypes (MythRenderOpenGL *Render, MythInteropGPU::InteropMap &Types) |
static MythVDPAUInterop * | CreateVDPAU (MythPlayerUI *Player, MythRenderOpenGL *Context, MythCodecID CodecId) |
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 | |
MythVDPAUInterop (MythPlayerUI *Player, MythRenderOpenGL *Context, MythCodecID CodecID) | |
~MythVDPAUInterop () 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... | |
Private Member Functions | |
bool | InitNV (AVVDPAUDeviceContext *DeviceContext) |
bool | InitVDPAU (AVVDPAUDeviceContext *DeviceContext, VdpVideoSurface Surface, MythDeintType Deint, bool DoubleRate) |
void | Cleanup (void) |
void | CleanupDeinterlacer (void) |
void | RotateReferenceFrames (AVBufferRef *Buffer) |
Private Attributes | |
MythVideoColourSpace * | m_colourSpace { nullptr } |
MythVDPAUHelper * | m_helper { nullptr } |
VdpOutputSurface | m_outputSurface { 0 } |
MythVDPAUSurfaceNV | m_outputSurfaceReg { 0 } |
VdpVideoMixer | m_mixer { 0 } |
VdpChromaType | m_mixerChroma { VDP_CHROMA_TYPE_420 } |
QSize | m_mixerSize |
MythDeintType | m_deinterlacer { DEINT_BASIC } |
QVector< AVBufferRef * > | m_referenceFrames |
MYTH_VDPAUINITNV | m_initNV { nullptr } |
MYTH_VDPAUFININV | m_finiNV { nullptr } |
MYTH_VDPAUREGOUTSURFNV | m_registerNV { nullptr } |
MYTH_VDPAUSURFACCESSNV | m_accessNV { nullptr } |
MYTH_VDPAUMAPSURFNV | m_mapNV { nullptr } |
MYTH_VDPAUMAPSURFNV | m_unmapNV { nullptr } |
MythCodecID | m_codec { kCodec_NONE } |
bool | m_preempted { false } |
bool | m_preemptedWarning { false } |
bool | m_mapped { false } |
Definition at line 25 of file mythvdpauinterop.h.
|
protected |
Definition at line 37 of file mythvdpauinterop.cpp.
Referenced by CreateVDPAU().
|
overrideprotected |
Definition at line 43 of file mythvdpauinterop.cpp.
|
static |
Definition at line 25 of file mythvdpauinterop.cpp.
Referenced by CreateVDPAU(), and MythOpenGLInterop::GetTypes().
|
static |
Definition at line 9 of file mythvdpauinterop.cpp.
Referenced by MythVDPAUContext::InitialiseContext().
|
overridevirtual |
Map VDPAU video surfaces to an OpenGL texture.
Reimplemented from MythOpenGLInterop.
Definition at line 225 of file mythvdpauinterop.cpp.
bool MythVDPAUInterop::IsPreempted | ( | void | ) | const |
Definition at line 387 of file mythvdpauinterop.cpp.
|
slot |
Definition at line 368 of file mythvdpauinterop.cpp.
Referenced by Acquire().
|
slot |
Definition at line 377 of file mythvdpauinterop.cpp.
Referenced by InitNV().
|
private |
Definition at line 114 of file mythvdpauinterop.cpp.
Referenced by Acquire().
|
private |
Definition at line 151 of file mythvdpauinterop.cpp.
Referenced by Acquire().
|
private |
Definition at line 57 of file mythvdpauinterop.cpp.
Referenced by InitVDPAU(), and ~MythVDPAUInterop().
|
private |
Definition at line 82 of file mythvdpauinterop.cpp.
Referenced by Acquire(), and ~MythVDPAUInterop().
|
private |
Definition at line 91 of file mythvdpauinterop.cpp.
Referenced by Acquire().
|
private |
Definition at line 53 of file mythvdpauinterop.h.
Referenced by Acquire(), UpdateColourSpace(), and ~MythVDPAUInterop().
|
private |
Definition at line 54 of file mythvdpauinterop.h.
Referenced by Acquire(), Cleanup(), InitNV(), InitVDPAU(), UpdateColourSpace(), and ~MythVDPAUInterop().
|
private |
Definition at line 55 of file mythvdpauinterop.h.
Referenced by Acquire(), Cleanup(), and InitVDPAU().
|
private |
Definition at line 56 of file mythvdpauinterop.h.
Referenced by Acquire(), Cleanup(), and InitVDPAU().
|
private |
Definition at line 57 of file mythvdpauinterop.h.
Referenced by Acquire(), Cleanup(), InitVDPAU(), and UpdateColourSpace().
|
private |
Definition at line 58 of file mythvdpauinterop.h.
Referenced by Cleanup(), and InitVDPAU().
|
private |
Definition at line 59 of file mythvdpauinterop.h.
Referenced by Cleanup(), and InitVDPAU().
|
private |
Definition at line 60 of file mythvdpauinterop.h.
Referenced by Cleanup(), and InitVDPAU().
|
private |
Definition at line 61 of file mythvdpauinterop.h.
Referenced by Acquire(), CleanupDeinterlacer(), and RotateReferenceFrames().
|
private |
Definition at line 62 of file mythvdpauinterop.h.
Referenced by InitNV(), and InitVDPAU().
|
private |
Definition at line 63 of file mythvdpauinterop.h.
|
private |
Definition at line 64 of file mythvdpauinterop.h.
Referenced by InitNV(), and InitVDPAU().
|
private |
Definition at line 65 of file mythvdpauinterop.h.
Referenced by InitNV(), and InitVDPAU().
|
private |
Definition at line 66 of file mythvdpauinterop.h.
|
private |
Definition at line 67 of file mythvdpauinterop.h.
|
private |
Definition at line 68 of file mythvdpauinterop.h.
Referenced by Acquire().
Definition at line 69 of file mythvdpauinterop.h.
Referenced by Acquire(), Cleanup(), DisplayPreempted(), and IsPreempted().
Definition at line 70 of file mythvdpauinterop.h.
Referenced by Acquire().
Definition at line 71 of file mythvdpauinterop.h.