7 #define TOTAL_PATTERNS 2
11 #include "pluginvclient.h"
12 #include "ivtcwindow.h"
13 #include <sys/types.h>
27 class IVTCMain
: public PluginVClient
30 IVTCMain(PluginServer
*server
);
33 // required for all realtime plugins
34 int process_realtime(VFrame
*input_ptr
, VFrame
*output_ptr
);
36 void save_data(KeyFrame
*keyframe
);
37 void read_data(KeyFrame
*keyframe
);
38 PLUGIN_CLASS_MEMBERS(IVTCConfig
, IVTCThread
)
44 void compare_fields(VFrame
*frame1
,
50 // 0, 3, 4 indicating pattern frame the automatic algorithm is on
52 // New field detected in state 2
54 int64_t average
, total_average
;
55 VFrame
*temp_frame
[2];
60 class IVTCEngine
: public Thread
63 IVTCEngine(IVTCMain
*plugin
, int start_y
, int end_y
);
67 int start_process_frame(VFrame
*output
, VFrame
*input
);
68 int wait_process_frame();
72 VFrame
*output
, *input
;
73 Mutex input_lock
, output_lock
;
75 int64_t field1
, field2
;