1 /*-------------------------------------------------------------------------- 2 Copyright (c) 2011, The Linux Foundation. All rights reserved. 3 4 Redistribution and use in source and binary forms, with or without 5 modification, are permitted provided that the following conditions are 6 met: 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 17 THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED 18 WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF 19 MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT 20 ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS 21 BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR 22 CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF 23 SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR 24 BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, 25 WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE 26 OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN 27 IF 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 40 omx_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 270 const unsigned int SIZE_OF_CORE = sizeof(core) / sizeof(omx_core_cb_type); 271 272 273