Main Page | Class Hierarchy | Alphabetical List | Class List | Directories | File List | Class Members | File Members

RecordVideo Class Reference

#include <recordvideo.h>

List of all members.

Public Member Functions

 RecordVideo (MWindow *mwindow, Record *record, RecordThread *record_thread)
 ~RecordVideo ()
void reset_parameters ()
void run ()
int arm_recording ()
void start_recording ()
int stop_recording ()
int pause_recording ()
int resume_recording ()
int wait_for_completion ()
int set_parameters (File *file, RecordGUI *gui, int buffer_size, int realtime, int frames)
void write_buffer (int skip_new=0)
void start_file_thread ()
int unhang_thread ()
void rewind_file ()
void finish_timed ()
void finish_loop ()
void get_capture_frame ()
void read_buffer ()

Public Attributes

MWindowmwindow
Recordrecord
RecordThreadrecord_thread
RecordGUIgui
int single_frame
int buffer_size
int64_t buffer_position
VFrame * capture_frame
Timer delayer
int write_result
int grab_result
VFrame *** frame_ptr
int64_t current_sample
int64_t next_sample
int64_t total_dropped_frames
int64_t dropped_frames
int64_t last_dropped_frames
int64_t delay
int64_t record_start
int batch_done
int is_recording
int is_paused
Mutex * unhang_lock
Condition * trigger_lock

Private Member Functions

int cleanup_recording ()


Detailed Description

Definition at line 16 of file recordvideo.h.


Constructor & Destructor Documentation

RecordVideo::RecordVideo MWindow mwindow,
Record record,
RecordThread record_thread
 

Definition at line 30 of file recordvideo.C.

References gui, Record::record_gui, reset_parameters(), trigger_lock, and unhang_lock.

RecordVideo::~RecordVideo  ) 
 

Definition at line 44 of file recordvideo.C.

References trigger_lock, and unhang_lock.


Member Function Documentation

int RecordVideo::arm_recording  ) 
 

Definition at line 62 of file recordvideo.C.

References buffer_size, MWindow::edl, RecordThread::monitor, mwindow, record_thread, reset_parameters(), EDL::session, trigger_lock, and EDLSession::video_write_length.

Referenced by RecordThread::run().

int RecordVideo::cleanup_recording  )  [private]
 

Definition at line 103 of file recordvideo.C.

References capture_frame, frame_ptr, RecordThread::monitor, record_thread, and write_buffer().

Referenced by run(), and stop_recording().

void RecordVideo::finish_loop  ) 
 

void RecordVideo::finish_timed  ) 
 

void RecordVideo::get_capture_frame  ) 
 

Definition at line 122 of file recordvideo.C.

References capture_frame, Record::default_asset, Record::fixed_compression, frame_ptr, VideoDevice::get_best_colormodel(), Asset::height, record, Record::vdevice, and Asset::width.

Referenced by run().

int RecordVideo::pause_recording  ) 
 

void RecordVideo::read_buffer  ) 
 

Definition at line 342 of file recordvideo.C.

References capture_frame, Record::default_asset, grab_result, VideoDevice::is_compressed(), VideoDevice::read_buffer(), record, Asset::vcodec, and Record::vdevice.

Referenced by run().

void RecordVideo::reset_parameters  ) 
 

Definition at line 50 of file recordvideo.C.

References batch_done, buffer_position, dropped_frames, grab_result, last_dropped_frames, record_start, total_dropped_frames, and write_result.

Referenced by arm_recording(), and RecordVideo().

int RecordVideo::resume_recording  ) 
 

void RecordVideo::rewind_file  ) 
 

Definition at line 372 of file recordvideo.C.

References buffer_size, Batch::current_frame, Batch::current_sample, Record::default_asset, Record::file, frame_ptr, Asset::frame_rate, VideoDevice::get_best_colormodel(), Record::get_current_batch(), File::get_video_buffer(), gui, VideoDevice::is_compressed(), record, Batch::session_frames, Batch::session_samples, File::set_video_position(), File::start_video_thread(), File::stop_video_thread(), RecordGUI::update_position(), Record::vdevice, and write_buffer().

void RecordVideo::run  ) 
 

Definition at line 142 of file recordvideo.C.

References _, Asset::audio_data, RecordAudio::batch_done, batch_done, buffer_position, buffer_size, capture_frame, cleanup_recording(), RecordThread::context, Record::current_display_position(), Record::current_duration(), Batch::current_frame, current_sample, Record::default_asset, delay, delayer, dropped_frames, Record::file, Record::fill_frames, frame_ptr, Asset::frame_rate, get_capture_frame(), Record::get_current_batch(), File::get_video_buffer(), File::get_video_position(), grab_result, MWindow::gui, gui, last_dropped_frames, RecordThread::monitor, Record::monitor_video, mwindow, next_sample, read_buffer(), record, RecordThread::record_audio, Batch::record_mode, Record::record_monitor, record_start, record_thread, Record::reverse_interlace, Asset::sample_rate, Batch::session_frames, VideoDevice::set_field_order(), RecordAudio::stop_recording(), Record::sync_position(), RecordGUI::total_dropped_frames, Batch::total_frames, trigger_lock, RecordMonitor::update(), RecordGUI::update_dropped_frames(), RecordGUI::update_position(), Record::vdevice, write_buffer(), and write_result.

