-
Notifications
You must be signed in to change notification settings - Fork 1
/
omx.h
120 lines (89 loc) · 4.02 KB
/
omx.h
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
116
117
118
119
120
#ifndef OMX_INC
#define OMX_INC
/*****************************************************************************/
#include <string.h>
#include <IL/OMX_Broadcom.h>
#include "error.h"
/*****************************************************************************/
#define OMX_INIT_STRUCTURE(a) \
memset(&(a), 0, sizeof(a)); \
(a).nSize = sizeof(a); \
(a).nVersion.nVersion = OMX_VERSION; \
(a).nVersion.s.nVersionMajor = OMX_VERSION_MAJOR; \
(a).nVersion.s.nVersionMinor = OMX_VERSION_MINOR; \
(a).nVersion.s.nRevision = OMX_VERSION_REVISION; \
(a).nVersion.s.nStep = OMX_VERSION_STEP
/*****************************************************************************/
WARN_UNUSED enum error_code omx_init(void);
WARN_UNUSED enum error_code omx_deinit(void);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_get_handle(
OMX_OUT OMX_HANDLETYPE *pHandle,
OMX_IN OMX_STRING cComponentName,
OMX_IN OMX_PTR pAppData,
OMX_IN OMX_CALLBACKTYPE *pCallBacks);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_free_handle(
OMX_IN OMX_HANDLETYPE hComponent);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_set_config(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_IN OMX_INDEXTYPE nIndex,
OMX_IN OMX_PTR pComponentConfigStructure);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_send_command(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_IN OMX_COMMANDTYPE Cmd,
OMX_IN OMX_U32 nParam1,
OMX_IN OMX_PTR pCmdData);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_get_parameter(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_IN OMX_INDEXTYPE nParamIndex,
OMX_INOUT OMX_PTR pComponentParameterStructure);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_set_parameter(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_IN OMX_INDEXTYPE nIndex,
OMX_IN OMX_PTR pComponentParameterStructure);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_allocate_buffer(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_INOUT OMX_BUFFERHEADERTYPE **ppBuffer,
OMX_IN OMX_U32 nPortIndex,
OMX_IN OMX_PTR pAppPrivate,
OMX_IN OMX_U32 nSizeBytes);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_free_buffer(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_IN OMX_U32 nPortIndex,
OMX_IN OMX_BUFFERHEADERTYPE *pBuffer);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_fill_this_buffer(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_IN OMX_BUFFERHEADERTYPE *pBuffer);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_setup_tunnel(
OMX_IN OMX_HANDLETYPE hOutput,
OMX_IN OMX_U32 nPortOutput,
OMX_IN OMX_HANDLETYPE hInput,
OMX_IN OMX_U32 nPortInput);
/*****************************************************************************/
WARN_UNUSED enum error_code
omx_allocate_port_buffer(
OMX_IN OMX_HANDLETYPE hComponent,
OMX_INOUT OMX_BUFFERHEADERTYPE **ppBuffer,
OMX_IN OMX_U32 nPortIndex,
OMX_IN OMX_PTR pAppPrivate);
/*****************************************************************************/
#endif