UltraGrid
UltraGrid Low-Latency High-Resolution Transmission System
Loading...
Searching...
No Matches
Frame_convertor Class Referenceabstract

#include <opengl_utils.hpp>

Collaboration diagram for Frame_convertor:
Collaboration graph

Public Member Functions

virtual ~Frame_convertor ()
 
virtual void attach_texture (Texture &tex)=0
 
virtual void put_frame (video_frame *f, bool pbo_frame=false)=0
 
void set_pbo (GlBuffer *pbo)
 

Static Public Member Functions

template<class Derived >
static std::unique_ptr< Frame_convertor > construct_unique ()
 

Protected Attributes

GlBuffer * internal_pbo = nullptr
 

Detailed Description

Definition at line 291 of file opengl_utils.hpp.

Constructor & Destructor Documentation

◆ ~Frame_convertor()

virtual Frame_convertor::~Frame_convertor ( )
inlinevirtual

Definition at line 293 of file opengl_utils.hpp.

293{};

Member Function Documentation

◆ attach_texture()

virtual void Frame_convertor::attach_texture ( Texture & tex)
pure virtual

Attach texture to be used as output

Parameters
textexture to attach

◆ construct_unique()

template<class Derived >
static std::unique_ptr< Frame_convertor > Frame_convertor::construct_unique ( )
inlinestatic

Definition at line 296 of file opengl_utils.hpp.

296 {
297 return std::make_unique<Derived>();
298 }

◆ put_frame()

virtual void Frame_convertor::put_frame ( video_frame * f,
bool pbo_frame = false )
pure virtual

Renders the video frame containing YUV image data to attached texture

Parameters
fvideo frame to convert
pbo_frametrue if video frame contains the image data in a PBO buffer

◆ set_pbo()

void Frame_convertor::set_pbo ( GlBuffer * pbo)
inline

Definition at line 316 of file opengl_utils.hpp.

316{ internal_pbo = pbo; }
GlBuffer * internal_pbo

References internal_pbo.

Member Data Documentation

◆ internal_pbo

GlBuffer* Frame_convertor::internal_pbo = nullptr
protected

Definition at line 318 of file opengl_utils.hpp.

Referenced by set_pbo().


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