重庆分公司,新征程启航

为企业提供网站建设、域名注册、服务器等服务

android自定义编解码器记录

最近折腾了一下软编码器,网上的资料好少,踩的坑记一下

创新互联公司的客户来自各行各业,为了共同目标,我们在工作上密切配合,从创业型小企业到企事业单位,感谢他们对我们的要求,感谢他们从不同领域给我们带来的挑战,让我们激情的团队有机会用头脑与智慧不断的给客户带来惊喜。专业领域包括成都网站设计、网站建设、电商网站开发、微信营销、系统平台开发。

  1. 从frameworks/media/libstagefright/codecs下面找一个enc的代码看看

    无非是从SimpleSoftOMXComponent继承,然后实现onfill什么的,自己的编码器就在这里实现,比较好理解。

  2. SoftOMXPlugin.cpp里注册这个编码器,OMX.google.xxx.encoder,照着上面仿写就行

  3. 网上说的只需要上面两步,但实际上在我这还跑不起来,只好加日志跟起来

    ACodec.cpp

    有这么个函数onAllocateComponent,看下自己的是定义的软编还是硬编,加个标记flags = OMXCodec::kSoftwareCodecsOnly;

    setVideoPortFormatType这里也要看看,有可能colorFormat和格式对不上需要特殊处理跳过去

    OMXCodec.app

    这里也有一个MIME对编×××的数组,作用没仔细看,为防万一也加上了

  4. 这样一个编码器就能跑起来了,最后在/etc/media_codecs.xml注册一下


网页标题:android自定义编解码器记录
分享链接:http://cqcxhl.cn/article/ppdegc.html

其他资讯

在线咨询
服务热线
服务热线:028-86922220
TOP