MythTV  master
mythmmalinterop.h
Go to the documentation of this file.
1 #ifndef MYTHMMALINTEROP_H
2 #define MYTHMMALINTEROP_H
3 
4 // MythTV
6 
7 // MMAL
8 extern "C" {
9 #include <interface/mmal/mmal.h>
10 #include <interface/mmal/mmal_buffer.h>
11 }
12 
14 {
15  public:
16  static void GetMMALTypes(MythRenderOpenGL* Render, MythInteropGPU::InteropMap& Types);
18  virtual std::vector<MythVideoTextureOpenGL*>
19  Acquire(MythRenderOpenGL *Context,
20  MythVideoColourSpace *ColourSpace,
21  MythVideoFrame *Frame, FrameScanType Scan) override;
22 
23  protected:
25  virtual ~MythMMALInterop() override;
26 
27  private:
28  MMAL_BUFFER_HEADER_T* VerifyBuffer(MythRenderOpenGL *Context, MythVideoFrame *Frame);
29 };
30 
31 #endif // MYTHMMALINTEROP_H
MythMMALInterop::Acquire
virtual std::vector< MythVideoTextureOpenGL * > Acquire(MythRenderOpenGL *Context, MythVideoColourSpace *ColourSpace, MythVideoFrame *Frame, FrameScanType Scan) override
Definition: mythmmalinterop.cpp:89
MythMMALInterop::VerifyBuffer
MMAL_BUFFER_HEADER_T * VerifyBuffer(MythRenderOpenGL *Context, MythVideoFrame *Frame)
Definition: mythmmalinterop.cpp:54
mythopenglinterop.h
MythMMALInterop
Definition: mythmmalinterop.h:13
Frame
Definition: zmdefines.h:93
FrameScanType
FrameScanType
Definition: videoouttypes.h:94
MythMMALInterop::~MythMMALInterop
virtual ~MythMMALInterop() override
Definition: mythmmalinterop.cpp:20
MythInteropGPU::InteropMap
std::map< VideoFrameType, InteropTypes > InteropMap
Definition: mythinteropgpu.h:44
MythMMALInterop::GetMMALTypes
static void GetMMALTypes(MythRenderOpenGL *Render, MythInteropGPU::InteropMap &Types)
Definition: mythmmalinterop.cpp:25
MythOpenGLInterop
Definition: mythopenglinterop.h:17
MythMMALInterop::CreateMMAL
static MythMMALInterop * CreateMMAL(MythRenderOpenGL *Context)
Create an MMAL interop.
Definition: mythmmalinterop.cpp:49
MythMMALInterop::MythMMALInterop
MythMMALInterop(MythRenderOpenGL *Context)
Definition: mythmmalinterop.cpp:15
MythRenderOpenGL
Definition: mythrenderopengl.h:96
MythVideoFrame
Definition: mythframe.h:88
MythVideoColourSpace
MythVideoColourSpace contains a QMatrix4x4 that can convert YCbCr data to RGB.
Definition: mythvideocolourspace.h:18