
Public Member Functions | |
| Decimate (PluginServer *server) | |
| ~Decimate () | |
| int | process_buffer (VFrame *frame, int64_t start_position, double frame_rate) |
| int | is_realtime () |
| char * | plugin_title () |
| VFrame * | new_picon () |
| int | show_gui () |
| int | load_configuration () |
| int | set_string () |
| int | load_defaults () |
| int | save_defaults () |
| void | save_data (KeyFrame *keyframe) |
| void | read_data (KeyFrame *keyframe) |
| void | raise_window () |
| void | update_gui () |
| void | render_gui (void *data) |
| int64_t | calculate_difference (VFrame *frame1, VFrame *frame2) |
| void | fill_lookahead (double frame_rate, int64_t start_position) |
| void | decimate_frame () |
| void | init_fdct () |
| void | fdct (uint16_t *block) |
| int64_t | calculate_fdct (VFrame *frame) |
Data Fields | |
| double | c [8][8] |
| int | fdct_ready |
| int64_t | differences [TOTAL_FRAMES] |
| VFrame * | frames [TOTAL_FRAMES] |
| int | lookahead_size |
| int64_t | lookahead_end |
| double | lookahead_rate |
| int64_t | last_position |
| DecimateThread * | thread |
| DecimateConfig | config |
| BC_Hash * | defaults |
Definition at line 109 of file decimate.C.
| Decimate::Decimate | ( | PluginServer * | server | ) |
| Decimate::~Decimate | ( | ) |
Definition at line 409 of file decimate.C.
References frames, PLUGIN_DESTRUCTOR_MACRO, and TOTAL_FRAMES.
| int Decimate::process_buffer | ( | VFrame * | frame, | |
| int64_t | start_position, | |||
| double | frame_rate | |||
| ) | [virtual] |
Reimplemented from PluginVClient.
Definition at line 698 of file decimate.C.
References VFrame::copy_from(), differences, fill_lookahead(), frames, VFrame::get_color_model(), VFrame::get_h(), VFrame::get_w(), load_configuration(), lookahead_size, PluginVClient::temp, and TOTAL_FRAMES.

| int Decimate::is_realtime | ( | ) | [virtual] |
| char * Decimate::plugin_title | ( | ) | [virtual] |
| VFrame* Decimate::new_picon | ( | ) | [virtual] |
Reimplemented from PluginClient.
| int Decimate::show_gui | ( | ) | [virtual] |
Reimplemented from PluginClient.
| int Decimate::load_configuration | ( | ) |
Definition at line 754 of file decimate.C.
References config, DecimateConfig::copy_from(), DecimateConfig::equivalent(), PluginClient::get_prev_keyframe(), PluginClient::get_source_position(), and read_data().
Referenced by process_buffer(), and update_gui().

| int Decimate::set_string | ( | ) | [virtual] |
Reimplemented from PluginClient.
| int Decimate::load_defaults | ( | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 764 of file decimate.C.
References BCASTDIR, BCTEXTLEN, config, defaults, Units::fix_framerate(), BC_Hash::get(), DecimateConfig::input_rate, and BC_Hash::load().

| int Decimate::save_defaults | ( | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 781 of file decimate.C.
References config, defaults, DecimateConfig::input_rate, BC_Hash::save(), and BC_Hash::update().

| void Decimate::save_data | ( | KeyFrame * | keyframe | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 790 of file decimate.C.
References FileXML::append_tag(), config, KeyFrame::data, DecimateConfig::input_rate, PluginVClient::output, XMLTag::set_property(), FileXML::set_shared_string(), XMLTag::set_title(), FileXML::tag, and FileXML::terminate_string().

| void Decimate::read_data | ( | KeyFrame * | keyframe | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 806 of file decimate.C.
References config, KeyFrame::data, Units::fix_framerate(), XMLTag::get_property(), PluginVClient::input, DecimateConfig::input_rate, FileXML::read_tag(), FileXML::set_shared_string(), FileXML::tag, and XMLTag::title_is().
Referenced by load_configuration().

| void Decimate::raise_window | ( | ) | [virtual] |
Reimplemented from PluginClient.
| void Decimate::update_gui | ( | ) | [virtual] |
Reimplemented from PluginClient.
Definition at line 826 of file decimate.C.
References config, DecimateConfig::input_rate, load_configuration(), and thread.

| void Decimate::render_gui | ( | void * | data | ) | [virtual] |
Definition at line 439 of file decimate.C.
References BC_RGB161616, BC_RGB888, BC_RGB_FLOAT, BC_RGBA16161616, BC_RGBA8888, BC_RGBA_FLOAT, BC_YUV161616, BC_YUV888, BC_YUVA16161616, BC_YUVA8888, DIFFERENCE_MACRO, VFrame::get_color_model(), VFrame::get_h(), and VFrame::get_w().
Referenced by fill_lookahead().

| void Decimate::fill_lookahead | ( | double | frame_rate, | |
| int64_t | start_position | |||
| ) |
Definition at line 640 of file decimate.C.
References calculate_difference(), config, decimate_frame(), differences, EQUIV, frames, DecimateConfig::input_rate, last_position, lookahead_end, lookahead_rate, lookahead_size, PluginVClient::read_frame(), and TOTAL_FRAMES.
Referenced by process_buffer().

| void Decimate::decimate_frame | ( | ) |
Definition at line 603 of file decimate.C.
References config, differences, frames, DecimateConfig::least_difference, LL, lookahead_size, PluginVClient::send_render_gui(), and PluginVClient::temp.
Referenced by fill_lookahead().

| void Decimate::init_fdct | ( | ) |
| void Decimate::fdct | ( | uint16_t * | block | ) |
| int64_t Decimate::calculate_fdct | ( | VFrame * | frame | ) |
Definition at line 561 of file decimate.C.
References CALCULATE_DCT, fdct_ready, VFrame::get_h(), VFrame::get_w(), init_fdct(), and PluginVClient::temp.

| double Decimate::c[8][8] |
| int64_t Decimate::differences[TOTAL_FRAMES] |
Definition at line 146 of file decimate.C.
Referenced by decimate_frame(), fill_lookahead(), and process_buffer().
| VFrame* Decimate::frames[TOTAL_FRAMES] |
Definition at line 149 of file decimate.C.
Referenced by decimate_frame(), fill_lookahead(), process_buffer(), and ~Decimate().
Definition at line 151 of file decimate.C.
Referenced by decimate_frame(), fill_lookahead(), and process_buffer().
| int64_t Decimate::lookahead_end |
| double Decimate::lookahead_rate |
| int64_t Decimate::last_position |
| DecimateThread* Decimate::thread |
Definition at line 160 of file decimate.C.
Referenced by decimate_frame(), fill_lookahead(), DecimateRateMenu::handle_event(), DecimateRate::handle_event(), load_configuration(), load_defaults(), read_data(), save_data(), save_defaults(), and update_gui().
1.5.5