ISVP-SDK  3.12.0
Ingenic Smart Video Platform SDK
imp_ivs.h
浏览该文件的文档.
1 /*
2  * IMP IVS header file.
3  *
4  * Copyright (C) 2015 Ingenic Semiconductor Co.,Ltd
5  */
6 
7 #ifndef __IMP_IVS_H__
8 #define __IMP_IVS_H__
9 
10 #ifdef __cplusplus
11 #if __cplusplus
12 extern "C"
13 {
14 #endif
15 #endif /* __cplusplus */
16 
17 #include <imp/imp_common.h>
18 
24 #define IMP_IVS_DEFAULT_TIMEOUTMS (-1)
25 
127 
129  void *param;
130  int paramSize;
132  int (*init)(IMPIVSInterface *inf);
133  void (*exit)(IMPIVSInterface *inf);
136  int (*getResult)(IMPIVSInterface *inf, void **result);
137  int (*releaseResult)(IMPIVSInterface *inf, void *result);
138  int (*getParam)(IMPIVSInterface *inf, void *param);
139  int (*setParam)(IMPIVSInterface *inf, void *param);
141  void *priv;
142 };
143 
158 int IMP_IVS_CreateGroup(int GrpNum);
159 
174 int IMP_IVS_DestroyGroup(int GrpNum);
191 int IMP_IVS_CreateChn(int ChnNum, IMPIVSInterface *handler);
192 
207 int IMP_IVS_DestroyChn(int ChnNum);
208 
225 int IMP_IVS_RegisterChn(int GrpNum, int ChnNum);
226 
241 int IMP_IVS_UnRegisterChn(int ChnNum);
242 
257 int IMP_IVS_StartRecvPic(int ChnNum);
258 
273 int IMP_IVS_StopRecvPic(int ChnNum);
274 
291 int IMP_IVS_PollingResult(int ChnNum, int timeoutMs);
292 
309 int IMP_IVS_GetResult(int ChnNum, void **result);
310 
329 int IMP_IVS_ReleaseResult(int ChnNum, void *result);
330 
346 int IMP_IVS_ReleaseData(void *vaddr);
347 
361 int IMP_IVS_GetParam(int chnNum, void *param);
362 
376 int IMP_IVS_SetParam(int chnNum, void *param);
377 
382 #ifdef __cplusplus
383 #if __cplusplus
384 }
385 #endif
386 #endif /* __cplusplus */
387 
388 #endif /* __IMP_IVS_H__ */
int IMP_IVS_RegisterChn(int GrpNum, int ChnNum)
注册通道到通道组
int IMP_IVS_StopRecvPic(int ChnNum)
通道停止接收图像
void * param
输入参数
Definition: imp_ivs.h:129
int IMP_IVS_UnRegisterChn(int ChnNum)
从通道组注消通道
int IMP_IVS_SetParam(int chnNum, void *param)
设置通道算法参数
int(* flushFrame)(IMPIVSInterface *inf)
释放由外部通过processAsync输入给算法后被缓存的所有frame
Definition: imp_ivs.h:140
int(* setParam)(IMPIVSInterface *inf, void *param)
设置算法参数
Definition: imp_ivs.h:139
int IMP_IVS_PollingResult(int ChnNum, int timeoutMs)
阻塞判断是否可以获得IVS功能已计算出的智能分析结果
int IMP_IVS_ReleaseData(void *vaddr)
释放传给Datacallback的参数frame
void * priv
私有变量
Definition: imp_ivs.h:141
IMP帧图像信息定义.
Definition: imp_common.h:54
Definition: imp_ivs.h:128
int(* processAsync)(IMPIVSInterface *inf, IMPFrameInfo *frame)
处理函数, SDK IVS 模块对传入此函数的frame 额外加了锁,故此函数必须在该frame使用完毕后尽快使用free_dat...
Definition: imp_ivs.h:135
IMPPixelFormat pixfmt
算法需要数据格式
Definition: imp_ivs.h:131
int IMP_IVS_CreateGroup(int GrpNum)
创建通道组
int(* releaseResult)(IMPIVSInterface *inf, void *result)
释放结果资源
Definition: imp_ivs.h:137
int(* getResult)(IMPIVSInterface *inf, void **result)
获取结果资源
Definition: imp_ivs.h:136
int IMP_IVS_GetResult(int ChnNum, void **result)
获得IVS功能计算出的智能分析结果
int(* getParam)(IMPIVSInterface *inf, void *param)
获得算法参数
Definition: imp_ivs.h:138
int paramSize
参数空间大小
Definition: imp_ivs.h:130
int IMP_IVS_GetParam(int chnNum, void *param)
获取通道算法参数
int IMP_IVS_StartRecvPic(int ChnNum)
通道开始接收图像
IMPPixelFormat
IMP图像格式定义.
Definition: imp_common.h:90
int IMP_IVS_DestroyGroup(int GrpNum)
销毁通道组
SDK-T15公共数据结构头文件
void(* exit)(IMPIVSInterface *inf)
注销函数
Definition: imp_ivs.h:133
int IMP_IVS_ReleaseResult(int ChnNum, void *result)
释放IVS功能计算出的结果资源
int IMP_IVS_DestroyChn(int ChnNum)
销毁IVS功能句柄对应的通道
int(* preProcessSync)(IMPIVSInterface *inf, IMPFrameInfo *frame)
预处理函数,不对传入此函数的frame额外加锁,故无需free frame,返回值:>=0 正确,<0:错误 ...
Definition: imp_ivs.h:134
int IMP_IVS_CreateChn(int ChnNum, IMPIVSInterface *handler)
创建IVS功能对应的通道
int(* init)(IMPIVSInterface *inf)
初始化函数
Definition: imp_ivs.h:132