专注收集记录技术开发学习笔记、技术难点、解决方案
网站信息搜索 >> 请输入关键词:
您当前的位置: 首页 > Android

怎么将视频解码器移植到Android中

发布时间:2010-05-30 10:53:50 文章来源:www.iduyao.cn 采编人员:星星草
如何将视频解码器移植到Android中
老板想把AVS解码器移植到Android 2.3 系统中,但是小弟现在还不知道如何入手,请各位大虾指点下,如果有相关资料就更好了,谢谢大家了。

------解决方案--------------------
可以参考framework/base/media/libstagefright/AwesomePlayer.cpp中的
sp<MediaSource> OMXCodec::Create(
const sp<IOMX> &omx,
const sp<MetaData> &meta, bool createEncoder,
const sp<MediaSource> &source,
const char *matchComponentName,
uint32_t flags)
函数。
android在这里面创建了软解码器,
一般的软解码器是派生自MediaSource。
只能提供这么多帮助了。
------解决方案--------------------
1 写java端播放器 ,留下jni接口
2 使用你本地的c代码(已有的解码代码)实现这个jni接口. 

 1 > 关于写播放器,我想出了基本的界面布局以外,你还会用到SurfaceView 就是底层的支持opengl的绘图view. 这个你如果不清楚,找些游戏引擎代码看看,会有帮助. 

你整个程序的流程就是

播放器打开文件,得到输入流 ,输入流传递给解码器, 解码器解码, 解码器输出流, 输出流来到java端,java端调用SurfaceView绘图. 

或者我看一些游戏绘图,也使用了c++代码,你可以参考一下.这样 效率应该更高.


------解决方案--------------------
移植个解码器而已,没必要还非得自己写个播放器吧
参考libstatefright/codecs目录里的代码,封装实现start、stop、read三个接口就可以了
友情提示:
信息收集于互联网,如果您发现错误或造成侵权,请及时通知本站更正或删除,具体联系方式见页面底部联系我们,谢谢。

其他相似内容:

热门推荐: