xref: /OK3568_Linux_fs/external/common_algorithm/video/move_detect/include/move_detection.h (revision 4882a59341e53eb6f0b4789bf948001014eff981)
1 #ifndef _MOVE_DETECTION_H
2 #define _MOVE_DETECTION_H
3 
4 #ifdef __cplusplus
5 extern "C" {
6 #endif
7 
8 typedef struct {
9 	unsigned short flag;      // 1 ��Ч�� 0��Ч
10 	unsigned short up_left[2];     // ���Ͻ����꣬�²���ǰ��0��y���꣬1��x����
11 	unsigned short down_right[2];   // ���½����꣬�²���ǰ��0��y���꣬1��x����
12 
13 } INFO_LIST;
14 
15 typedef struct {
16 	unsigned short flag;      // 1 ��Ч�� 0��Ч
17 	unsigned short is_move;   // �˶���־
18 	unsigned short up_left[2];     // �²���ǰ���Ͻ����꣬0��y���꣬1��x����
19 	unsigned short down_right[2];   // �²���ǰ���½����꣬0��y���꣬1��x����
20 } ROI_INFO;
21 
22 struct md_ctx;
23 
24 typedef struct {
25 	int still_threshold0;
26 	int still_threshold1;
27 	int pix_threshold;
28 	int reserved[32];
29 } MD_PARAMS;
30 
31 struct md_ctx *move_detection_init(int width, int height, int width_ds, int height_ds, int is_single_ref);
32 int move_detection_set_params(struct md_ctx *ctx, MD_PARAMS param);
33 void move_detection_deinit(struct md_ctx *ctx);
34 void move_detection(struct md_ctx *ctx, void *downscale_frame_y, ROI_INFO * p_roi_in, INFO_LIST *info_list);
35 int move_detection_set_sensitivity(struct md_ctx *ctx, int value);
36 #ifdef __cplusplus
37 } //extern "C"
38 #endif
39 
40 #endif
41