TuyaOS
tkl_video_in.h
浏览该文件的文档.
1
13#ifndef __TKL_VIDEO_IN_H__
14#define __TKL_VIDEO_IN_H__
15
16#include "tuya_cloud_types.h"
17#include "tkl_media.h"
18#include "tkl_isp.h"
19
20#ifdef __cplusplus
21 extern "C" {
22#endif
23
24typedef struct
25{
26 // 1IIC+host Ӧһvideo豸 hardware_port[0] + host_port[0] 1video豸
27 UINT32_T * hardware_port; // iic
28 UINT32_T * host_port; // host dvp or mipi
29 UINT32_T haraware_source_num; // һжٶ iic + host
30
31 // Ƶڴصķ䷽ RTOSϵͳƬPSRAM Ҫ֧
32 void (*v_mem_free)(void *);
33 void *(*v_mem_malloc)(UINT32_T size);
34
36
37typedef struct
38{
39 UINT32_T page;
40 UINT32_T reg_index;
41 UINT32_T val;
43
44typedef enum
45{
46 TKL_VI_SENSOR_TYPE_IIC,
47 TKL_VI_SENSOR_TYPE_SPI,
48}TKL_VI_SENSOR_CBUS_TYPE_E;
49
50typedef struct
51{
52 CHAR_T conf[128]; // isp conf path
53 CHAR_T version[32]; // version num
54 CHAR_T name[16]; // isp sensor num
55 TKL_ISP_DN_SWITCH_CONFIG_T isp_dn_switch_config; // ADN switch config
56 TKL_VI_SENSOR_CBUS_TYPE_E sensor_type; // sensor control bus type
57 INT32_T addr; // sensor address
58 INT32_T width;
59 INT32_T height;
61
62typedef struct
63{
64 INT32_T enable; // 1,enable,0,disable
65 TKL_VI_CHN_E chn; // video input channel
66 INT32_T mirror; // mirror defaults
67 INT32_T filp; // filp defaults
68 TKL_VI_ISP_CONFIG_T isp; // isp config
69 VOID * pdata // reserver data
71
72typedef struct
73{
74 FLOAT_T x;
75 FLOAT_T y;
76 FLOAT_T width;
77 FLOAT_T height;
79
80typedef struct
81{
82 TKL_VI_RECT_T draw_rect; // coordinate region
83 INT32_T score; // score
85
86typedef struct
87{
88 INT32_T count;
89 TKL_VI_HD_TARGET_T target[TKL_VI_HD_TARGET_MAX];
91
92typedef struct
93{
94 INT32_T sensitivity;
96
105OPERATE_RET tkl_vi_init(TKL_VI_CONFIG_T *pconfig, INT32_T count);
106
115OPERATE_RET tkl_vi_set_mirror_flip(TKL_VI_CHN_E chn, TKL_VI_MIRROR_FLIP_E flag);
116
125OPERATE_RET tkl_vi_get_mirror_flip(TKL_VI_CHN_E chn, TKL_VI_MIRROR_FLIP_E *flag);
126
132OPERATE_RET tkl_vi_uninit(VOID);
133
141OPERATE_RET tkl_vi_detect_hd_start(TKL_VI_CHN_E chn);
142
150OPERATE_RET tkl_vi_detect_hd_stop(TKL_VI_CHN_E chn);
151
160OPERATE_RET tkl_vi_detect_hd_get_result(TKL_VI_CHN_E chn, TKL_VI_DETECT_HD_RESULT_T *presult);
161
170OPERATE_RET tkl_vi_detect_hd_set(INT32_T chn, TKL_VI_DETECT_HD_PARAM_T *pparam);
171
180OPERATE_RET tkl_vi_sensor_reg_set( TKL_VI_CHN_E chn, TKL_VI_SENSOR_REG_CONFIG_T *parg);
181
190OPERATE_RET tkl_vi_sensor_reg_get( TKL_VI_CHN_E chn, TKL_VI_SENSOR_REG_CONFIG_T *parg);
191
192#ifdef __cplusplus
193}
194#endif
195
196#endif
Definition: tkl_isp.h:80
Definition: tkl_video_in.h:63
Definition: tkl_video_in.h:93
Definition: tkl_video_in.h:87
Definition: tkl_video_in.h:25
Definition: tkl_video_in.h:81
Definition: tkl_video_in.h:51
Definition: tkl_video_in.h:73
Definition: tkl_video_in.h:38
Audio and video generic type definition header file
OPERATE_RET tkl_vi_sensor_reg_set(TKL_VI_CHN_E chn, TKL_VI_SENSOR_REG_CONFIG_T *parg)
set sensor reg value
OPERATE_RET tkl_vi_uninit(VOID)
vi uninit
OPERATE_RET tkl_vi_get_mirror_flip(TKL_VI_CHN_E chn, TKL_VI_MIRROR_FLIP_E *flag)
vi get mirror and flip
OPERATE_RET tkl_vi_detect_hd_stop(TKL_VI_CHN_E chn)
vi stop human shape detection
OPERATE_RET tkl_vi_init(TKL_VI_CONFIG_T *pconfig, INT32_T count)
vi init
OPERATE_RET tkl_vi_sensor_reg_get(TKL_VI_CHN_E chn, TKL_VI_SENSOR_REG_CONFIG_T *parg)
get sensor reg value
OPERATE_RET tkl_vi_detect_hd_set(INT32_T chn, TKL_VI_DETECT_HD_PARAM_T *pparam)
set human shape detection param
OPERATE_RET tkl_vi_detect_hd_get_result(TKL_VI_CHN_E chn, TKL_VI_DETECT_HD_RESULT_T *presult)
get human shape detection results
OPERATE_RET tkl_vi_detect_hd_start(TKL_VI_CHN_E chn)
vi turn on human shape detection
OPERATE_RET tkl_vi_set_mirror_flip(TKL_VI_CHN_E chn, TKL_VI_MIRROR_FLIP_E flag)
vi set mirror and flip