libmoldeo (Moldeo 1.0 Core)  1.0
libmoldeo is the group of objects and functions that executes the basic operations of Moldeo 1.0 Platform.
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros Modules Pages
moCircularVideoBuffer Class Reference

Circular Video Buffer for live loop video recording. More...

#include <moVideoManager.h>

Inheritance diagram for moCircularVideoBuffer:
moTextureAnimated moTexture moAbstract moLuaCircularVideoBuffer

Public Member Functions

 moCircularVideoBuffer ()
 
virtual ~moCircularVideoBuffer ()
 
virtual MOboolean Init ()
 Inicializa el objeto. More...
 
virtual MOboolean Init (moText videoinput, moText bufferformat, moResourceManager *p_pResourceManager, MOint frames, MOint width, MOint height, MOint xsource, MOint ysource, MOint sourcewidth, MOint sourceheight)
 
virtual MOboolean Finish ()
 
virtual void StartRecording (long at_position=-1)
 
virtual void PauseRecording ()
 
virtual void ContinueRecording ()
 
virtual void JumpRecording (long at_position)
 
virtual void StopRecording ()
 
virtual long GetRecordPosition ()
 
virtual bool IsRecording ()
 
virtual void GetFrame (MOuint p_i)
 
virtual MOboolean LoadSample (moVideoSample *pvideosample)
 
virtual MOint GetXSource ()
 
virtual MOint GetYSource ()
 
virtual MOint GetSourceWidth ()
 
virtual MOint GetSourceHeight ()
 
virtual moText GetVideoInput ()
 
virtual moText GetBufferFormat ()
 
- Public Member Functions inherited from moTextureAnimated
 moTextureAnimated ()
 
virtual ~moTextureAnimated ()
 
virtual MOboolean Init (moText p_name, MOuint p_moid, moResourceManager *p_res, moTexParam p_param=MODefTex2DParams)
 
virtual void Play ()
 
virtual void Stop ()
 
virtual bool IsPlaying ()
 
virtual MOint GetGLId (moTempo *tempo)
 
virtual MOint GetGLId (MOuint p_i)
 
virtual MOint GetGLId (MOfloat p_cycle)
 
virtual MOuint GetFrameCount ()
 
virtual void SetFrameCount (MOuint p_nframes)
 
virtual MOfloat GetFramesPerSecond ()
 
virtual void SetFramesPerSecond (MOfloat p_fps)
 
virtual void SetPlayMode (moPlayMode playmode)
 
virtual moPlayMode GetPlayMode ()
 
virtual MOuint GetActualFrame ()
 
virtual void SetInterpolation (MOuint p_FrameJump, MOuint p_InterpolationTime)
 
virtual MOboolean IsInterpolating ()
 
virtual MOboolean IsInterpolationActive ()
 
virtual MOboolean ActivateInterpolation (MOboolean activate=true)
 
- Public Member Functions inherited from moTexture
 moTexture ()
 
virtual ~moTexture ()
 
MOboolean BuildEmpty (MOuint p_width, MOuint p_height)
 
