如何注册OMX内核添加新德codeR [英] How to register a OMX core for adding a new decoder

查看:218
本文介绍了如何注册OMX内核添加新德codeR的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我指的帖子:

<一个href=\"http://stackoverflow.com/questions/15334509/android-how-to-integrate-a-de$c$cr-to-multimedia-framework\">Android:如何解codeR多媒体框架集成

这之后我已经注册了我的新德codeR(这是目前不支持Android版)的 media_ codecs.xml

Following it i have registered my new decoder (Which is currently not supported by Android) in media_codecs.xml.

上述职位的第2步要求我执行 OMX核心登记。但是,因为我真的很新的这个话题,我不能够按照步骤2。

The Step 2 of the above post requires me to perform OMX core registration. However, Since i'm really new to this topic, i'm not able to follow the step 2.

我在C德codeR的工作code和已经移植到Android。

I have the working code of the decoder in C and is already ported to android.

所以我要求,如果有人能提供的信息:

So i request if anybody can provide information on:


  • 一个一步一步的指导,preform OMX code注册了德codeR
    当前不是由Android支持。

  • A step-by-step guide to preform OMX code registration for a decoder that is currently not supported by android.

我应该在哪里把我的工作C code在源代码树,以及如何
指定编译器来编译它

Where should i place my working C code in the source tree and how to specify the compiler to compile it

最后,我想告诉大家,我的工作ICS code和结果
去codeRS源$ C ​​$ C的输出YUV420。

Lastly, i would like to tell that i'm working on ICS code and the
output of the decoders source code is YUV420.

任何人都请提供对上述疑问的指针。先谢谢了。

Anyone please provide pointers towards the above queries. Thanks in advance.

推荐答案

如果您不打算拥有自己的 OMX核心,那么你可以考虑增加你的codeC的 SoftOMXComponent 插件本身,如下所述。

If your don't plan to have your own OMX Core, then you can consider adding your codec to the SoftOMXComponent plugin itself as described below.

注意:这个答案假定您有 AOSP的能力重新编译的部分 code并能替换重建库您的平台。

Note: This answer assumes that you have the ability to recompile a portion of AOSP code and can replace the rebuilt libraries on your platform.

第1步: OMX注册组件

Step 1: Registration of OMX Component

SoftOMXComponent 源文件,如<一个href=\"http://androidxref.com/4.3_r2.1/xref/frameworks/av/media/libstagefright/omx/SoftOMXPlugin.cpp#36\">here,添加您的组件名称如下图所示。

In SoftOMXComponent source file as shown here, add your component name as shown below

{ "OMX.sam.custom.h264.decoder", "sam_h264dec", "video_decoder.avc" }

下面OMX.sam.custom.h264.de codeR重新presents您的组件名称,sam_h264dec 重新presents存储在文件系统中的库的名称(下文)和video_de coder.avc重新presents你去codeR,在这个例子中是一个 H.264 视频去codeR的作用。

Here "OMX.sam.custom.h264.decoder" represents your component name, "sam_h264dec" represents the suffix of the name of the library stored in the file system (more below) and "video_decoder.avc" represents the role of your decoder, which in this example is a H.264 video decoder.

第2步:图书馆的产生

OMX 组件时,应建成一个可动态加载的库,其名称将是libstagefright_soft_sam_h264dec.so和应放置在 /系统/ lib目录文件系统的

Your OMX component should be built as a dynamically loadable library whose name would be "libstagefright_soft_sam_h264dec.so" and should be placed at /system/lib of your file system.

第3步:组件的创建

Stagefright 框架code就会查找名为 createSoftOMXComponent 一个符号来创建组件。因此,在第2步中提到的codeC库应该支持这个功能。

The Stagefright framework code will look for a symbol named createSoftOMXComponent to create the component. Hence, your codec library mentioned in Step 2 should support this function.

通过这些步骤和假设您的codeC是 OMX Android的兼容扩展,你应该能够整合您去codeR。

With these steps and assuming your codec is OMX compatible with Android extensions, you should be able to integrate your decoder.

提示1:如果您希望您的组件始终处于选中状态,请确保在步骤1中描述的最顶端是注册的组件名称 kComponents 数组中的参考所示。

Tip 1: If you wish that your component is always selected, please ensure that your component name as described in Step 1 is registered at the very top of kComponents array in the shown reference.

提示2:如果您想了解更多关于新一代的动态可加载库的话题,你可以参考 GSM德codeR code如图所示<一个href=\"http://androidxref.com/4.3_r2.1/xref/frameworks/av/media/libstagefright/$c$ccs/gsm/dec/\">here.

Tip 2: If you wish to know more on the topic of generation of the dynamically loadable library, you could refer to the GSM Decoder code as shown here.

这篇关于如何注册OMX内核添加新德codeR的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