blob: 5a1d584143c9a965aa355e74de0f94f4b07ebd71 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
|
#ifndef VCODEC_DEC_DEMUXER_V2_IF_H
#define VCODEC_DEC_DEMUXER_V2_IF_H
typedef struct
{
unsigned char *u4Address;
unsigned int u4Length;
int fgValid;
} RM_DECODER_PAYLOAD_INFO_T;
typedef struct
{
unsigned int u4PayloadNumber;
RM_DECODER_PAYLOAD_INFO_T *pu1PayloadAddress;
} RM_DECODER_INPUT_PARAM_T;
typedef enum
{
RV8 = 0,
RV9,
RV10
} RM_CODEC_VERSION_T;
#define MAX_NUM_RPR_SIZES 8
typedef struct
{
RM_CODEC_VERSION_T eDecoderVersion;
unsigned int u4MaxDimWidth;
unsigned int u4MaxDimHeight;
unsigned int u4NumRPRSizes;
unsigned int au4RPRSizes[2 * MAX_NUM_RPR_SIZES];
} RM_DECODER_INIT_PARAM_T;
typedef struct
{
unsigned int MaxSupportWidthForYUV420_ASP;
unsigned int MaxSupportHeightForYUV420_ASP;
unsigned short u2FrameWidthInContainer;
unsigned short u2FrameHeightInContainer;
} MPEG4_DECODER_PRIVATE_PARAM_T;
// The H264 uses the private data to transfer NAL units
// The related data structure informations are defined as below
//
typedef struct
{
unsigned char *u4Address;
unsigned int u4Length;
} H264_DECODER_PAYLOAD_INFO_T;
typedef struct
{
unsigned int u4PayloadNumber;
H264_DECODER_PAYLOAD_INFO_T *pu1PayloadAddress;
} H264_DECODER_INPUT_PARAM_T;
typedef struct
{
unsigned char *u4Address;
unsigned int u4Length;
} VC1_DECODER_PAYLOAD_INFO_T;
typedef struct
{
unsigned int u4PayloadNumber;
VC1_DECODER_PAYLOAD_INFO_T *pu1PayloadAddress;
} VC1_DECODER_INPUT_PARAM_T;
typedef struct
{
unsigned char *u4Address;
unsigned int u4Length;
unsigned short u2FrameWidthInContainer;
unsigned short u2FrameHeightInContainer;
} MPEG4_DECODER_PAYLOAD_INFO_T;
typedef struct
{
unsigned int u4PayloadNumber;
MPEG4_DECODER_PAYLOAD_INFO_T *pu1PayloadAddress;
} MPEG4_DECODER_INPUT_PARAM_T;
typedef struct
{
unsigned char *u4Address;
unsigned int u4Length;
} MPEG4VT_DECODER_PAYLOAD_INFO_T;
typedef struct
{
unsigned int u4PayloadNumber;
MPEG4VT_DECODER_PAYLOAD_INFO_T *pu1PayloadAddress;
} MPEG4VT_DECODER_INPUT_PARAM_T;
typedef struct
{
VCODEC_BUFFER_T rPayload;
unsigned int u4Length;
} VP8_DECODER_INPUT_UNIT_T;
typedef struct
{
unsigned char *u4Address;
unsigned int u4Length;
} HEVC_DECODER_PAYLOAD_INFO_T;
typedef struct
{
unsigned int u4PayloadNumber;
HEVC_DECODER_PAYLOAD_INFO_T *pu1Payload;
} HEVC_DECODER_INPUT_PARAM_T;
#endif /* VCODEC_DEC_DEMUXER_IF_H */
|