ISVP-SDK  3.12.0
Ingenic Smart Video Platform SDK
imp_framesource.h
Go to the documentation of this file.
1 /*
2  * IMP FrameSource header file.
3  *
4  * Copyright (C) 2015 Ingenic Semiconductor Co.,Ltd
5  */
6 
7 #ifndef __IMP_FRAMESOURCE_H__
8 #define __IMP_FRAMESOURCE_H__
9 
10 #include "imp_common.h"
11 
12 #ifdef __cplusplus
13 #if __cplusplus
14 extern "C"
15 {
16 #endif
17 #endif /* __cplusplus */
18 
90 typedef struct {
91  int enable;
92  int left;
93  int top;
94  int width;
95  int height;
96 } IMPFSChnCrop;
97 
101 typedef struct {
102  int enable;
103  int outwidth;
104  int outheight;
106 
107 typedef enum {
110 } IMPFSChnType;
111 
115 typedef enum {
119 
123 typedef struct {
124  int maxdepth;
127 
131 typedef struct {
132  int picWidth;
133  int picHeight;
139  int nrVBs;
141 } IMPFSChnAttr;
142 
160 int IMP_FrameSource_CreateChn(int chnNum, IMPFSChnAttr *chn_attr);
161 
176 int IMP_FrameSource_DestroyChn(int chnNum);
177 
192 int IMP_FrameSource_EnableChn(int chnNum);
193 
208 int IMP_FrameSource_DisableChn(int chnNum);
209 
226 int IMP_FrameSource_GetChnAttr(int chnNum, IMPFSChnAttr *chnAttr);
227 
244 int IMP_FrameSource_SetChnAttr(int chnNum, const IMPFSChnAttr *chnAttr);
245 
273 int IMP_FrameSource_SetFrameDepth(int chnNum, int depth);
274 
290 int IMP_FrameSource_GetFrameDepth(int chnNum, int *depth);
291 
315 int IMP_FrameSource_GetFrame(int chnNum, IMPFrameInfo **frame);
316 
341 int IMP_FrameSource_GetTimedFrame(int chnNum, IMPFrameTimestamp *framets, int block, void *framedata, IMPFrameInfo *frame);
342 
358 int IMP_FrameSource_ReleaseFrame(int chnNum, IMPFrameInfo *frame);
359 
386 int IMP_FrameSource_SnapFrame(int chnNum, IMPPixelFormat fmt, int width, int height, void *framedata, IMPFrameInfo *frame);
387 
403 int IMP_FrameSource_SetMaxDelay(int chnNum, int maxcnt);
404 
420 int IMP_FrameSource_GetMaxDelay(int chnNum, int *maxcnt);
421 
437 int IMP_FrameSource_SetDelay(int chnNum, int cnt);
438 
454 int IMP_FrameSource_GetDelay(int chnNum, int *cnt);
455 
471 int IMP_FrameSource_SetChnFifoAttr(int chnNum, IMPFSChnFifoAttr *attr);
472 
488 int IMP_FrameSource_GetChnFifoAttr(int chnNum, IMPFSChnFifoAttr *attr);
489 
490 #ifdef __cplusplus
491 #if __cplusplus
492 }
493 #endif
494 #endif /* __cplusplus */
495 
500 #endif /* __IMP_FRAMESOURCE_H__ */
The structure of FIFO Channel's attributes.
Definition: imp_framesource.h:123
int enable
Set the parameter to enable/disable cropping.
Definition: imp_framesource.h:91
IMPPixelFormat pixFmt
output image format
Definition: imp_framesource.h:134
int nrVBs
the number of Video buffers
Definition: imp_framesource.h:139
int enable
Set to the parameter to enable/disable scaling.
Definition: imp_framesource.h:102
int IMP_FrameSource_ReleaseFrame(int chnNum, IMPFrameInfo *frame)
Release the frame.
int outFrmRateNum
the molecular of output fps
Definition: imp_framesource.h:137
int IMP_FrameSource_EnableChn(int chnNum)
Enable the selected frame channel.
int picHeight
output image height
Definition: imp_framesource.h:133
int IMP_FrameSource_GetMaxDelay(int chnNum, int *maxcnt)
Get max frame delay.
int IMP_FrameSource_DestroyChn(int chnNum)
Destroy the selected frame channel.
int IMP_FrameSource_CreateChn(int chnNum, IMPFSChnAttr *chn_attr)
Create a frame channel.
int left
the X offset of starting pixel
Definition: imp_framesource.h:92
int maxdepth
FIFO maximum depth.
Definition: imp_framesource.h:124
virtual frame channel
Definition: imp_framesource.h:109
int height
the cropped vertical window size (height)
Definition: imp_framesource.h:95
FIFO caches first,then output data.
Definition: imp_framesource.h:116
int IMP_FrameSource_SetMaxDelay(int chnNum, int maxcnt)
Set max frame delay.
int width
the cropped horizontal window size (width)
Definition: imp_framesource.h:94
IMP frame image information definition.
Definition: imp_common.h:54
FIFO output data first, then caches.
Definition: imp_framesource.h:117
int outFrmRateDen
the denominator of output fps
Definition: imp_framesource.h:138
IMPFSChnType type
the type of the frame channel
Definition: imp_framesource.h:140
IMPFSChnFifoType type
Channel FIFO Type.
Definition: imp_framesource.h:125
The structure of scaling operation.
Definition: imp_framesource.h:101
int IMP_FrameSource_GetTimedFrame(int chnNum, IMPFrameTimestamp *framets, int block, void *framedata, IMPFrameInfo *frame)
Obtained image with specified time.
The structure of cropping operation.
Definition: imp_framesource.h:90
int IMP_FrameSource_GetChnFifoAttr(int chnNum, IMPFSChnFifoAttr *attr)
Get channel maximum caches FIFO attribute.
physics frame channel
Definition: imp_framesource.h:108
int IMP_FrameSource_DisableChn(int chnNum)
Disable the selected frame channel.
IMPFSChnFifoType
Channel FIFO Type.
Definition: imp_framesource.h:115
int IMP_FrameSource_SetFrameDepth(int chnNum, int depth)
Sets the maximum space(depth) for the images.
IMP Frame time parameter.
Definition: imp_common.h:73
IMPPixelFormat
IMP image format definition.
Definition: imp_common.h:90
The structure of frame channel's attributes.
Definition: imp_framesource.h:131
int IMP_FrameSource_GetFrame(int chnNum, IMPFrameInfo **frame)
Obtained image.
int picWidth
output image width
Definition: imp_framesource.h:132
IMPFSChnType
Definition: imp_framesource.h:107
int IMP_FrameSource_SnapFrame(int chnNum, IMPPixelFormat fmt, int width, int height, void *framedata, IMPFrameInfo *frame)
Get frames.
SDK-T15 Public data structure header file.
int IMP_FrameSource_GetFrameDepth(int chnNum, int *depth)
Obtains the depth of Frame FIFO.
int outwidth
the horizontal window size after scaling
Definition: imp_framesource.h:103
int top
the Y offset of starting pixel
Definition: imp_framesource.h:93
int IMP_FrameSource_GetDelay(int chnNum, int *cnt)
Get frame delay.
int IMP_FrameSource_SetChnFifoAttr(int chnNum, IMPFSChnFifoAttr *attr)
set channel's largest cache FIFO attribute
int IMP_FrameSource_GetChnAttr(int chnNum, IMPFSChnAttr *chnAttr)
Obtains the frame channel attribute.
IMPFSChnScaler scaler
the attribute of image scaling
Definition: imp_framesource.h:136
int IMP_FrameSource_SetChnAttr(int chnNum, const IMPFSChnAttr *chnAttr)
Sets the frame channel attribute.
IMPFSChnCrop crop
the attribute of image cropping
Definition: imp_framesource.h:135
int IMP_FrameSource_SetDelay(int chnNum, int cnt)
Set frame delay.
int outheight
the vertical window size after scaling
Definition: imp_framesource.h:104