Go to the documentation of this file. 1 #ifndef MYTHVDPAUINTEROP_H
2 #define MYTHVDPAUINTEROP_H
13 #include "libavutil/hwcontext_vdpau.h"
32 std::vector<MythVideoTextureOpenGL*>
46 bool InitNV(AVVDPAUDeviceContext* DeviceContext);
void RotateReferenceFrames(AVBufferRef *Buffer)
MYTH_VDPAUINITNV m_initNV
MythVDPAUSurfaceNV(APIENTRY *)(const void *, GLenum, GLsizei, const GLuint *) MYTH_VDPAUREGOUTSURFNV
void(APIENTRY *)(GLsizei, MythVDPAUSurfaceNV *) MYTH_VDPAUMAPSURFNV
MythVideoColourSpace * m_colourSpace
static MythVDPAUInterop * CreateVDPAU(MythPlayerUI *Player, MythRenderOpenGL *Context, MythCodecID CodecId)
~MythVDPAUInterop() override
bool InitNV(AVVDPAUDeviceContext *DeviceContext)
MythVDPAUHelper * m_helper
void(APIENTRY *)(void) MYTH_VDPAUFININV
std::map< VideoFrameType, InteropTypes > InteropMap
MythDeintType m_deinterlacer
std::vector< MythVideoTextureOpenGL * > Acquire(MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan) override
Map VDPAU video surfaces to an OpenGL texture.
VdpOutputSurface m_outputSurface
A simple wrapper around VDPAU functionality.
MYTH_VDPAUSURFACCESSNV m_accessNV
void(APIENTRY *)(const void *, const void *) MYTH_VDPAUINITNV
void CleanupDeinterlacer(void)
QVector< AVBufferRef * > m_referenceFrames
GLintptr MythVDPAUSurfaceNV
VdpChromaType m_mixerChroma
MythVDPAUInterop(MythPlayerUI *Player, MythRenderOpenGL *Context, MythCodecID CodecID)
void(APIENTRY *)(MythVDPAUSurfaceNV, GLenum) MYTH_VDPAUSURFACCESSNV
bool IsPreempted(void) const
void UpdateColourSpace(bool PrimariesChanged)
MYTH_VDPAUFININV m_finiNV
MYTH_VDPAUMAPSURFNV m_unmapNV
MythVDPAUSurfaceNV m_outputSurfaceReg
MYTH_VDPAUREGOUTSURFNV m_registerNV
void DisplayPreempted(void)
MythVideoColourSpace contains a QMatrix4x4 that can convert YCbCr data to RGB.
MYTH_VDPAUMAPSURFNV m_mapNV
static void GetVDPAUTypes(MythRenderOpenGL *Render, MythInteropGPU::InteropMap &Types)
bool InitVDPAU(AVVDPAUDeviceContext *DeviceContext, VdpVideoSurface Surface, MythDeintType Deint, bool DoubleRate)