最近在看Opencore和OpenMAX,有几个问题咨询一下

laocui2 2011-06-23 10:51:16
最近在看OpenMAX的相关资料,需要移植一个基于VC的解码器到Android中。

在看官方文档OMX Core Integration guide 的时候,里面提到了两个概念,一个是OMX 组件,一个是OMX内核,这两个有什么区别吗?

就拿Android自带的H.264来说吧,在源码codec.v2文件夹下,video里面有一个AVC_h264文件夹,在OMX文件夹里也有个OMX_h264,那这两个东西都是啥,实现了啥具体功能?

都说openmax提供了统一的接口,那我想从H.264来了解视频解码器与openmax的接口连接,那我需要看哪些代码?希望知道的大牛能具体说一下代码的位置,谢谢了。。。
...全文
884 12 打赏 收藏 转发到动态 举报
写回复
用AI写文章
12 条回复
切换为时间正序
请发表友善的回复…
发表回复
yisiyou 2013-12-18
  • 打赏
  • 举报
回复
qianjin0703 2011-07-15
  • 打赏
  • 举报
回复
相关源码有些厂商是不给的。。我们就是。
还有啊,opencore已经被android抛弃了,现在只有stagefright了。
laocui2 2011-06-27
  • 打赏
  • 举报
回复
看来还是要看源码啊,手头只有官方的源码,那我要移植一个解码器(目前只考虑解码,编码和文件解析不管)到openmax中,要关注的是OMX core和omx component之间的连接,对吗?


[Quote=引用 6 楼 ljp1205 的回复:]
我对OPENCORE 不怎么熟悉
比较熟悉的是strangefright + omx
大致谈谈我对OMX的了解吧
OMX 只提供出来少数的几个函数接口路OMX_Init这样的标准接口,OMX core可以说是OMX IL层的具体实现,OMX Component 则是一个个编解码的具体实现,比如实现H264的解码。
这两个都是各个厂商有各个厂商自己的实现的。能拉到源码的话可以去源码目录中自……
[/Quote]
影子LEON 2011-06-27
  • 打赏
  • 举报
回复
这个其实都是在OMX CORE里做好了,如果只是在现有的openmax框架之下弄的话,只需要关注component的实现就好了。

[Quote=引用 9 楼 laocui2 的回复:]
看来还是要看源码啊,手头只有官方的源码,那我要移植一个解码器(目前只考虑解码,编码和文件解析不管)到openmax中,要关注的是OMX core和omx component之间的连接,对吗?



引用 6 楼 ljp1205 的回复:
我对OPENCORE 不怎么熟悉
比较熟悉的是strangefright + omx
大致谈谈我对OMX的了解吧
OMX 只提供出来少数的几个函数……
[/Quote]
xqhrs232 2011-06-25
  • 打赏
  • 举报
回复
看来大家都研究的挺深的啊!
影子LEON 2011-06-25
  • 打赏
  • 举报
回复
不晓得你有源码不
/hardware/qcom/media/mm-core是高通的omx core实现
/hardware/qcom/media/mm-video是高通的omx Component 实现,主要是视频的硬解码。
影子LEON 2011-06-25
  • 打赏
  • 举报
回复
我对OPENCORE 不怎么熟悉
比较熟悉的是strangefright + omx
大致谈谈我对OMX的了解吧
OMX 只提供出来少数的几个函数接口路OMX_Init这样的标准接口,OMX core可以说是OMX IL层的具体实现,OMX Component 则是一个个编解码的具体实现,比如实现H264的解码。
这两个都是各个厂商有各个厂商自己的实现的。能拉到源码的话可以去源码目录中自己看看高通跟TI分别是怎么实现的。一般的大多会把单个的Component 写成一个类的形式,
OMX core 跟OMX Component 的关系是这样的:
OMX core中具体作用是实现OMX提供出来的几个接口,然后能让自己装载生成自己实现的Component 对象。OMX_GetHandle这个函数比较重要,他会返回一个OMX_HANDLETYPE*类型的句柄给调用者,这个句柄能被OMX core解析成具体的Component 对象。比如OPENCORE在H264解码的时候会使用这个句柄去调用EmptyThisBuffer这个函数把需要解码的数据送给具体的h264解码的Component 对象。这个中间的具体的解析过程就是由OMX core来负责的。
vclongking 2011-06-25
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 zhang19871112 的回复:]
引用 3 楼 xqhrs232 的回复:

引用 2 楼 zhang19871112 的回复:
楼主知道如何调用opencore接口去播放一个mp3文件吗?网上搜了很多资料都是讲opencore这个框架的,没有示例的代码。我现在想在bootanimation里面调用opencore去播放一段开机音乐,求指导!谢谢!


系统都没起来,怎么播?

系统已经起来了,android把声卡……
[/Quote]没弄太懂 ,是在本地库自己扩充MP3支持库 ?那你不如直接整合到opencore里面 , 然后上层还是走MediaPlayer ,这样更合理吧 。如果是上层的一个播放器 ,那你移植的时候 ,改里面相应的播放接口就可以了啊 , 为啥还要在播放器里面自己去调底层库哦。。
zhang19871112 2011-06-23
  • 打赏
  • 举报
回复
楼主知道如何调用opencore接口去播放一个mp3文件吗?网上搜了很多资料都是讲opencore这个框架的,没有示例的代码。我现在想在bootanimation里面调用opencore去播放一段开机音乐,求指导!谢谢!
vclongking 2011-06-23
  • 打赏
  • 举报
回复
关注 ,学习
zhang19871112 2011-06-23
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 xqhrs232 的回复:]

引用 2 楼 zhang19871112 的回复:
楼主知道如何调用opencore接口去播放一个mp3文件吗?网上搜了很多资料都是讲opencore这个框架的,没有示例的代码。我现在想在bootanimation里面调用opencore去播放一段开机音乐,求指导!谢谢!


系统都没起来,怎么播?
[/Quote]
系统已经起来了,android把声卡设备打开了,所以我用移植的播放器(mp3play)去播会提示打不开声卡设备,所以才要用opencore来播放
xqhrs232 2011-06-23
  • 打赏
  • 举报
回复
[Quote=引用 2 楼 zhang19871112 的回复:]
楼主知道如何调用opencore接口去播放一个mp3文件吗?网上搜了很多资料都是讲opencore这个框架的,没有示例的代码。我现在想在bootanimation里面调用opencore去播放一段开机音乐,求指导!谢谢!
[/Quote]

系统都没起来,怎么播?

80,351

社区成员

发帖
与我相关
我的任务
社区描述
移动平台 Android
androidandroid-studioandroidx 技术论坛(原bbs)
社区管理员
  • Android
  • yechaoa
  • 失落夏天
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