如果您不打算拥有自己的OMX Core
,那么你可以考虑将你的编解码器添加到SoftOMXComponent
插件本身如下所述。
Note:这个答案假设你有重新编译一部分的能力 of AOSP
代码并且可以替换重建的库在您的平台上。
第 1 步:注册OMX
成分
In SoftOMXComponent
源文件如图所示here,添加您的组件名称,如下所示
{ "OMX.sam.custom.h264.decoder", "sam_h264dec", "video_decoder.avc" }
Here "OMX.sam.custom.h264.decoder"
代表你的组件名称,"sam_h264dec"
表示存储在文件系统中的库名称的后缀(更多内容见下文)和"video_decoder.avc"
代表解码器的角色,在本例中是H.264
视频解码器。
步骤2:库的生成
Your OMX
组件应构建为动态可加载库,其名称为"libstagefright_soft_sam_h264dec.so"
并应放置在/系统/库您的文件系统。
第三步:创建组件
The Stagefright
框架代码将查找名为的符号createSoftOMXComponent
创建组件。因此,步骤 2 中提到的编解码器库应该支持此功能。
通过这些步骤和assuming你的编解码器是OMX
兼容于Android
扩展,您应该能够集成您的解码器。
Tip 1:如果您希望始终选择您的组件,请确保在步骤 1 中描述的组件名称已注册在最顶部kComponents
显示参考中的数组。
Tip 2:如果您想了解更多有关动态加载库生成的主题,您可以参考GSM Decoder
代码如图所示here.