int RecordVideo::set_parameters File file,
RecordGUI gui,
int  buffer_size,
int  realtime,
int  frames
 

void RecordVideo::start_file_thread  ) 
 

void RecordVideo::start_recording  ) 
 

Definition at line 77 of file recordvideo.C.

References trigger_lock.

Referenced by RecordThread::run().

int RecordVideo::stop_recording  ) 
 

Definition at line 82 of file recordvideo.C.

References cleanup_recording(), VideoDevice::get_failed(), VideoDevice::interrupt_crash(), record, and Record::vdevice.

Referenced by RecordThread::pause_recording(), and RecordThread::stop_recording().

int RecordVideo::unhang_thread  ) 
 

Definition at line 389 of file recordvideo.C.

int RecordVideo::wait_for_completion  ) 
 

void RecordVideo::write_buffer int  skip_new = 0  ) 
 

Definition at line 364 of file recordvideo.C.

References buffer_position, Record::file, frame_ptr, File::get_video_buffer(), record, write_result, and File::write_video_buffer().

Referenced by cleanup_recording(), rewind_file(), and run().


Member Data Documentation

int RecordVideo::batch_done
 

Definition at line 74 of file recordvideo.h.

Referenced by RecordThread::pause_recording(), reset_parameters(), RecordThread::resume_recording(), run(), and RecordThread::stop_recording().

int64_t RecordVideo::buffer_position
 

Definition at line 55 of file recordvideo.h.

Referenced by reset_parameters(), run(), and write_buffer().

int RecordVideo::buffer_size
 

Definition at line 54 of file recordvideo.h.

Referenced by arm_recording(), rewind_file(), and run().

VFrame* RecordVideo::capture_frame
 

Definition at line 56 of file recordvideo.h.

Referenced by cleanup_recording(), get_capture_frame(), read_buffer(), and run().

int64_t RecordVideo::current_sample
 

Definition at line 64 of file recordvideo.h.

Referenced by run().

int64_t RecordVideo::delay
 

Definition at line 69 of file recordvideo.h.

Referenced by run().

Timer RecordVideo::delayer
 

Definition at line 57 of file recordvideo.h.

Referenced by run().

int64_t RecordVideo::dropped_frames
 

Definition at line 67 of file recordvideo.h.

Referenced by reset_parameters(), and run().

VFrame*** RecordVideo::frame_ptr
 

Definition at line 63 of file recordvideo.h.

Referenced by cleanup_recording(), get_capture_frame(), rewind_file(), run(), and write_buffer().

int RecordVideo::grab_result
 

Definition at line 61 of file recordvideo.h.

Referenced by read_buffer(), reset_parameters(), and run().

RecordGUI* RecordVideo::gui
 

Definition at line 52 of file recordvideo.h.

Referenced by RecordVideo(), rewind_file(), and run().

int RecordVideo::is_paused
 

Definition at line 78 of file recordvideo.h.

int RecordVideo::is_recording
 

Definition at line 77 of file recordvideo.h.

int64_t RecordVideo::last_dropped_frames
 

Definition at line 68 of file recordvideo.h.

Referenced by reset_parameters(), and run().

MWindow* RecordVideo::mwindow
 

Definition at line 48 of file recordvideo.h.

Referenced by arm_recording(), and run().

int64_t RecordVideo::next_sample
 

Definition at line 65 of file recordvideo.h.

Referenced by run().

Record* RecordVideo::record
 

Definition at line 49 of file recordvideo.h.

Referenced by get_capture_frame(), read_buffer(), rewind_file(), run(), stop_recording(), and write_buffer().

int64_t RecordVideo::record_start
 

Definition at line 71 of file recordvideo.h.

Referenced by reset_parameters(), and run().

RecordThread* RecordVideo::record_thread
 

Definition at line 51 of file recordvideo.h.

Referenced by arm_recording(), cleanup_recording(), and run().

int RecordVideo::single_frame
 

Definition at line 53 of file recordvideo.h.

int64_t RecordVideo::total_dropped_frames
 

Definition at line 66 of file recordvideo.h.

Referenced by reset_parameters().

Condition* RecordVideo::trigger_lock
 

Definition at line 80 of file recordvideo.h.

Referenced by arm_recording(), RecordVideo(), run(), start_recording(), and ~RecordVideo().

Mutex* RecordVideo::unhang_lock
 

Definition at line 79 of file recordvideo.h.

Referenced by RecordVideo(), and ~RecordVideo().

int RecordVideo::write_result
 

Definition at line 59 of file recordvideo.h.

Referenced by reset_parameters(), run(), and write_buffer().


The documentation for this class was generated from the following files:
Generated on Sun Jan 8 13:39:24 2006 for Cinelerra-svn by  doxygen 1.4.4