CVD::VFB::RawVideoFileBuffer Class Reference

#include <videofilebuffer.h>

List of all members.

Public Member Functions

std::string codec_name ()
 What codec is being used to decode this video?
std::string file_name ()
 What is the path to the video file?
bool frame_pending ()
 Is there a frame waiting in the buffer? This function does not block.
double frames_per_second ()
 What is the (expected) frame rate of this video buffer, in frames per second?
void * get_frame ()
 Returns the next frame from the buffer. This function blocks until a frame is ready.
void on_end_of_buffer (VideoBufferFlags::OnEndOfBuffer behaviour)
void put_frame (void *f)
 RawVideoFileBuffer (const std::string &file, bool is_rgb)
void seek_to (double t)
ImageRef size ()
 The size of the VideoFrames returned by this buffer.
 ~RawVideoFileBuffer ()

Private Member Functions

bool read_next_frame ()

Private Attributes

VideoBufferFlags::OnEndOfBuffer end_of_buffer_behaviour
bool frame_ready
double frame_time
SwsContext * img_convert_ctx
bool is_rgb
ImageRef my_size
CVD::Image< CVD::bytenext_frame
CVD::Image< CVD::Rgb< byte > > next_frame_rgb
AVCodecContext * pCodecContext
AVFormatContext * pFormatContext
AVFrame * pFrame
AVFrame * pFrameRGB
double start_time
int video_stream

Detailed Description

Internal (non type-safe) class used by VideoFileBuffer This does the real interfacing with the ffmpeg library

Definition at line 113 of file videofilebuffer.h.


Constructor & Destructor Documentation

CVD::VFB::RawVideoFileBuffer::RawVideoFileBuffer ( const std::string &  file,
bool  is_rgb 
)

Construct a video buffer to play this file

Parameters:
file The path to the video file
is_rgb Is RGB data wanted?
CVD::VFB::RawVideoFileBuffer::~RawVideoFileBuffer (  ) 

Member Function Documentation

std::string CVD::VFB::RawVideoFileBuffer::codec_name (  )  [inline]

What codec is being used to decode this video?

Definition at line 168 of file videofilebuffer.h.

std::string CVD::VFB::RawVideoFileBuffer::file_name (  )  [inline]

What is the path to the video file?

Definition at line 162 of file videofilebuffer.h.

bool CVD::VFB::RawVideoFileBuffer::frame_pending (  )  [inline]

Is there a frame waiting in the buffer? This function does not block.

Definition at line 135 of file videofilebuffer.h.

double CVD::VFB::RawVideoFileBuffer::frames_per_second (  )  [inline]

What is the (expected) frame rate of this video buffer, in frames per second?

Definition at line 152 of file videofilebuffer.h.

void* CVD::VFB::RawVideoFileBuffer::get_frame (  ) 

Returns the next frame from the buffer. This function blocks until a frame is ready.

void CVD::VFB::RawVideoFileBuffer::on_end_of_buffer ( VideoBufferFlags::OnEndOfBuffer  behaviour  )  [inline]

What should the buffer do when it reaches the end of the list of files?

Parameters:
behaviour The desired behaviour

Definition at line 146 of file videofilebuffer.h.

void CVD::VFB::RawVideoFileBuffer::put_frame ( void *  f  ) 

Tell the buffer that you are finished with this frame.

Parameters:
f The frame that you are finished with.
bool CVD::VFB::RawVideoFileBuffer::read_next_frame (  )  [private]
void CVD::VFB::RawVideoFileBuffer::seek_to ( double  t  ) 

Go to a particular point in the video buffer (only implemented in buffers of recorded video)

Parameters:
t The frame time in seconds
ImageRef CVD::VFB::RawVideoFileBuffer::size (  )  [inline]

The size of the VideoFrames returned by this buffer.

Definition at line 123 of file videofilebuffer.h.


Member Data Documentation

Definition at line 178 of file videofilebuffer.h.

Definition at line 180 of file videofilebuffer.h.

Definition at line 192 of file videofilebuffer.h.

Definition at line 187 of file videofilebuffer.h.

Definition at line 193 of file videofilebuffer.h.

Definition at line 177 of file videofilebuffer.h.

Definition at line 190 of file videofilebuffer.h.

Definition at line 189 of file videofilebuffer.h.

Definition at line 184 of file videofilebuffer.h.

Definition at line 182 of file videofilebuffer.h.

Definition at line 185 of file videofilebuffer.h.

Definition at line 186 of file videofilebuffer.h.

Definition at line 179 of file videofilebuffer.h.

Definition at line 183 of file videofilebuffer.h.


The documentation for this class was generated from the following file:
 All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Defines


libcvd
Author(s): Edward Rosten, Paul Smith, Tom Drummond, Gerhard Reitmayr, Ethan Eade, Timothy Gan, Chris Kemp, Georg Klein
autogenerated on Fri Jan 11 09:14:00 2013