ISVP-SDK  3.12.0
Ingenic Smart Video Platform SDK
imp_decoder.h
浏览该文件的文档.
1 /*
2  * IMP Decoder func header file.
3  *
4  * Copyright (C) 2014 Ingenic Semiconductor Co.,Ltd
5  */
6 
7 #ifndef __IMP_DECODER_H__
8 #define __IMP_DECODER_H__
9 
10 #include <stdint.h>
11 #include <stdbool.h>
12 
13 #ifdef __cplusplus
14 #if __cplusplus
15 extern "C"
16 {
17 #endif
18 #endif /* __cplusplus */
19 
35 typedef struct {
37  uint32_t maxWidth;
38  uint32_t maxHeight;
40  uint32_t nrKeepStream;
41  uint32_t frmRateNum;
42  uint32_t frmRateDen;
44 
48 typedef struct {
51 
55 typedef struct {
56  int i_payload;
57  uint8_t *p_payload;
58  int64_t timeStamp;
60 
64 typedef struct {
67 
82 int IMP_Decoder_CreateChn(int decChn, const IMPDecoderCHNAttr *attr);
83 
97 int IMP_Decoder_DestroyChn(int decChn);
98 
113 int IMP_Decoder_StartRecvPic(int decChn);
114 
129 int IMP_Decoder_StopRecvPic(int decChn);
130 
147 int IMP_Decoder_SendStreamTimeout(int decChn, IMPDecoderStream *stream, uint32_t timeoutMsec);
148 
164 int IMP_Decoder_PollingFrame(int decChn, uint32_t timeoutMsec);
165 
181 int IMP_Decoder_GetFrame(int decChn, IMPFrameInfo **frame);
182 
198 int IMP_Decoder_ReleaseFrame(int decChn, IMPFrameInfo *frame);
199 
204 #ifdef __cplusplus
205 #if __cplusplus
206 }
207 #endif
208 #endif /* __cplusplus */
209 
210 #endif /* __IMP_DECODER_H__ */
uint8_t * p_payload
解码帧的数据指针
Definition: imp_decoder.h:57
uint32_t nrKeepStream
解码器缓存帧个数
Definition: imp_decoder.h:40
定义解码器属性
Definition: imp_decoder.h:35
int IMP_Decoder_DestroyChn(int decChn)
销毁解码Channel
int IMP_Decoder_ReleaseFrame(int decChn, IMPFrameInfo *frame)
释放码流缓存
uint32_t frmRateNum
在一秒钟内的时间单元的数量, 以时间单元为单位。即帧率的分子
Definition: imp_decoder.h:41
uint32_t maxWidth
解码帧最大的宽度
Definition: imp_decoder.h:37
定义解码帧数据属性
Definition: imp_decoder.h:55
IMPPayloadType
编解码协议类型
Definition: imp_common.h:82
int IMP_Decoder_SendStreamTimeout(int decChn, IMPDecoderStream *stream, uint32_t timeoutMsec)
发送需解码数据
IMP帧图像信息定义.
Definition: imp_common.h:54
IMPPayloadType decType
解码帧原数据协议类型
Definition: imp_decoder.h:36
int IMP_Decoder_CreateChn(int decChn, const IMPDecoderCHNAttr *attr)
创建解码Channel
定义解码器码流属性
Definition: imp_decoder.h:64
定义解码Channel属性
Definition: imp_decoder.h:48
IMPPixelFormat pixelFormat
解码帧目标数据协议类型
Definition: imp_decoder.h:39
int i_payload
解码帧的数据长度
Definition: imp_decoder.h:56
uint32_t maxHeight
解码帧最大的高度
Definition: imp_decoder.h:38
uint32_t frmRateDen
在一帧内的时间单元的数量, 以时间单元为单位。即帧率的分母
Definition: imp_decoder.h:42
IMPDecoderNal decoderNal
解码帧数据结构体
Definition: imp_decoder.h:65
int IMP_Decoder_StartRecvPic(int decChn)
开启解码Channel接收图像
int64_t timeStamp
解码帧的时间戳
Definition: imp_decoder.h:58
IMPPixelFormat
IMP图像格式定义.
Definition: imp_common.h:90
int IMP_Decoder_GetFrame(int decChn, IMPFrameInfo **frame)
获取解码码流
int IMP_Decoder_PollingFrame(int decChn, uint32_t timeoutMsec)
Polling 解码码流缓存
int IMP_Decoder_StopRecvPic(int decChn)
停止解码Channel接收图像
IMPDecoderAttr decAttr
解码器属性
Definition: imp_decoder.h:49