qc_registry_table.c revision e4010605f233a213cf0d972397bb33c34c364227
1/*--------------------------------------------------------------------------
2Copyright (c) 2011, The Linux Foundation. All rights reserved.
3
4Redistribution and use in source and binary forms, with or without
5modification, are permitted provided that the following conditions are
6met:
7    * Redistributions of source code must retain the above copyright
8      notice, this list of conditions and the following disclaimer.
9    * Redistributions in binary form must reproduce the above
10      copyright notice, this list of conditions and the following
11      disclaimer in the documentation and/or other materials provided
12      with the distribution.
13    * Neither the name of The Linux Foundation nor the names of its
14      contributors may be used to endorse or promote products derived
15      from this software without specific prior written permission.
16
17THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20ARE DISCLAIMED.  IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28
29--------------------------------------------------------------------------*/
30/*============================================================================
31                            O p e n M A X   w r a p p e r s
32                             O p e n  M A X   C o r e
33
34 This module contains the registry table for the QCOM's OpenMAX core.
35
36*//*========================================================================*/
37
38#include "qc_omx_core.h"
39
40omx_core_cb_type core[] =
41{
42  {
43    "OMX.qcom.video.decoder.avc",
44    NULL,   // Create instance function
45    // Unique instance handle
46    {
47      NULL,
48      NULL,
49      NULL,
50      NULL
51    },
52    NULL,   // Shared object library handle
53    "libOmxVdec.so",
54    {
55      "video_decoder.avc"
56    }
57  },
58  {
59    "OMX.qcom.video.decoder.mpeg4",
60    NULL,   // Create instance function
61    // Unique instance handle
62    {
63      NULL,
64      NULL,
65      NULL,
66      NULL
67    },
68    NULL,   // Shared object library handle
69    "libOmxVdec.so",
70    {
71      "video_decoder.mpeg4"
72    }
73  },
74  {
75    "OMX.qcom.video.decoder.vc1",
76    NULL,   // Create instance function
77    // Unique instance handle
78    {
79      NULL,
80      NULL,
81      NULL,
82      NULL
83    },
84    NULL,   // Shared object library handle
85    "libOmxVdec.so",
86    {
87      "video_decoder.vc1"
88    }
89  },
90  {
91    "OMX.qcom.video.decoder.wmv",
92    NULL,   // Create instance function
93    // Unique instance handle
94    {
95      NULL,
96      NULL,
97      NULL,
98      NULL
99    },
100    NULL,   // Shared object library handle
101    "libOmxVdec.so",
102    {
103      "video_decoder.vc1"
104    }
105  },
106  {
107    "OMX.qcom.file.muxer",
108    NULL,   // Create instance function
109    // Unique instance handle
110    {
111      NULL,
112      NULL,
113      NULL,
114      NULL
115    },
116    NULL,   // Shared object library handle
117
118    "libOmxMux.so",
119    {
120      "container_muxer.mp2"
121    }
122  },
123  {
124    "OMX.qcom.video.decoder.divx4",
125    NULL,   // Create instance function
126    // Unique instance handle
127    {
128      NULL,
129      NULL,
130      NULL,
131      NULL
132    },
133    NULL,   // Shared object library handle
134    "libOmxVdec.so",
135    {
136      "video_decoder.divx"
137    }
138  },
139  {
140    "OMX.qcom.video.decoder.divx",
141    NULL,   // Create instance function
142    // Unique instance handle
143    {
144      NULL,
145      NULL,
146      NULL,
147      NULL
148    },
149    NULL,   // Shared object library handle
150    "libOmxVdec.so",
151    {
152      "video_decoder.divx"
153    }
154  },
155  {
156    "OMX.qcom.video.decoder.divx311",
157    NULL,   // Create instance function
158    // Unique instance handle
159    {
160      NULL,
161      NULL,
162      NULL,
163      NULL
164    },
165    NULL,   // Shared object library handle
166    "libOmxVdec.so",
167    {
168      "video_decoder.divx"
169    }
170  },
171  {
172    "OMX.qcom.video.decoder.h263",
173    NULL,   // Create instance function
174    // Unique instance handle
175    {
176      NULL,
177      NULL,
178      NULL,
179      NULL
180    },
181    NULL,   // Shared object library handle
182    "libOmxVdec.so",
183    {
184      "video_decoder.h263"
185    }
186  },
187   {
188    "OMX.qcom.video.encoder.mpeg4",
189    NULL,   // Create instance function
190    // Unique instance handle
191    {
192      NULL,
193      NULL,
194      NULL,
195      NULL
196    },
197    NULL,   // Shared object library handle
198    "libOmxVenc.so",
199    {
200      "video_encoder.mpeg4"
201    }
202  },
203   {
204    "OMX.qcom.video.encoder.h263",
205    NULL,   // Create instance function
206    // Unique instance handle
207    {
208      NULL,
209      NULL,
210      NULL,
211      NULL
212    },
213    NULL,   // Shared object library handle
214    "libOmxVenc.so",
215    {
216      "video_encoder.h263",
217    }
218  },
219   {
220    "OMX.qcom.video.encoder.avc",
221    NULL, // Create instance function
222    // Unique instance handle
223    {
224      NULL,
225      NULL,
226      NULL,
227      NULL
228    },
229    NULL,   // Shared object library handle
230    "libOmxVenc.so",
231    {
232      "video_encoder.avc"
233    }
234  },
235  {
236    "OMX.qcom.audio.decoder.aac",
237    NULL,   // Create instance function
238    // Unique instance handle
239    {
240      NULL,
241      NULL,
242      NULL,
243      NULL
244    },
245    NULL,   // Shared object library handle
246    "libOmxAacDec.so",
247    {
248      "audio_decoder.aac"
249    }
250  },
251  {
252    "OMX.qcom.audio.decoder.multiaac",
253    NULL,   // Create instance function
254    // Unique instance handle
255    {
256      NULL,
257      NULL,
258      NULL,
259      NULL
260    },
261    NULL,   // Shared object library handle
262    "libOmxAacDec.so",
263    {
264      "audio_decoder.aac"
265    }
266  },
267
268};
269
270const unsigned int SIZE_OF_CORE = sizeof(core) / sizeof(omx_core_cb_type);
271
272
273