MOboolean BuildFromBuffer (MOuint p_width, MOuint p_height, const GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
MOboolean BuildFromFile (moText p_filename)
 
MOboolean SupportedFile (moText p_filename)
 
MOboolean Load (moParam *p_param)
 
MOboolean Load (moValue *p_value)
 
MOboolean SetBuffer (const GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
MOboolean SetBuffer (MOuint p_width, MOuint p_height, const GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
MOboolean GetBuffer (GLvoid *p_buffer, GLenum p_format=GL_RGBA, GLenum p_type=GL_UNSIGNED_BYTE)
 
void SetGLMan (moGLManager *p_gl)
 
void SetDataMan (moDataManager *p_dataman)
 
void SetFileMan (moFileManager *p_fileman)
 
void SetFBO (moFBO *p_fbo)
 
MOuint SetFBOandAttachPoint (moFBO *p_fbo)
 
void SetFBOAttachPoint (MOuint p_fbo_attach_point)
 
moFBOGetFBO () const
 
MOuint GetFBOAttachPoint () const
 
moTextureType GetType () const
 
MOuint GetGLId () const
 
MOuint GetGLId (moMoldeoObject *p_src_mob)
 TODO: check this! obsolete? More...
 
MOuint GetMOId () const
 
void SetMOId (MOuint p_moid)
 
moText GetName () const
 
void SetName (moText p_name)
 
MOuint GetWidth () const
 
MOuint GetHeight () const
 
MOuint GetDataWidth () const
 
MOuint GetDataHeight () const
 
MOuint GetComponents () const
 
MOlong GetTexelCount () const
 
MOlong GetDataTexelCount () const
 
MOfloat GetMaxCoordS () const
 
MOfloat GetMaxCoordT () const
 
moTexParam GetTexParam () const
 
GLenum GetTexTarget () const
 
GLenum GetTexInternalFormat () const
 
GLint GetMinFilter () const
 
GLint GetMagFilter () const
 
GLint GetWrapS () const
 
GLint GetWrapT () const
 
void FlipBufferVert (MOubyte *pBuffer, MOint p_depth)
 
void CopyFromTex (moTexture *p_src_tex, MOboolean p_copy_glid, MOboolean p_copy_moid, MOboolean p_copy_type, MOboolean p_copy_name)
 
moTextureoperator= (const moTexture &p_src_tex)
 
MOboolean IsBuildedFromFile () const
 
moText CreateThumbnail (moText p_bufferformat, int w, int h, moText newfilename=moText(""))
 
bool CalculateLuminanceAndConstrast (int x0=0, int y0=0, int x1=0, int y1=0)
 
int GetLuminance () const
 
int GetContrast () const
 
MOboolean Refresh ()
 
- Public Member Functions inherited from moAbstract
 moAbstract ()
 
virtual ~moAbstract ()
 
MOboolean Initialized ()
 Pregunta si está inicializado. More...
 

Additional Inherited Members

- Public Types inherited from moTextureAnimated
enum  moPlayMode { MO_PLAYMODE_TIMEBASE, MO_PLAYMODE_FRAMEBASE }
 
- Static Public Member Functions inherited from moTexture
static MOuint NextPowerOf2 (MOuint p_seed)
 
- Public Attributes inherited from moAbstract
MOboolean m_bInitialized
 Valor de inicialización More...
 
- Static Public Attributes inherited from moAbstract
static moDebugMODebug2 = new moDebug()
 Clase de impresión de errores para depuración More...
 
static moTextHeapMODebug = new moTextHeap()
 Lista de textos. More...
 
- Protected Member Functions inherited from moTextureAnimated
virtual MOboolean NeedsInterpolation ()
 
virtual MOint Interpolate ()
 
- Protected Member Functions inherited from moTexture
void SetParam ()
 
void CalculateSize (MOuint p_width, MOuint p_height)
 
MOboolean Build ()
 
bool ResetBufferData (bool force_creation=false, int bytes_per_pixel=0)
 
- Protected Attributes inherited from moTextureAnimated
moPlayMode m_PlayMode
 
MOboolean m_bIsPlaying
 
MOboolean m_bIsPaused
 
MOuint m_nFrames
 
MOfloat m_fFramesPerSecond
 
MOuint m_FrameNext
 
MOuint m_FramePrevious
 
MOuint m_Time
 
MOuint m_ActualFrame
 
MOboolean m_bInterpolation
 
MOboolean m_bInterpolating
 
moTextureFilterm_pCopyStart
 
moTextureFilterm_pCopyEnd
 
moTextureFilterm_pInterpolator
 
moTextureArray m_srcstart
 
moTextureArray m_dststart
 
moTextureArray m_srcend
 
moTextureArray m_dstend
 
moTextureArray m_srcinterpol
 
moTextureArray m_dstinterpol
 
moShaderm_pShaderCopy
 
moShaderm_pShaderInterpolate
 
MOuint m_FrameJump
 
MOuint m_InterpolationTime
 
MOuint m_StartTime
 
MOuint m_FrameStart
 
MOuint m_FrameEnd
 
MOfloat m_InterpolationPosition
 
- Protected Attributes inherited from moTexture
MOboolean m_bBuildedFromFile
 
moFilem_pFile
 
moDataManagerm_pDataMan
 
moFileManagerm_pFileMan
 
moGLManagerm_gl
 
moResourceManagerm_pResourceManager
 
moFBOm_fbo
 
MOuint m_fbo_attach_point
 
moTextureType m_type
 
MOint m_moid
 
MOuint m_glid
 
moText m_name
 
moTexParam m_param
 
MOuint m_width
 
MOuint m_height
 
MOuint m_bytespp
 
MOint m_components
 
MOfloat m_max_coord_s
 
MOfloat m_max_coord_t
 
int Luminance
 
int Contrast
 
moDWord Histogram [256]
 
MOubytem_pBufferData
 
MOuint m_buffer_width
 
MOuint m_buffer_height
 
MOuint m_buffer_bytespp
 

Detailed Description

Circular Video Buffer for live loop video recording.

This special video buffer loads gradually a sequence of images in memory keeping always a number of maximum of frames in a loop. Circular or Loop means you have for example 200 video frames available. The 201th frame will be saved in the 1th video frame in the circular buffer.

Definition at line 324 of file moVideoManager.h.

Constructor & Destructor Documentation

moCircularVideoBuffer::moCircularVideoBuffer ( )

Definition at line 337 of file moVideoManager.cpp.

moCircularVideoBuffer::~moCircularVideoBuffer ( )
virtual

Definition at line 349 of file moVideoManager.cpp.

Member Function Documentation

void moCircularVideoBuffer::ContinueRecording ( )
virtual

Definition at line 568 of file moVideoManager.cpp.

MOboolean moCircularVideoBuffer::Finish ( )
virtual

Destruye la textura openGL.

Returns
true si la operación fue exitosa, false en caso contrario.

if (m_pInterpolator) { delete m_pInterpolator; m_pInterpolator = NULL; } if (m_pCopyStart) { delete m_pCopyStart; m_pCopyStart = NULL; } if (m_pCopyEnd) { delete m_pCopyEnd; m_pCopyEnd = NULL; }

Reimplemented from moTextureAnimated.

Definition at line 394 of file moVideoManager.cpp.

virtual moText moCircularVideoBuffer::GetBufferFormat ( )
inlinevirtual

Definition at line 352 of file moVideoManager.h.

void moCircularVideoBuffer::GetFrame ( MOuint  p_i)
virtual

Calcula el cuadro i-ésimo de la animación.

Parameters
p_iíndice del cuadro a cualcular.

always needs implementation??? must be pure virtual.

Reimplemented from moTextureAnimated.

Definition at line 492 of file moVideoManager.cpp.

long moCircularVideoBuffer::GetRecordPosition ( )
virtual

Definition at line 588 of file moVideoManager.cpp.

virtual MOint moCircularVideoBuffer::GetSourceHeight ( )
inlinevirtual

Definition at line 350 of file moVideoManager.h.

virtual MOint moCircularVideoBuffer::GetSourceWidth ( )
inlinevirtual

Definition at line 349 of file moVideoManager.h.

virtual moText moCircularVideoBuffer::GetVideoInput ( )
inlinevirtual

Definition at line 351 of file moVideoManager.h.

virtual MOint moCircularVideoBuffer::GetXSource ( )
inlinevirtual

Definition at line 347 of file moVideoManager.h.

virtual MOint moCircularVideoBuffer::GetYSource ( )
inlinevirtual

Definition at line 348 of file moVideoManager.h.

MOboolean moCircularVideoBuffer::Init ( )
virtual

Inicializa el objeto.

Función de Inicialización. Todos los recursos manejados exclusivamente por este objeto son generados aquí.

Returns
verdadero si fue exitosa o falso en otro caso

Reimplemented from moAbstract.

Definition at line 353 of file moVideoManager.cpp.

MOboolean moCircularVideoBuffer::Init ( moText  videoinput,
moText  bufferformat,
moResourceManager p_pResourceManager,
MOint  frames,
MOint  width,
MOint  height,
MOint  xsource,
MOint  ysource,
MOint  sourcewidth,
MOint  sourceheight 
)
virtual

Definition at line 362 of file moVideoManager.cpp.

bool moCircularVideoBuffer::IsRecording ( )
virtual

Definition at line 584 of file moVideoManager.cpp.

void moCircularVideoBuffer::JumpRecording ( long  at_position)
virtual

Definition at line 572 of file moVideoManager.cpp.

MOboolean moCircularVideoBuffer::LoadSample ( moVideoSample pvideosample)
virtual

RESCALE

Definition at line 407 of file moVideoManager.cpp.

void moCircularVideoBuffer::PauseRecording ( )
virtual

Definition at line 564 of file moVideoManager.cpp.

void moCircularVideoBuffer::StartRecording ( long  at_position = -1)
virtual

Definition at line 553 of file moVideoManager.cpp.

void moCircularVideoBuffer::StopRecording ( )
virtual

Definition at line 580 of file moVideoManager.cpp.


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