Home | History | Annotate | Download | only in 8092
      1 /*--------------------------------------------------------------------------
      2 Copyright (c) 2012-2014, 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.mvc",
     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.mvc"
     72     }
     73   },
     74   {
     75     "OMX.qcom.video.decoder.mpeg4",
     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.mpeg4"
     88     }
     89   },
     90   {
     91     "OMX.qcom.video.decoder.vc1",
     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.video.decoder.wmv",
    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     "libOmxVdec.so",
    118     {
    119       "video_decoder.vc1"
    120     }
    121   },
    122   {
    123     "OMX.qcom.file.muxer",
    124     NULL,   // Create instance function
    125     // Unique instance handle
    126     {
    127       NULL,
    128       NULL,
    129       NULL,
    130       NULL
    131     },
    132     NULL,   // Shared object library handle
    133 
    134     "libOmxMux.so",
    135     {
    136       "container_muxer.mp2"
    137     }
    138   },
    139   {
    140     "OMX.qcom.video.decoder.divx4",
    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.divx",
    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.divx311",
    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.divx"
    185     }
    186   },
    187   {
    188     "OMX.qcom.video.decoder.h263",
    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     "libOmxVdec.so",
    199     {
    200       "video_decoder.h263"
    201     }
    202   },
    203   {
    204     "OMX.qcom.video.decoder.hevc",
    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     "libOmxVdec.so",
    215     {
    216       "video_decoder.hevc"
    217     }
    218   },
    219    {
    220     "OMX.qcom.video.decoder.vp8",
    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     "libOmxVdec.so",
    231     {
    232       "video_decoder.vp8"
    233     }
    234   },
    235    {
    236     "OMX.qcom.video.encoder.mpeg4",
    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     "libOmxVenc.so",
    247     {
    248       "video_encoder.mpeg4"
    249     }
    250   },
    251    {
    252     "OMX.qcom.video.encoder.h263",
    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     "libOmxVenc.so",
    263     {
    264       "video_encoder.h263",
    265     }
    266   },
    267    {
    268     "OMX.qcom.video.encoder.avc",
    269     NULL, // Create instance function
    270     // Unique instance handle
    271     {
    272       NULL,
    273       NULL,
    274       NULL,
    275       NULL
    276     },
    277     NULL,   // Shared object library handle
    278     "libOmxVenc.so",
    279     {
    280       "video_encoder.avc"
    281     }
    282   },
    283    {
    284     "OMX.qcom.video.encoder.vp8",
    285     NULL,   // Create instance function
    286     // Unique instance handle
    287     {
    288       NULL,
    289       NULL,
    290       NULL,
    291       NULL
    292     },
    293     NULL,   // Shared object library handle
    294     "libOmxVenc.so",
    295     {
    296       "video_encoder.vp8",
    297     }
    298   },
    299   {
    300     "OMX.qcom.audio.decoder.Qcelp13",
    301     NULL, // Create instance function
    302     // Unique instance handle
    303     {
    304       NULL,
    305       NULL,
    306       NULL,
    307       NULL
    308     },
    309     NULL,   // Shared object library handle
    310     "libOmxQcelp13Dec.so",
    311     {
    312       "audio_decoder.Qcelp13"
    313     }
    314   },
    315   {
    316     "OMX.qcom.audio.decoder.evrc",
    317     NULL, // Create instance function
    318     // Unique instance handle
    319     {
    320       NULL,
    321       NULL,
    322       NULL,
    323       NULL
    324     },
    325     NULL,   // Shared object library handle
    326     "libOmxEvrcDec.so",
    327     {
    328       "audio_decoder.evrc"
    329     }
    330   },
    331   {
    332     "OMX.qcom.audio.decoder.wma",
    333     NULL, // Create instance function
    334     // Unique instance handle
    335     {
    336      NULL,
    337      NULL,
    338      NULL,
    339      NULL
    340     },
    341     NULL,   // Shared object library handle
    342     "libOmxWmaDec.so",
    343     {
    344      "audio_decoder.wma"
    345     }
    346   },
    347   {
    348     "OMX.qcom.audio.decoder.wma10Pro",
    349     NULL,   // Create instance function
    350     // Unique instance handle
    351     {
    352      NULL,
    353      NULL,
    354      NULL,
    355      NULL
    356     },
    357     NULL,   // Shared object library handle
    358     "libOmxWmaDec.so",
    359     {
    360      "audio_decoder.wma"
    361     }
    362   },
    363   {
    364     "OMX.qcom.audio.encoder.aac",
    365     NULL, // Create instance function
    366     // Unique instance handle
    367     {
    368       NULL,
    369       NULL,
    370       NULL,
    371       NULL
    372     },
    373     NULL,  // Shared object library handle
    374     "libOmxAacEnc.so",
    375     {
    376       "audio_encoder.aac"
    377     }
    378   },
    379   {
    380     "OMX.qcom.audio.encoder.qcelp13",
    381     NULL,   // Create instance function
    382     // Unique instance handle
    383     {
    384       NULL,
    385       NULL,
    386       NULL,
    387       NULL
    388     },
    389     NULL,   // Shared object library handle
    390     "libOmxQcelp13Enc.so",
    391     {
    392       "audio_encoder.qcelp13"
    393     }
    394   },
    395   {
    396     "OMX.qcom.audio.encoder.evrc",
    397     NULL,   // Create instance function
    398     // Unique instance handle
    399     {
    400       NULL,
    401       NULL,
    402       NULL,
    403       NULL
    404     },
    405     NULL,   // Shared object library handle
    406     "libOmxEvrcEnc.so",
    407     {
    408       "audio_encoder.evrc"
    409     }
    410   },
    411   {
    412     "OMX.qcom.audio.encoder.amrnb",
    413     NULL,   // Create instance function
    414     // Unique instance handle
    415     {
    416       NULL,
    417       NULL,
    418       NULL,
    419       NULL
    420     },
    421     NULL,   // Shared object library handle
    422     "libOmxAmrEnc.so",
    423     {
    424       "audio_encoder.amrnb"
    425     }
    426   },
    427   {
    428     "OMX.qcom.audio.decoder.amrwbplus",
    429     NULL,   // Create instance function
    430     // Unique instance handle
    431     {
    432      NULL,
    433      NULL,
    434      NULL,
    435      NULL
    436     },
    437     NULL,   // Shared object library handle
    438     "libOmxAmrwbplusDec.so",
    439     {
    440      "audio_decoder.awbplus"
    441     }
    442   },
    443  {
    444     "OMX.qcom.audio.decoder.aac",
    445     NULL,   // Create instance function
    446     // Unique instance handle
    447     {
    448       NULL,
    449       NULL,
    450       NULL,
    451       NULL
    452     },
    453     NULL,   // Shared object library handle
    454     "libOmxAacDec.so",
    455     {
    456       "audio_decoder.aac"
    457     }
    458   },
    459   {
    460     "OMX.qcom.audio.decoder.multiaac",
    461     NULL,   // Create instance function
    462     // Unique instance handle
    463     {
    464       NULL,
    465       NULL,
    466       NULL,
    467       NULL
    468     },
    469     NULL,   // Shared object library handle
    470     "libOmxAacDec.so",
    471     {
    472       "audio_decoder.aac"
    473     }
    474    },
    475 };
    476 
    477 const unsigned int SIZE_OF_CORE = sizeof(core) / sizeof(omx_core_cb_type);
    478 
    479 
    480