Miam-Player  0.8.0
A nice music player
QtAV::VideoSurfaceInterop Class Reference

#include <SurfaceInterop.h>

Public Member Functions

virtual ~VideoSurfaceInterop ()
 
virtual void * map (SurfaceType type, const VideoFormat &fmt, void *handle=0, int plane=0)
 map currently is used to map a frame from hardware decoder to opengl texture, host memory. More...
 
virtual void unmap (void *handle)
 
virtual void * createHandle (void *handle, SurfaceType type, const VideoFormat &fmt, int plane, int planeWidth, int planeHeight)
 createHandle It is used by opengl renderer to create a texture when rendering frame from VDA/VideoToolbox decoder VideoSurfaceInterop does not have the ownership. More...
 

Constructor & Destructor Documentation

virtual QtAV::VideoSurfaceInterop::~VideoSurfaceInterop ( )
inlinevirtual

Member Function Documentation

virtual void* QtAV::VideoSurfaceInterop::createHandle ( void *  handle,
SurfaceType  type,
const VideoFormat fmt,
int  plane,
int  planeWidth,
int  planeHeight 
)
inlinevirtual

createHandle It is used by opengl renderer to create a texture when rendering frame from VDA/VideoToolbox decoder VideoSurfaceInterop does not have the ownership.

VideoShader does

Returns
NULL if not used for opengl rendering. handle if create here
virtual void* QtAV::VideoSurfaceInterop::map ( SurfaceType  type,
const VideoFormat fmt,
void *  handle = 0,
int  plane = 0 
)
inlinevirtual

map currently is used to map a frame from hardware decoder to opengl texture, host memory.

Parameters
typecurrently only support GLTextureSurface and HostMemorySurface for some decoders
fmtHostMemorySurface: must be a packed rgb format
handleaddress of real handle. handle value can be modified in map() and the caller (VideoShader for example) should manage the changes. GLTextureSurface: usually opengl texture. maybe other objects for some decoders in the feature HostMemorySurface: a VideoFrame ptr
plane
Returns
Null if not supported or failed. handle if success.
virtual void QtAV::VideoSurfaceInterop::unmap ( void *  handle)
inlinevirtual

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