首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于硬件加速的H.264视频解码在android中的应用

基于硬件加速的H.264视频解码在android中的应用
EN

Stack Overflow用户
提问于 2014-06-04 10:05:15
回答 1查看 4.1K关注 0票数 3

我正在做一个视频会议项目。我们使用软件编解码器对视频帧进行编码和解码,这将为更低分辨率(高达320 p)提供很好的性能。我们计划支持我们的申请更高的决议,也高达720便士。我逐渐认识到硬件加速将很好地完成这项工作。

由于硬件编解码api媒体编解码器是从果冻豆以后,我已经使用它的编码和解码,并正在良好的工作。但我的应用程序是从2.3中支持的。因此,我需要一个硬件加速视频解码H.264帧720 p在30 for。

在研究中,我发现使用OMX编解码器的想法是通过修改舞台恐惧框架来实现的。我曾经读过,H.264的硬件解码器是2.1版本,编码器是从3.0开始的。我已经通过了许多文章和问题在这个网站上,并确认我可以继续下去。

我读过关于舞台恐怖建筑在这里-architecture在这里,它是如何工作的?的文章。

我还读过关于OMX编解码器这里-的文章。

我在开始的时候遇到了一些问题,对它的实施也有一些困惑,我想知道一些关于它的信息。

  1. 对于在代码中使用OMX编解码器,我应该使用整个android源代码树来构建我的项目,或者我可以从AOSP源代码中添加一些文件(如果是的话,所有文件都可以)。
  2. 从零开始,我应该遵循什么步骤来实现它。

有人能给我一个指引吗?

谢谢..。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-06-05 05:48:10

描述OMXCodec在本机层中集成的最佳示例是命令行实用程序stagefright,可以在GingerBread本身中观察到GingerBread。这个例子展示了被创建是如何实现的。

值得注意的一点是:

  1. OMXCodec的输入应该建模为MediaSource,因此,您应该确保应用程序处理这个需求。创建基于MediaSource的源的示例可以在DummySource中找到。
  2. 译码器的输入(即MediaSource )应该通过read方法提供数据,因此,应用程序应该为每个read调用提供单独的帧。
  3. 该译码器可以用NativeWindow创建,用于输出缓冲区分配。在这种情况下,如果您希望从CPU访问缓冲区,您可能应该参考这个查询获得更多详细信息。
票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/24034542

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档